리눅스는 윈도우에 비해 여러 사용자를 만들고, 그 사용자를 관리해야 할 일이 많이 있다.
그리고 추후에 공부할 권한과 관련해서도 사용자 부분을 확실히 짚고 넘어가야한다.
===============================================================================================
사용자 생성에 앞서 현재 리눅스에 존재하는 사용자들의 정보를 확인해보자.
사용자 정보는 /etc/passwd 에 적혀있다.
cat 명령어를 확인해 내용을 출력해보자.
# cat /etc/passwd
맨 아래 행을 보면 최근 생성된 사용자가 보일 것이다.
각 행의 맨 앞 부분에 적힌게 사용자명이다.
콜론(:)으로 나누어진 각 부분이 무엇을 의미하는지 haejoon 이라는 사용자를 예로 들어 설명하겠다.
haejoon : x : 500 : 500 : haejoon : /home/haejoon : /bin/bash
사용자명 : 암호 : UID : GID : 주석(Comment) : 사용자 홈 디렉토리 경로 : Shell (명령어 해석기) 종류
- 맨 앞의 'haejoon'은 사용자명을 의미한다.
- 두 번째 x 는 암호를 의미한다. 일괄적으로 x 표기된다.
- 세 번째 500은 UID를 의미한다. UID에 대한 자세한 내용은 추후에 다루도록 하겠다.
- 네 번째 500은 GID를 의미한다. GID에 대한 자세한 내용은 추후에 다루도록 하겠다.
- 다섯 번째 haejoon은 주석이다. 해당 유저에 대한 부가적인 설명 정도로 생각하면 된다.
- 여섯 번째 /home/haejoon은 해당 사용자의 홈 디렉토리 경로이다.
- 마지막 /bin/bash는 Shell의 종류이다. Shell은 명령어 해석기 정도로 생각하면 되겠다.
======================================================================================
- Shell 의 종류
Shell은 사용자가 입력한 명령을 해석하여 실행해주는 '명령어 해석기'의 역할을 하며,
크게 다음과 같은 세 가지의 종류가 있다.
1. Bourne Shell (sh)
# 최초로 개발된 Shell 이다.
2. Bourne Again Shell (bash)
# 리눅스 표준 Shell 이다.
3. Korn Shell (ksh)
# 유닉스 표준 Shell 이다.
* 리눅스에서는 Bourne Again Shell (bash)를 주로 사용한다는 것 정도만 우선 짚고 넘어가자
=======================================================================================
그럼 사용자를 생성해보자.
사용자 생성 명령어는 useradd 이다.
useradd 명령어를 사용해 'user1' 유저를 생성해보자.
우선 아무런 옵션을 주지 않고 생성해보자.
# useradd user1
위와 같이 아무런 경고창이 뜨지 않으면 유저 생성이 완료된 것이다.
제대로 생성이 되었는지 /etc/passwd 파일에서 확인해보자.
파일의 뒤쪽 부분만 확인하면 되므로 tail 명령어로 확인해보자.
# tail /etc/passwd
맨 아래줄에 user1이 생성된 것을 확인할 수 있다.
UID, GID가 'haejoon'에 비해 +1씩 된 것을 확인할 수 있고,
/home/ 밑에 'user1' 이라는 디렉토리롤 홈 디렉토리가 자동으로 잡힌 것을 확인할 수 있다.
유저를 생성했으면, 비밀번호를 설정해 접속을 해보자.
비밀번호 설정 명령어는 passwd 이다.
# passwd user1
비밀번호 입력창이 나오면 비밀번호를 입력하고, 재 입력 창이 나오면 똑같이 입력해준다.
일단 실습용으로 만드는 것이므로 경고창은 무시해도 상관 없다.
비밀번호 설정이 완료되었으면, PuTTY창 상단 바를 우클릭해서 'Duplicate Session' 버튼을 클릭해준다.
새 창이 뜨면 user1로 접속 후, pwd 명령어를 사용해서 홈 디렉토리에 제대로 위치했는지 확인한다.
홈 디렉토리에서 ls -la 명령어를 사용해 파일 내용을 출력해보자.
. 으로 시작되는 파일은 숨김파일이기때문에 a 옵션을 주어야 볼 수 있다.
출력되는 파일들은 유저를 생성할때 기본적으로 함께 생성되는 파일들이다.
* 사용자가 생성될 때 /etc/skel 이라는 경로에 있는 파일들을 참고하여 그 내용들을 기본적으로 생성한다.
ls -la 명령어를 통해 /etc/skel 경로의 파일 내용을 출력해보자.
# ls -la /etc/skel
.bash_history 파일을 제외한 모든 파일이 같은 것을 확인할 수 있다.
(bash_history는 사용자가 쉘을 사용하면서 사용한 명령어들을 기록하는 파일이다.)
즉, 사용자 생성 시 기본적으로 함께 생성하고 싶은 디렉토리나 파일이 있다면 /etc/skel 에 생성해주면 된다.
/etc/skel 에 각각 testfile 문서 파일과 testdir 디렉토리를 생성해보자.
일반 사용자는 권한이 없어 생성이 되지 않으므로 root 사용자로 진행해야한다.
(권한에 관련된 내용은 추후에 자세히 다루도록 하겠음)
# touch /etc/skel/testfile
# mkdir /etc/skel/testdir
# ls -la /etc/skel/
testfile 과 testdir 을 정상적으로 생성했다면,
useradd 명령어를 사용하여 'user2' 유저를 생성해보자.
생성 후에는 tail 명령어로 user2 유저가 제대로 생성되었는지 확인하자.
# useradd user2
# tail /etc/passwd
user2가 정상적으로 생성된 것을 확인했으면,
user2의 홈 디렉토리 목록을 확인해보자.
# ls -la /home/user2
/etc/skel에 생성한 testfile과 testdir이 홈 디렉토리에 기본적으로 함께 생성된 것을 확인할 수 있다.
이로써 유저 생성에 관한 기본적인 내용을 마쳤다.
다음 포스팅에서는 사용자 정의 skel을 활용한 유저 생성 방법에대해 다루도록 하겠다.
[출처] 리눅스에서 사용자 생성하는 방법을 알아보자 ! (리눅스 사용자 만들기, 리눅스 사용자 추가)|작성자 이해준
'Linux(리눅스)' 카테고리의 다른 글
Failed to parse PID from file /app/tomcat/tomcat/temp/tomcat.pid: Invalid argument (tomcat 실행 문제) 에러 (0) | 2024.12.30 |
---|---|
firewalld 방화벽 설정 하기 (0) | 2024.06.25 |
nginx config 설정 녹취프로젝트 (0) | 2024.01.03 |
윈도우에 WSL2 설치하기 + Ubuntu(우분투) OR CentOS(센토스) (2) | 2023.10.16 |
리눅스 사용자 변경 (CentOS 사용자 변경) (2) | 2021.08.03 |