728x90
    
    
  반응형
    
    
    
  
1. macOS 계정 구조 이해하기
macOS에는 계정과 관련된 세 가지 이름이 있다:
- Full name (전체 이름)
- 로그인 화면이나 Finder에 표시되는 이름. 단순히 표시용이다.
 
- Short name (계정명, RecordName)
- 시스템이 계정을 식별하는 핵심 값. UID와 연결되어 파일 권한까지 좌우한다.
 
- Home directory (NFSHomeDirectory)
- /Users/shortname 형태로, 실제 데이터와 설정이 저장되는 경로.
 
파일 권한은 UID(숫자)에 묶여 있기 때문에 UID를 건드리지 않는 한 short name을 바꿔도 권한은 깨지지 않는다.
2. 예전(macOS Catalina ~ Big Sur) 방식
과거에는 계정명 변경이 번거로웠다.
1. 변경 하기 전 상태를 확인
dscl . -read /Users/newname2. dscl 명령어로 short name(RecordName) 수정
sudo dscl . -change /Users/oldname RecordName oldname newname
3. dscl로 홈 디렉토리 경로(NFSHomeDirectory)도 수정
sudo dscl . -change /Users/newname NFSHomeDirectory /Users/oldname /Users/newname
4. Finder/터미널에서 실제 /Users/oldname 폴더명을 /Users/newname 으로 변경
sudo mv /Users/oldname /Users/newname
5. chown 으로 권한 보정
sudo chown -R newname:staff /Users/newname
즉, short name과 홈 디렉토리, 실제 폴더 세 군데를 모두 맞춰줘야 했다.
더 예전에는 계정명과 디렉토리 명을 수동으로 변경한 적도 있다...
dscl은 macOS전용
풀네임은 Directory Service command line utility 라고 해서, macOS가 내부적으로 계정을 관리하는 DirectoryService / opendirectoryd DB에 접근하는 도구
특징
- macOS에만 기본 탑재돼 있음 (/usr/bin/dscl)
- 전통적인 UNIX/Linux 계열은 /etc/passwd, /etc/shadow, /etc/group 같은 텍스트 파일을 직접 수정하지만, 
 macOS는 이걸 다 opendirectoryd가 관리 → dscl로 접근해야 함
- 예전 macOS 서버 시절(Open Directory 기반 LDAP)에서도 동일하게 쓰였고, 지금은 로컬 사용자/그룹 관리에도 그대로 사용됨
Linux랑 비교
- Linux → useradd, usermod, passwd, vipw 같은 명령어로 /etc/passwd 수정
- macOS → dscl (ex: dscl . -read /Users/username)
3. Sequoia(15.x) 이후 달라진 점
Sequoia에서는 계정 관리가 단순화되었다.
- RecordName만 바꿔도 자동으로:
- NFSHomeDirectory 값이 /Users/newname 으로 변경
- 실제 /Users/oldname 폴더명이 /Users/newname 으로 rename
- UID는 그대로 유지되어 권한도 자동으로 newname으로 보정
 
즉, 예전에는 3~4단계가 필요했지만, Sequoia에서는 단 한 줄로 끝나는 경우가 많다:
sudo dscl . -change /Users/oldname RecordName oldname newname재부팅 후 확인:
id -un       # newname
echo $HOME   # /Users/newname
4. 주의할 점
- 버전에 따라 동작 차이: Ventura나 Sonoma에서는 자동 보정이 일부만 적용되기도 한다. (홈 디렉토리 경로는 남아 있는 경우가 있음)
- Keychain: short name 변경 시 꼬일 수 있다. 앱 로그인 문제 발생 시, 키체인 접근에서 로그인 키체인을 재설정하면 해결된다.
- 보안 앱: 안랩, 백신, Docker 등은 Library/Keychain 데이터를 강하게 묶어두는 경우가 있어 정상 동작을 반드시 확인해야 한다.
결론
Sequoia 15.1에서 계정명 변경을 직접 해본 결과,
과거에는 몇 단계 수작업이 필요했지만, 이제는 dscl 명령 한 줄이면 short name, 홈 디렉토리, 폴더명, 권한까지 자동으로 맞춰졌다.
그래도 버전별 차이를 고려해 “정석 절차”를 알고 있는 게 중요하다.
맥 계정 관리 = UID는 건드리지 말고, short name과 홈 디렉토리만 맞추자!
728x90
    
    
  반응형
    
    
    
  'IT 지식' 카테고리의 다른 글
| 한글이 왜 깨질까? 캐릭터셋과 인코딩에 대해서 알아보자 (0) | 2025.09.28 | 
|---|---|
| [맥북] 한영키 변환 속도 개선 (0) | 2025.06.17 | 
| [PC/문제해결] Windows 10 AMD Radeon HD 4000 모니터 화면 버그 (0) | 2022.04.02 | 
| [IT 지식] 소프트웨어 아키텍트 역할군 ( AA, TA, DA, BA ??? ) (0) | 2022.01.20 | 
| [USB Boot] How to make USB BOOT / USB 부팅 만들기 (0) | 2020.02.20 |