리눅스 사용자 생성 환경에 필요한 파일과 디렉토리
파일/디렉토리 | 설명 |
---|---|
/etc/passwd | 사용자 계정 정보를 담고 있는 파일. |
/etc/shadow | 사용자 계정의 비밀번호 해시와 관련된 정보를 담고 있는 파일. |
/etc/group | 그룹 정보를 담고 있는 파일. |
/etc/skel/ | 새로운 사용자 계정 생성 시 적용되는 기본 환경 파일들이 저장되는 디렉토리. |
/home/username | 각 사용자의 홈 디렉토리. |
/etc/login.defs | 로그인 정책과 관련된 설정 파일. |
/etc/default/useradd | 사용자 추가 시 기본 설정을 지정하는 파일. |
/etc/security/limits.conf | 사용자 또는 그룹별 리소스 제한을 설정하는 파일. |
/etc/sudoers | sudo 권한을 부여할 사용자와 권한 설정을 관리하는 파일. |
/etc/passwd
이 파일은 시스템의 모든 사용자 계정 정보를 포함하고 있습니다. 각 행은 다음과 같은 필드로 구성됩니다.
- 사용자 이름
- 암호 (현재는 /etc/shadow 파일에 저장됨)
- 사용자 ID (UID)
- 그룹 ID (GID)
- 사용자의 전체 이름 또는 설명
- 홈 디렉토리 경로
- 로그인 쉘
/etc/shadow
이 파일은 사용자 계정의 비밀번호 해시 및 보안 관련 정보를 저장합니다. 이 파일은 일반 사용자가 읽지 못하도록 보안 상의 이유로 권한이 제한됩니다.
/etc/group
이 파일은 시스템의 그룹 정보를 포함하고 있습니다. 각 행은 다음과 같은 필드로 구성됩니다.
- 그룹 이름
- 그룹 암호 (보통 사용하지 않음)
- 그룹 ID (GID)
- 그룹에 속한 사용자 리스트
/etc/skel/
이 디렉토리는 새로운 사용자 계정이 생성될 때, 사용자의 홈 디렉토리에 복사되는 초기 설정 파일들을 담고 있습니다. 이를 통해 모든 새로운 사용자가 동일한 기본 환경 설정을 갖게 됩니다.
/home/username
각 사용자의 홈 디렉토리는 해당 사용자의 개인 공간입니다. 여기에는 사용자의 파일과 설정이 저장됩니다.
/etc/login.defs
이 파일은 로그인 정책과 관련된 설정을 포함하고 있습니다. 예를 들어, 패스워드 관련 설정, 계정 만료 기간 등을 설정할 수 있습니다.
/etc/default/useradd
이 파일은 useradd 명령어를 통해 사용자를 추가할 때 기본 설정을 지정합니다. 예를 들어, 홈 디렉토리의 위치, 로그인 쉘, UID 범위 등을 정의할 수 있습니다.
/etc/security/limits.conf
이 파일은 사용자 또는 그룹별로 시스템 리소스 제한을 설정할 수 있습니다. CPU 시간, 메모리 사용량 등을 제한하는데 사용됩니다.
/etc/sudoers
이 파일은 sudo 명령어를 통해 특정 사용자가 루트 권한을 얻을 수 있는 권한 설정을 관리합니다. 이 파일을 수정하여 권한을 부여하거나 제한할 수 있습니다.