11.5. 명령줄을 사용하여 사용자 그룹 편집
사용자는 파일 및 폴더에 대한 유사한 액세스 권한을 가진 사용자의 논리적 컬렉션을 허용하는 특정 그룹 세트에 속합니다. 명령줄에서 기본 및 보조 사용자 그룹을 편집하여 사용자의 권한을 변경할 수 있습니다.
11.5.1. 기본 및 보조 사용자 그룹
그룹은 특정 파일에 대한 액세스 권한 부여 등 공통 목적으로 여러 사용자 계정을 연결하는 엔터티입니다.
Linux에서 사용자 그룹은 기본 또는 보조 역할을 할 수 있습니다. 기본 및 보조 그룹에는 다음 속성이 있습니다.
- 기본 그룹
- 모든 사용자에게는 항상 하나의 기본 그룹만 있습니다.
- 사용자의 기본 그룹을 변경할 수 있습니다.
- 보조 그룹
- 기존 사용자를 기존 보조 그룹에 추가하여 그룹 내에서 동일한 보안 및 액세스 권한으로 사용자를 관리할 수 있습니다.
- 사용자는 0개 또는 여러 개의 보조 그룹의 구성원이 될 수 있습니다.
11.5.2. 사용자의 기본 및 보조 그룹 나열
사용자 그룹을 나열하여 자신이 속한 기본 및 보조 그룹을 확인할 수 있습니다.
절차
사용자의 기본 그룹과 보조 그룹의 이름을 표시합니다.
$ groups user-name
user-name 을 사용자 이름으로 변경합니다. 사용자 이름을 제공하지 않으면 명령은 현재 사용자의 그룹 멤버십을 표시합니다. 첫 번째 그룹은 기본 그룹 다음에 선택적 보조 그룹이 옵니다.
예 11.4. 사용자 sarah의 그룹 목록:
$ groups sarah
출력이 표시됩니다.
sarah : sarah wheel developer
User
sarah
에는 기본 groupsarah
가 있으며, 보조 그룹wheel
및developer
의 구성원입니다.예 11.5. 사용자 marc의 그룹 목록:
$ groups marc
출력이 표시됩니다.
marc : marc
사용자
marc
에는 기본 그룹marc
및 보조 그룹이 없습니다.
11.5.3. 사용자의 기본 그룹 변경
기존 사용자의 기본 그룹을 새 그룹으로 변경할 수 있습니다.
사전 요구 사항
-
루트
액세스 - 새 그룹이 존재해야 합니다.
절차
사용자의 기본 그룹을 변경합니다.
# usermod -g group-name user-name
group-name 을 새 기본 그룹의 이름으로 바꾸고 user-name 을 사용자 이름으로 교체합니다.
참고사용자의 기본 그룹을 변경하면 명령은 사용자 홈 디렉터리에 있는 모든 파일의 그룹 소유권을 새 기본 그룹으로 자동 변경합니다. 사용자의 홈 디렉터리 외부에서 파일의 그룹 소유권을 수동으로 수정해야 합니다.
예 11.6. 사용자의 기본 그룹을 변경하는 예:
user
sarah가
기본 groupsarah1
에 속하고 사용자의 기본 그룹을sarah2
로 변경하려면 다음을 사용합니다.# usermod -g sarah2 sarah
검증
사용자의 기본 그룹을 변경했는지 확인합니다.
$ groups sarah
출력이 표시됩니다.
sarah : sarah2
11.5.4. 명령줄에서 사용자를 보조 그룹에 추가
보조 그룹에 사용자를 추가하여 권한을 관리하거나 특정 파일 또는 장치에 대한 액세스를 활성화할 수 있습니다.
사전 요구 사항
-
루트
액세스
절차
사용자의 보조 그룹에 그룹을 추가하려면 다음을 사용합니다.
# usermod --append -G group-name username
group-name 을 그룹의 이름으로 바꾸고 username 을 사용자 이름으로 바꿉니다.
예 11.7. 보조 그룹에 사용자 추가
사용자
sysadmin
을system-admins
그룹에 추가하려면 다음을 사용합니다.# usermod --append -G system-administrators sysadmin
검증
새 그룹이 사용자
sysadmin
의 보조 그룹에 추가되었는지 확인하려면 다음을 사용합니다.# groups sysadmin
출력이 표시됩니다.
sysadmin : sysadmin system-administrators
11.5.5. 보조 그룹에서 사용자 제거
보조 그룹에서 기존 사용자를 제거하여 파일 및 장치에 대한 권한을 제한할 수 있습니다.
사전 요구 사항
-
루트
액세스
절차
보조 그룹에서 사용자 제거:
# gpasswd -d user-name group-name
user-name 을 사용자 이름으로 바꾸고 group-name 을 보조 그룹 이름으로 교체합니다.
예 11.8. 보조 그룹에서 사용자 제거
사용자 sarah에 기본 group
sarah2
가 있고 보조 그룹wheel
및developers
에 속하고 그룹 개발자에서 해당 사용자를 제거하려면다음을
사용합니다.# gpasswd -d sarah developers
검증
보조 그룹 developers에서 사용자 sarah가 제거되었는지 확인합니다.
$ groups sarah
출력이 표시됩니다.
sarah : sarah2 wheel
11.5.6. 사용자의 모든 보조 그룹 변경
사용자가 멤버로 유지하려는 보조 그룹 목록을 덮어쓸 수 있습니다.
사전 요구 사항
-
루트
액세스 - 보조 그룹이 있어야 합니다.
절차
사용자의 보조 그룹 목록을 덮어씁니다.
# usermod -G group-names username
group-names 를 하나 이상의 보조 그룹의 이름으로 바꿉니다. 사용자를 한 번에 여러 보조 그룹에 추가하려면 그룹 이름을 쉼표와 중간 공백을 사용하여 구분합니다. 예:
wheel,developer
.user-name 을 사용자 이름으로 변경합니다.
중요사용자가 현재 지정하지 않는 그룹의 멤버인 경우 명령은 그룹에서 사용자를 제거합니다.
예 11.9. 사용자의 보조 그룹 목록 변경
user
sarah
에 기본 groupsarah2
가 있고 보조 그룹wheel
에 속하고 사용자가 3개의 보조 그룹developer
,sysadmin
및security
에 속하게 하려면 다음을 사용합니다.# usermod -G wheel,developer,sysadmin,security sarah
검증
보조 그룹 목록을 올바르게 설정했는지 확인합니다.
# groups sarah
출력이 표시됩니다.
sarah : sarah2 wheel developer sysadmin security