/etc/passwd
로컬 사용자 계정의 기본 속성을 저장하는 텍스트 데이터베이스다. 일반적으로 모든 사용자가 읽을 수 있지만 root만 수정할 수 있다.
Format
각 줄은 콜론으로 구분한 7개 필드다.
NAME:PASSWORD:UID:GID:GECOS:DIRECTORY:SHELL
NAME: 로그인 이름PASSWORD: shadow password를 사용하면 보통xUID: 숫자 사용자 ID. root는 0GID: 기본 그룹의 숫자 IDGECOS: 표시 이름·연락처 등 설명 필드DIRECTORY: 홈 디렉터리SHELL: 로그인 셸
Usage
직접 파싱하기보다 NSS를 존중하는 getent를 우선 사용한다.
getent passwd getent passwd alice getent passwd alice | cut -d: -f1,3,4,6,7
Configuration
일반 편집기로 직접 수정하면 형식 오류나 동시 수정 문제가 생길 수 있다. 계정 변경에는
useradd, usermod, userdel, vipw를 사용한다. 실제 비밀번호나 hash를 문서·로그에 복사하지 않는다.
- 소유자와 권한은 시스템 정책을 따른다. 일반적인 Linux 시스템에서는
root:root, mode0644다. PASSWORD필드가 비어 있거나 특수문자인 경우의 인증 의미는 PAM과 시스템 정책에 따라 달라질 수 있다.
Troubleshooting
sudo pwck -r getent passwd alice
See Also
History
- codex:: 2026-08-10 Added the file-format page with field definitions, NSS-aware lookup, and safe editing guidance.