리눅스 에서의 사용자
리눅스는 서로 다른 여러명의 사용자가 동시에 시스템에 접근 및 로그인하여 사용할 수 있는 멀티 유저(Multi User System) 운영체제입니다.
즉 리눅스 시스템이 설치된 서버 한 대에 여러명이 동시에 접근하여 이용하는 것 입니다.
리눅스를 설치하게 되면 기본적으로 root 라는 이름의 슈퍼 계정이 생성됩니다.
이 root 계정은 리눅스 시스템의 모든 권한을 가지고 작업을 실행할 수 있으며, 다른 사용자의 계정 및 권한까지 조작할 수 있습니다.
또한 일반 사용자 이외에 특정 으용 프로그램을 실행하기 위한 전용 계정을 시스템 계정이라고 합니다.
예를 들어 apache 웹 서버를 설치하게 되면 apache 실행에 필요한 계정인 "apache" 가 자동으로 생성됩니다.
이러한 시스템 계정은 특정 기능만을 수행하므로 홈디렉터리가 없고 로그인을 할 수 없습니다.
리눅스 에서의 그룹
리눅스의 root계정을 포함한 모든 사용자 계정은 하나 이상의 그룹에 포함되어 있어야 합니다.
그러나 그룹은 또 다른 그룹에 속할 수 없습니다.
모든 리눅스 계정은 특정 그룹에 속해 있음으로써 관리자 입장에서는 사용자별로 권한을 줄 수 있을 뿐만 아니라 그룹 단위로 간편하게 권한을 부여할 수 있습니다.
이렇게 하면 A그룹에 속한 사용자들은 특정 파일에 대해서 읽기, 쓰기 권한만 가능하도록 하고, B 그룹에게 디렉터리 접근 및 조작만 가능하도록 할 수 있는등의 제어가 가능합니다.
리눅스 사용자 관리 - /etc/passwd
리눅스 시스템에서 계정 정보는 /etc/passwd 파일에 저장됩니다.
vi 에디터 또는 vim에디터로 해당 파일을 열면 다음과 같이 여러 계정들에 대한 정보가 기록되어 있습니다.
vim /etc/passwd
또는
vi /etc/passwd |
cs |
/etc/passwd 파일 일부 내용
하나의 계정에 대한 정보는 다음의 형식에 따라 한 줄 단위로 저장되어 있습니다.
콜론(:) 을 기준으로 각 항목이 의미하는 바는 다음과 같습니다.
사용자 이름:암호:user ID:user가 소속된 그룹 ID:추가 정보:user의 홈디렉터리:기본 사용 셸
사용자 이름 - 로그인에 사용되는 이름(id) 입니다.
암호 - x로 표시되어 있는 것은 /etc/shadow 파일이 비밀번호가 암호화 되어 있다는 뜻입니다.
user ID - 계정에 부여된 고유 id 값입니다. 일반 사용자는 따로 지정하지 않는 경우 1000번 부터 1씩 증가하며 생성됩니다.
그룹 ID - 계정이 속한 그룹의 고유 id 값입니다.
추가 정보 - 전체 이름, 직장 번호, 전화번호 등의 부가적인 정보인데 생략 가능합니다.
홈 디렉터리 - 사용자의 홈 디렉터리 입니다. 계정 생성시 특별히 지정하지 않은 경우 /home/[사용자 이름] 으로 생성됩니다.
사용 셸 - 해당 계정으로 로그인 시 사용되는 셸 이며 기본적으로 /bin/bash 셸 입니다.
일반 사용자 확인하기
CentOS7의 경우 시스템 사용자를 제외한 일반 사용자는 UID가 1000 부터 60000까지 사용하도록 /etc/login.defs 파일에 설정되어 있습니다.
cat /etc/passwd | awk -F: '{if($3>=1000 && $3<=60000)print $0}' |
cs |
리눅스 그룹 관리 - /etc/group
리눅스 시스템에서 그룹에 대한 정보는 /etc/group 파일에 저장되어 있습니다.
vi 에디터 또는 vim에디터로 해당 파일을 열면 다음과 같이 여러 계정들에 대한 정보가 기록되어 있습니다.
vim /etc/group
또는
vi /etc/group |
cs |
/etc/group 파일 일부 내용
그룹 이름:암호:group ID:보조 그룹 유저
group이름과 group ID는 사용자가 속한 그룹의 이름와 ID이며, 보조 그룹 유저는 사용자가 기본적으로 속한 주 그룹 유저 밖의 보조 그룹이며, 사용자는 여러 개의 보조 그룹에 속할 수 있습니다.
여러명이 속한 경우 ,(콤마) 로 구분하여 표기됩니다.
참고글
'리눅스[Linux]' 카테고리의 다른 글
[Linux] 리눅스 usermod 명령어 - 계정 정보 변경 (0) | 2018.03.29 |
---|---|
[Linux] 리눅스 userdel 명령어 - 계정 삭제 (0) | 2018.03.29 |
[Linux] 리눅스 groupadd, groupmod, groupdel, groups 명령어 - 그룹 추가, 수정, 삭제, 확인 (0) | 2018.03.29 |
[Linux] 리눅스 gpasswd 명령어 - 그룹 암호 설정 (0) | 2018.03.29 |
[Linux] 리눅스 tail 명령어 - 파일 내용 뒤에서부터 보기 (0) | 2018.03.28 |