Seoyoung Report
그룹관리 명령어
리눅스(Linux)에서는 사용자(Owner)
, 그룹(Group)
, 기타 사용자(Other)
로 구분하여 권한 관리를 한다. 따라서, 사용자를 별도의 그룹으로 묶어서 관리하기 위해서는 그룹 관련 명령어를 잘 알아야 한다.
1. groups
사용자 그룹 확인
groups # 현재 사용자가 소속된 그룹 출력
# 한 사용자가 여러 그룹에 소속될 수 있다.
group 사용자 # 사용자가 소속된 그룹 출력
2. groupadd
새로운 그룹을 생성하는 명령어
groupadd 그룹명 # 새로운 그룹 생성
groupadd --gid 3333 그룹명 # 그룹을 생성하고 그룹ID를 3333으로 지정함
# 생성한 그룹은 /etc/group 파일에서 확인 가능
3. groupmod
그룹의 속성을 변경하는 명령어
groupmod --new-name 이전그룹 새로운그룹 # 그룹이름 변경
4. groupdel
그룹을 삭제하는 명령어
groupdel 그룹명 # 그룹을 삭제
# 그룹을 삭제하기 위해서는 해당 그룹에 주 그룹으로 지정한 사용자가 없어야 한다.
5. gpasswd
그룹의 비밀번호를 설정하거나 그룹 관리를 수행하는 명령어
gpasswd 그룹명 # 그룹 비밀번호를 설정
gpasswd -A 사용자 그룹명 # 사용자를 구룹의 관리자로 지정
gpasswd -a 사용자 그룹 # 사용자를 구룹에 추가
gpasswd -d 사용자 그룹 # 사용자를 구룹에서 제거
// /etc/group, /etc/gshadow 두 파일을 관리
6. usermod
usermod 명령어로도 그룹을 지정할 수 있다.
sudo usermod -a -G 그룹명 사용자
// -G : 사용자가 속할 그룹을 지정하는 옵션. 여러 개의 그룹을 지정할 때는 쉼표로 구분한다.
// -g 옵션이 주 그룹을 변경한다면 -G 옵션은 주 그룹은 그대로 두고 새로운 그룹을 하나 추가
사용자 계정 정보를 수정하는 명령어 중 하나로 이 명령어를 사용하면 사용자가 속한 그룹 정보를 수정할 수 있다. usermod 명령어는 사용자를 중심으로 그룹을 지정한다.
7. newgrp
현재 쉘 세션에서 다른 그룹으로 전환하는 명령어
newgrp group_name
// 현재 사용자를 group_name 그룹으로 변경
이 명령어를 사용하면 현재 사용자가 로그아웃하고 다시 로그인한 것과 같은 효과를 얻을 수 있다. newgrp 명령어를 사용하면 현재 쉘 세션이 새로운 그룹으로 변경되므로, 현재 쉘 세션이 종료될 때까지만 새로운 그룹의 권한을 유지한다. 따라서, 로그아웃하거나 쉘 세션을 종료하면 기존 그룹으로 다시 돌아가게 된다.
서브목차