useradd와 기본값
쉽게 말하면
새 사용자를 만드는 명령이에요. 명부에 이름을 올리고, 그 사람의 개인 폴더를 만들고, 기본 설정 파일들을 넣어 줘요. 비밀번호는 따로 정해야 해요.
시험용 정의
useradd는 새 사용자 계정을 만든다. /etc/passwd·shadow·group에 항목을 추가하고, 홈 디렉터리를 만들어 /etc/skel의 파일을 복사한다. 옵션을 주지 않으면 /etc/default/useradd와 /etc/login.defs의 기본값을 쓴다. 비밀번호는 따로 passwd로 정한다.
비유로 이해하기
신입 사원 등록이다. 사원 명부(passwd)에 올리고, 책상(홈 디렉터리)을 배정하고, 기본 비품 세트(/etc/skel)를 올려 둔다. 출입 카드 비밀번호(passwd)는 따로 발급한다.
자세히
주요 옵션
| 옵션 | 뜻 | 예 |
|---|---|---|
| -u UID | UID 지정 | useradd -u 1500 kim |
| -g 그룹 | 기본 그룹 지정 | -g dev |
| -G 그룹들 | 보조 그룹 지정 (쉼표) | -G wheel,docker |
| -d 경로 | 홈 디렉터리 경로 | -d /data/kim |
| -m | 홈 디렉터리 생성 (Debian useradd는 기본으로 안 만듦) | -m |
| -M | 홈 디렉터리 만들지 않음 | |
| -s 셸 | 로그인 셸 | -s /bin/zsh, -s /sbin/nologin |
| -c 설명 | GECOS 설명 | -c "Kim Dev" |
| -e 날짜 | 계정 만료일 | -e 2026-12-31 |
| -f 일수 | 비활성 기간 | -f 30 |
| -r | 시스템 계정 (UID 1000 미만, 홈 없음) | |
| -D | 기본값 보기·바꾸기 | useradd -D -s /bin/zsh |
관련 파일
| /etc/default/useradd | useradd 기본값 (HOME, SHELL, SKEL…) |
| /etc/login.defs | UID·GID 범위, 비밀번호 기간 기본값, 홈 생성 여부, UMASK |
| /etc/skel/ | 새 홈에 복사할 파일들 |
| adduser | Debian 계열의 대화형 사용자 추가 스크립트 (RHEL에선 useradd의 링크) |
시험에 이렇게 나와요
- useradd -u UID, -g 기본 그룹, -G 보조 그룹, -d 홈, -s 셸, -m 홈 생성
- 기본값 파일 /etc/default/useradd, 홈 뼈대 /etc/skel
1차 출제기준 · 공개 기출 없음
확인 문제
Q1. useradd kim을 실행하면 kim의 홈 디렉터리에 .bashrc 같은 기본 설정 파일이 자동으로 들어간다. 이 파일들은 어디서 복사해 올까?
- /etc/profile
- /usr/share/home
- /etc/skel
- /root
정답 보기
3번 /etc/skel
/etc/skel(skeleton, 뼈대)에 있는 파일이 새 사용자의 홈 디렉터리로 복사된다. 모든 새 사용자에게 똑같이 주고 싶은 설정 파일을 여기에 넣어 두면 된다.
Q2. 새 사용자 생성 시 홈 디렉터리로 복사되는 기본 파일이 있는 디렉터리는?
- /etc/default
- /etc/skel
- /etc/login.defs
- /home/default
정답 보기
2번 /etc/skel
/etc/skel이다. 새 사용자를 만들면 이 디렉터리의 파일(.bashrc 등)이 홈 디렉터리로 복사된다. skel은 skeleton(뼈대)이다.
Q3. useradd의 기본 설정값을 확인하는 명령은?
- useradd -l
- useradd -D
- cat /etc/useradd
- useradd -s
정답 보기
2번 useradd -D
useradd -D(Default)다. 기본 홈 디렉터리 위치, 셸, skel 경로 같은 값을 보여 준다.
Q4. 로그인할 수 없는 서비스 계정 app을 만드는 명령은?
- useradd -d none app
- useradd -s /sbin/nologin app
- useradd -e 0 app
- useradd -L app
정답 보기
2번 useradd -s /sbin/nologin app
useradd -s /sbin/nologin app이다. 로그인 셸을 nologin으로 두면 로그인할 수 없다. -d는 홈 디렉터리, -e는 계정 만료일을 정한다.
Q5. 새 사용자의 UID 범위 등 기본 정책이 정의된 파일은?
- /etc/shells
- /etc/passwd
- /etc/login.defs
- /etc/skel
정답 보기
3번 /etc/login.defs
/etc/login.defs다. UID·GID 범위, 비밀번호 기간 기본값 등이 있다. /etc/skel은 홈 디렉터리로 복사할 기본 파일이 있는 곳이다.
헷갈리기 쉬운 O·X
useradd로 계정을 만들면 비밀번호도 자동으로 설정된다.
정답 보기
X passwd로 따로 설정해야 로그인할 수 있다.
useradd -g는 보조 그룹, -G는 기본 그룹을 지정한다.
정답 보기
X 반대. 소문자 g 기본, 대문자 G 보조.