본문 바로가기
운영체제/리눅스(CentOS)

리눅스 사용자 및 그룹 관리 완벽 가이드

by 마루의 일상 2025. 3. 27.
728x90
반응형

리눅스에서는 다중 사용자 시스템을 효과적으로 관리하기 위해 사용자 및 그룹 개념을 사용합니다. 이를 위해 useradd, usermod, userdel, groupadd 등의 명령어가 제공됩니다. 이 글에서는 각 명령어의 세부 사항과 실전 예제를 함께 설명합니다.


1. 사용자 관리

1.1 사용자 추가 (useradd)

새 사용자를 추가할 때는 useradd 명령어를 사용합니다.

기본 형식:

sudo useradd [옵션] 사용자이름

예제 1: 기본 설정으로 사용자 추가

sudo useradd testuser

이 명령어는 testuser라는 사용자를 기본 설정으로 생성합니다.

예제 2: 홈 디렉터리 생성과 기본 셸 지정

sudo useradd -m -s /bin/bash testuser2

옵션 설명:

  • -m: 사용자의 홈 디렉터리를 생성합니다.
  • -s /bin/bash: 기본 셸을 /bin/bash로 지정합니다.

예제 3: 특정 사용자 ID(UID)와 그룹 ID(GID) 지정

sudo useradd -u 1050 -g 100 testuser3
  • -u 1050: UID를 1050으로 설정
  • -g 100: GID를 100으로 설정

1.2 사용자 비밀번호 설정 (passwd)

새 사용자에게 비밀번호를 설정하려면 passwd 명령어를 사용합니다.

예제:

sudo passwd testuser

이 명령어를 실행하면 새 비밀번호를 입력하라는 메시지가 나타납니다.

1.3 사용자 정보 수정 (usermod)

사용자의 속성을 변경할 때 usermod를 사용합니다.

예제 1: 사용자 이름 변경

sudo usermod -l newuser testuser
  • testuser의 이름을 newuser로 변경합니다.

예제 2: 사용자의 홈 디렉터리 변경

sudo usermod -d /home/newhome -m testuser
  • -d: 새 홈 디렉터리 경로 지정
  • -m: 기존 데이터 이동

예제 3: 그룹 변경

sudo usermod -g developers testuser
  • testuser의 기본 그룹을 developers로 변경

1.4 사용자 삭제 (userdel)

사용자를 삭제할 때는 userdel을 사용합니다.

예제 1: 사용자 계정 삭제 (홈 디렉터리 유지)

sudo userdel testuser

예제 2: 사용자 계정 및 홈 디렉터리 삭제

sudo userdel -r testuser
  • -r: 사용자의 홈 디렉터리까지 삭제

2. 그룹 관리

2.1 그룹 추가 (groupadd)

새 그룹을 생성하려면 groupadd 명령어를 사용합니다.

예제 1: 기본 그룹 추가

sudo groupadd developers

예제 2: 특정 GID를 가진 그룹 추가

sudo groupadd -g 1050 managers
  • -g 1050: GID를 1050으로 지정

2.2 그룹 수정 (groupmod)

기존 그룹의 속성을 변경하려면 groupmod를 사용합니다.

예제 1: 그룹 이름 변경

sudo groupmod -n newgroup developers
  • developers 그룹의 이름을 newgroup으로 변경

2.3 그룹 삭제 (groupdel)

그룹을 삭제하려면 groupdel을 사용합니다.

예제:

sudo groupdel developers

이 명령어는 developers 그룹을 삭제합니다. 단, 그룹에 사용자가 남아 있으면 삭제할 수 없습니다.

2.4 사용자를 그룹에 추가 (usermod -aG)

기존 사용자에게 추가 그룹을 지정하려면 usermod -aG를 사용합니다.

예제 1: 사용자를 그룹에 추가

sudo usermod -aG developers testuser
  • testuserdevelopers 그룹에 추가 (기존 그룹 유지)

예제 2: 사용자의 추가 그룹 확인

groups testuser

또는

id testuser

3. 사용자 및 그룹 확인

3.1 시스템의 모든 사용자 목록 확인

cat /etc/passwd

3.2 특정 사용자 정보 확인

id testuser

3.3 시스템의 모든 그룹 목록 확인

cat /etc/group

3.4 특정 그룹에 속한 사용자 확인

grep '^developers' /etc/group

4. 사용자 및 그룹 관리 요약

명령어설명

useradd 새 사용자 추가
usermod 기존 사용자 정보 수정
userdel 사용자 삭제
passwd 사용자 비밀번호 설정
groupadd 새 그룹 추가
groupmod 기존 그룹 정보 수정
groupdel 그룹 삭제
usermod -aG 사용자를 추가 그룹에 포함
id 사용자 및 그룹 정보 확인
cat /etc/passwd 시스템의 모든 사용자 조회
cat /etc/group 시스템의 모든 그룹 조회

이제 리눅스에서 사용자와 그룹을 관리하는 방법을 완벽히 이해하셨을 것입니다

728x90
반응형