본문 바로가기

IT/Linux

[Linux] 계정과 그룹관리

1. 계정 설정

1) 계정 확인하기

# cat /etc/passwd | grep kim
kim:x:1003:1003::/home/kim:/bin/bash

순서대로 사용자명, 패스워드, uid, gid, 설명, 계정 홈 디렉토리, 쉘 환경이다.

 

2) 계정 생성하기

# useradd 계정명 -m -s /bin/bash

 

3) useradd options

-d
홈 디렉토리 경로를 지정해준다.
-m
홈 디렉토리를 생성한다. (경로를 지정해주지 않으면 /home/계정명 으로 생성된다.)
-u
사용자 UID값을 지정한다.
-g
주 그룹으로 소속 시킨다.
-G groups...
보조 그룹을 지정한다. (kim계정이 생성되면 kim 그룹이 생성되고 kim 그룹이 입력한 그룹의 보조그룹이된다.)
-s
셀 경로를 지정한다.
-c
계정 설명을 추가한다.
-e expire_date
계정의 만료일을 설정한다.  ex) -e 2020-12-31
default는 무기한이며, /etc/default/useradd 파일의 EXPIRE 변수의 값에 만료일이 명시되어 있다.

 

4) 계정 비밀번호 변경하기

1) # echo '패스워드' | passwd --stdin 계정명

2) # echo '계정명:패스워드' | chpasswd

3) # passwd 계정명

 

5) 계정 삭제

# userdel -r 계정명

-r : home directory도 함께 삭제된다.


2. 그룹 설정

1) 계정 리스트 검색

# cat /etc/group

 

2) 그룹 생성

# groupadd 그룹명 

 

3) 그룹 삭제

# groupdel 그룹명

 

4) 특정 계정을 특정 그룹의 보조 그룹으로 추가

-g : 주 그룹 변경 옵션

-G : 보조 그룹 추가 옵션

//이미 해당 계정에 보조그룹이 지정되어 있다면, 덮어쓰기 된다.
# usermod -G 그룹명 계정명

//이미 해당 계정에 보조그룹이 있어도 보조그룹이 추가된다.
# usermod -G 그룹명 -a 계정명 

 

5) 특정 계정의 주그룹 변경 

# usermod -g 그룹명 계정명

 

6) 특정 계정이 소속된 그룹 검색

# groups 계정명

 

7) 계정 ID, 그룹 ID, 보조 그룹 검색

# id 계정명

3. 계정 생성 및 그룹 생성 테스트

//4개의 그룹을 생성한다.
# groupadd group1
# groupadd group2
# groupadd group3
# groupadd group4

// user1 계정 생성 시, group1을 주그룹으로 지정하고 group2,group3,group4을 보조그룹으로 지정한다.
# useradd user1 -g group1 -G group2,group3,group4

// "group"으로 시작하는 group을 검색한다.
# cat /etc/group | grep group
group1:x:1008: 
group2:x:1009:user1 
group3:x:1010:user1 
group4:x:1011:user1

//"user1" 계정을 검색한다.
# cat /etc/passwd | grep user1
user1:x:1007:1008::/home/user1:/bin/bash

//"user1"의 id정보들을 검색한다.
# id user1
uid=1007(user1) gid=1008(group1) groups=1008(group1),1009(group2),1010(group3),1011(group4)