| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | ||
| 6 | 7 | 8 | 9 | 10 | 11 | 12 |
| 13 | 14 | 15 | 16 | 17 | 18 | 19 |
| 20 | 21 | 22 | 23 | 24 | 25 | 26 |
| 27 | 28 | 29 | 30 |
Tags
- coreutils
- UnixCommand
- 쉘스크립트
- JavaScript
- cups
- 리눅스명령어
- PackageManagement
- environment
- 정규표현식
- UNIX
- terminal
- 자바스크립트
- js
- linuxcommand
- linux
- 파일시스템
- 명령어
- 터미널
- Unix명령어
- bash
- 유닉스명령어
- tcsh
- 사용자관리
- 리눅스
- shell
- sysadmin
- 시스템관리
- Solaris
- 유닉스
- php
Archives
- Today
- Total
ioerror
useradd 사용법 및 옵션 - 새로운 사용자 계정을 생성하는 리눅스 시스템 관리 명령어 본문
반응형

useradd - User Add
리눅스 시스템에서 새로운 사용자 계정을 생성하고 초기 기본 설정을 구성하는 필수 시스템 관리 명령어이다. 실행 시 /etc/passwd, /etc/shadow, /etc/group 등 시스템 계정 관련 파일을 직접 업데이트한다. 계정 생성 시 홈 디렉터리 생성, 기본 셸 지정, 사용자 그룹 할당 등을 제어할 수 있으며, 시스템 보안과 권한 관리에 직결되므로 반드시 root 권한이나 sudo를 사용하여 실행해야 한다.
1. useradd 용도
- 신규 사용자 등록 및 홈 디렉터리 자동 생성
- 특정 서비스 전용 시스템 계정(System Account) 생성
- 특정 그룹 할당 및 사용 유효기간 설정
- 사용자가 속할 추가 그룹 지정 및 기본 셸 변경
2. useradd 서식
Bash
useradd [옵션] 사용자명
3. useradd 옵션
| 옵션 | 설명 | 사용가능 OS 및 쉘 |
| -m, --create-home | 사용자 홈 디렉터리를 생성함 | Linux |
| -d, --home-dir | 홈 디렉터리의 경로를 직접 지정함 | Linux |
| -g, --gid | 기본 그룹(Primary Group)을 지정함 | Linux |
| -G, --groups | 보조 그룹(Supplementary Groups)을 다중 지정함 | Linux |
| -s, --shell | 기본 로그인 셸을 지정함 | Linux |
| -e, --expiredate | 계정 만료일을 지정함 (YYYY-MM-DD 형식) | Linux |
| -f, --inactive | 암호 만료 후 계정 비활성화 비예약 기간 설정 | Linux |
| -p, --password | 암호화된 비밀번호를 직접 설정함 | Linux |
| -r, --system | 시스템 계정을 생성함 (UID 낮게 할당, 홈 디렉터리 미생성) | [Linux: RedHat/Debian] |
| -u, --uid | 사용자의 UID를 지정함 | Linux |
| -D, --defaults | useradd의 기본 설정값을 확인하거나 변경함 | Linux |
Bash
# 1. 기본 홈 디렉터리와 bash 셸을 지정하여 계정 생성
sudo useradd -m -s /bin/bash john
# /etc/passwd에 john 계정 추가됨
# /home/john 디렉터리가 자동 생성됨
# 2. 기본 그룹 및 보조 그룹을 함께 지정하여 계정 생성
sudo useradd -m -g developers -G sudo,docker alice
# alice 계정의 기본 그룹은 developers로 설정됨
# 보조 그룹으로 sudo 및 docker 그룹에 추가됨
# 3. 로그인 불가능한 시스템 계정 생성 (서비스 데몬용)
sudo useradd -r -s /usr/sbin/nologin appuser
# UID가 1000 미만인 시스템 계정으로 생성됨
# 대화형 로그인이 불가능하도록 /usr/sbin/nologin 셸이 부여됨
# 4. 계정 만료일 설정하여 임시 계정 생성
sudo useradd -m -e 2026-12-31 tempuser
# 2026년 12월 31일 이후 해당 계정의 로그인이 차단됨
- -m: 계정 생성과 동시에 /home/사용자명 형태의 홈 디렉터리를 구성함
- -s: 계정 접속 시 구동될 로그인 셸 파일 경로를 정의함
- -g: /etc/group에 존재하는 primary 그룹 이름을 매핑함
- -G: 콤마(,)로 구분하여 여러 보조 그룹을 할당함
- -r: 인터랙티브 접속이 필요 없는 백그라운드 서비스 전용 계정을 생성함
4. useradd 특이사항(유의사항)
- useradd 실행 후에는 반드시 passwd 사용자명 명령어로 비밀번호를 설정해야 정상 로그인이 가능하다. 비밀번호를 설정하지 않으면 계정이 잠금 상태로 유지된다.
- Ubuntu 및 Debian 계열에서는 인터랙티브 대화형으로 계정을 생성하는 adduser 스크립트를 제공한다. useradd는 옵션 없이 실행 시 홈 디렉터리를 생성하지 않지만, adduser는 기본적으로 홈 디렉터리와 비밀번호 설정을 안내한다.
- 계정 삭제 시에는 userdel 명령어를 사용하며, 홈 디렉터리까지 함께 삭제하려면 -r 옵션을 첨부해야 한다.
- 기본 설정 정보는 /etc/default/useradd 파일 및 /etc/login.defs 파일에 정의되어 있다.
관련 명령어들
- passwd: 사용자 계정의 비밀번호를 설정하거나 변경함
- usermod: 기존 사용자 계정의 정보를 수정함
- userdel: 사용자 계정을 시스템에서 삭제함
- groupadd: 새로운 그룹을 생성함
- id: 현재 또는 특정 사용자의 UID, GID, 속한 그룹 정보를 출력함
https://ioerror.tistory.com/entry/UNIX-Linux-Command-Reference
UNIX & Linux Command Reference
유닉스 / 리눅스 명령어 표유닉스와 리눅스 환경에서 자주 사용되는 필수 명령어들을 완벽하게 정리한다. 서버 관리, 프로그래밍, 일상적인 시스템 운영 등 어떤 목적이든 터미널 환경을 능숙하
ioerror.tistory.com
반응형
'OS' 카테고리의 다른 글
| usermod 사용법 및 옵션 - 기존 사용자 계정의 정보 및 설정을 변경하는 리눅스 관리 명령어 (0) | 2026.07.31 |
|---|---|
| userdel 사용법 및 옵션 - 기존 사용자 계정 및 관련 파일을 시스템에서 삭제하는 리눅스 관리 명령어 (0) | 2026.07.31 |
| uptime 사용법 및 옵션 - 시스템 가동 시간 및 평균 부하 확인 (0) | 2026.07.31 |
| unzip 사용법 및 옵션 - ZIP 압축 파일의 해제 및 내용 확인 (0) | 2026.07.31 |
| unshareall 사용법 및 옵션 - 공유 중인 모든 NFS 자원 자원 해제 (0) | 2026.07.31 |
Comments