<공부 주제>
Linux 사용자와 그룹 개념
<공부한 내용 정리>
Linux는 다중 사용자 운영체제이기 때문에 여러 사용자가 동시에 시스템을 사용할 수 있도록 사용자(User)와 그룹(Group) 개념을 통해 권한을 관리한다.
사용자와 그룹의 목적은 파일과 디렉토리에 대한 접근 권한을 효율적으로 제어하는 것이다.
기본 개념은 다음과 같다.
- 사용자(User) : Linux 시스템에 로그인하는 계정
- 그룹(Group) : 여러 사용자를 묶어 관리하는 단위
각 사용자는 반드시 하나 이상의 그룹에 속한다.
사용자(User)
Linux의 사용자는 다음과 같이 나뉜다.
- root 사용자
시스템 최고 권한 사용자
모든 파일과 설정에 접근 가능
- 일반 사용자
제한된 권한을 가진 사용자
일상적인 작업 수행
-시스템 사용자
서비스나 데몬 실행을 위해 사용
로그인 목적이 아님
각 사용자는 고유한 UID(User ID)를 가진다.
그룹(Group)
그룹은 여러 사용자를 하나로 묶어 권한을 한 번에 관리하기 위한 개념이다.
- 파일 하나에 여러 사용자 권한을 직접 주는 것을 비효율적
- 그룹을 사용하면 관리가 쉬워짐
각 그룹은 GID(Group ID)를 가진다.
사용자와 그룹의 관계
- 사용자는 하나의 기본 그룹(primary group)을 가진다.
- 추가로 여러 보조 그룹(secondary group)에 속할 수 있다.
- 파일은 소유자(user)와 그룹(group)을 가진다.
-> 파일 권한은 소유자/그룹/기타 사용자 기준으로 적용된다.
관련파일
Linux에서 사용자와 그룹 정보는 다음 파일에 저장된다.
- /etc/passwd : 사용자 계정 정보
- /etc/group : 그룹 정보
- /etc/shadow : 사용자 비밀번호 정보
<예제 / 실습코드>
현재 로그인한 사용자 확인
whoami
사용자가 속한 그룹 확인
groups
사용자 정보 확인
id
<헷갈렸던 점>
- 사용자와 그룹의 역할이 처음에는 비슷하게 느껴졌다.
하지만 사용자는 로그인 계정이고, 그룹은 권한 관리를 위한 묶음이라는 점을 정리했다.
- 기본 그룹과 보조 그룹의 차이가 헷갈렸다.
<오늘의 정리>
- Linux는 다중 사용자 운영체제이다.
- 사용자와 그룹을 통해 권한을 관리한다.
- 파일은 소유자와 그룹 정보를 가진다.
- 그룹을 사용하면 권한 관리가 쉬워진다.