Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
Tags
- VirtualBox
- 오라클
- 리눅스
- putty
- 파이썬
- 파이썬 전처리
- Python DataFrame
- 리눅스 명령어
- tibero
- RFP
- Algorithm
- 코딩테스트
- Oracle
- 파이썬 알고리즘
- it 용어
- 알고리즘
- linux
- 데이터베이스
- 파이썬 데이터프레임
- sql
- csharp
- MariaDB
- it용어
- C#
- PYTHON
- Python 라이브러리
- Oracle VM VirtualBox
- python algorithm
- HTML
- dbeaver
Archives
- Today
- Total
오경석의 개발노트
Linux_useradd, adduser: 사용자 추가 명령어 본문
※ 아래 내용은 Rocky Linux release 8.9 기준으로 작성
■ 개념
- 새로운 사용자 계정 생성을 생성하거나, 새 사용자 계정의 기본 정보를 업데이트
■ 옵션
○ 홈 티렉터리 관련
옵션 | 설명 | 예시 |
-m, --create-home |
홈 디렉터리 생성. /home/사용자명 디렉터리를 생성하고, /etc/skel의 초기 파일 복사 |
useradd -m test1 |
-d, --home-dir HOME_DIR |
홈 디렉터리 경로 직접 지정. 사용자 홈 디렉터리를 원하는 경로로 설정 |
useradd -d /data/test1 test1 |
-b, --base-dir |
기본 홈 디렉터리 경로(base). 사용자 이름을 붙여서 홈 디렉터리 경로 자동 생성 |
useradd -b /data -m test1 -> /data/test1 생성 |
-D, --defaults |
기본값 보기/설정. useradd 명령어의 기본 설정값 확인 또는 변경 |
useradd -D (보기), useradd -D -b /data (설정) |
-M, --no-create-home |
홈 디렉터리를 생성하지 않음. | useradd -M test1 |
-k, --skel |
초기 파일을 복사할 스켈레톤 디렉터리 지정. -m과 함께 사용해야 함. | useradd -m -k /etc/custom_skel test1 |
※ /etc/login.defs에서 'CREATE_HOME yes' 설정이 있으면 -m 옵션을 사용하지 않아도 자동으로 디렉터리 생성
- Rocky Linux release 8.9 기준으로 default는 yes로 되어있음
- CREATE_HOME 설정이 no로 되어있으면 -m 옵션을 지정 해야함
○ 사용자 정보 설정
옵션 | 설명 | 예시 |
-c, --comment |
사용자 설명 또는 전체 이름 입력 | useradd -c "test user" test1 |
-s, --shell |
로그인 셸 지정 | useradd -s /bin/bash test1 |
-u, --uid |
사용자 ID 직접 지정 | useradd -u 1 |
## root 또는 sudo 권한이 있는 사용자만 사용자 계정 생성 가능
## 첫번째 방법
[root@test ~]# adduser test1
## 두번째 방법
[root@test ~]# useradd test1
■ 사용자 삭제
[root@test ~]# userdel test1
## 주요 옵션
-r: 사용자의 홈 디렉터리와 메일 스풀까지 함께 삭제. 매우 자주 사용되는 옵션(remove)
-f: 강제로 삭제. 사용자가 로그인 중이거나 NFS로 마운트된 경우에도 삭제(force)
※ 삭제된 사용자의 UID가 남아 있는 파일은 소유자가 숫자로 표시됨. ex) 1001
■ 사용자 확인
## 사용자 정보
## 계정이 추가되면 UID, GID가 각각 1씩 증가
[root@test ~]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:65534:65534:Kernel Overflow User:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
systemd-coredump:x:999:997:systemd Core Dumper:/:/sbin/nologin
systemd-resolve:x:193:193:systemd Resolver:/:/sbin/nologin
tss:x:59:59:Account used for TPM access:/dev/null:/sbin/nologin
polkitd:x:998:996:User for polkitd:/:/sbin/nologin
libstoragemgmt:x:997:993:daemon account for libstoragemgmt:/var/run/lsm:/sbin/nologin
sssd:x:996:992:User for sssd:/:/sbin/nologin
cockpit-ws:x:995:991:User for cockpit web service:/nonexisting:/sbin/nologin
cockpit-wsinstance:x:994:990:User for cockpit-ws instances:/nonexisting:/sbin/nologin
chrony:x:993:989::/var/lib/chrony:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
test1:x:1000:1000::/home/test1:/bin/bash
## 실제 로그인 가능한 일반 사용자 계정 목록 출력
## 계정 생성 시, 기본적으로 /bin/bash 환경이 적용
[root@test ~]# grep /bin/bash /etc/passwd
root:x:0:0:root:/root:/bin/bash
test1:x:1000:1000::/home/test1:/bin/bash
test2:x:1001:1001::/home/test2:/bin/bash
test3:x:1002:1002::/home/test3:/bin/bash
## 아이디만 출력
[root@test ~]# grep /bin/bash /etc/passwd | cut -f1 -d:
root
test1
test2
test3
## 현재 사용자 또는 지정한 사용자의 UID, GID, 그룹 정보를 확인
[test1@test ~]$ id
uid=1000(test1) gid=1000(test1) groups=1000(test1) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
[root@test ~]# id test1
uid=1000(test1) gid=1000(test1) groups=1000(test1)
## 현재 로그인한 사용자 정보 확인(사용자 이름, 터미널, 로그인 시간, 원격 접속 정보(IP))
[root@test ~]# who
root tty1 2025-10-10 12:11
root pts/0 2025-10-10 13:27 (221.150.31.68)
■ 사용자 권한 부여
■ 사용자 패스워드 설정
## 비밀번호 설정 또는 변경
[root@test ~]# passwd test3
Changing password for user test3.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
## 따로 패스워드 관련 설정하지 않았을 시, 짧아도 설정은 가능하다.
[root@test ~]# passwd test3
Changing password for user test3.
New password:
BAD PASSWORD: The password is shorter than 8 characters
Retype new password:
passwd: all authentication tokens updated successfully.
출처: https://boying-blog.tistory.com/42
리눅스 사용자 목록 확인하는 법
grep /bin/bash /etc/passwd | cut -f1 -d: 간단하게 한 줄 이면 됩니다.
boying-blog.tistory.com
출처:
'소프트웨어, 운영체제 > Linux' 카테고리의 다른 글
Linux_du, df: 파일디스크 사용량 확인 (0) | 2024.09.18 |
---|---|
Linux_shutdown, reboot, halt, poweroff: 서버 기동 관련 명령어 (2) | 2024.09.15 |
Linux_su(substitute user): 사용자 전환 (0) | 2024.03.17 |
Linux_umask: 새로운 파일 기본 권한 설정 (1) | 2024.02.26 |
Linux_scp: 서버 간 파일 전송 (0) | 2024.02.12 |
Comments