티스토리 뷰

리눅스.초보.서버설치.GNOME데스크탑.최적화추가.사용자관리-useradd
리눅스.초보.사용자관리 useradd

리눅스는 다중사용자 운영체제이다. 
다중 사용자용 운영체제란 하나의 정보시스템을 여러 명의 사용자가 동시에 사용하는 것을 말하며, 동시에 여러 사용자의 서비스를 요청 받아, 동시에 서비스를 처리하는 기능을 가진다. 
이와 같이 여러 명의 사용자가 동시에 사용하기 때문에 사용자 관리가 필수이다. 

 

 

[사용자 관련 명령어]

명령어 설명
useradd 사용자 계정 생성
userdel 사용자 계정 삭제
usermod 사용자의 정보를 대부분 변경 가능
su  특정 사용자로 권환 전환

 

 

[1. useradd]

  • 사용자 계정을 만드는 관리자 명령어이다.
  • root 권한이 있는 사용자만 사용할 수 있음
  • root 권한자가 root 이외의 사용자를 생성할 때 사용하는 명령어
  • 사용자를 등록하는 명령어이다. /etc/passwd, /etc/shadow, /etc/group 파일에 업데이트 된다.

 

 - 사용 방법
 useradd [options] 사용자계정이름

 - 많이 사용되는 주요 옵션

 -d 홈 디렉터리 지정 (--home-dir)
 -g 그룹 지정
 -G 기본 그룹 외의 추가로 속하게 할 그룹 지정
 -D /etc/default/useradd 에 설정된 useradd 와 관련된 기본 사항을 보여준다
 -f 사용자 비밀번호 만기일을 날짜 수로 추정 (--inactive)
 -e 계정의 만기일을 YYYY-MM-DD 형식으로 지정 (--expiredate)



 - 그 외 주요 옵션1

useradd [옵션] [사용자명]
사용자 명의 이름을 가진 사용자를 추가
-u
UID 지정
-u uid
--uid=uid
사용자의 UID를 수동으로 설정
※ 기본적으로 다음으로 가용한 UID가 자동으로 지정
-g
GID그룹명 지정 (default : UID)
-g group
--gid=group
계정이 속할 주 그룹 지정
※ 그룹은 /etc/group 파일에 이미 존재해야 함
※ 기본적으로 사용자 계정 및 UID와 같은 값을 가지는 그룹 계정과 GID가 만들어짐
-d
홈 디렉터리 지정 (default : /home/사용자명)
-G
보조 그룹 지정
-G group_list
--groups group_list
계정이 속한 부 그룹을 지정
※ 여러 개를 지정하려면 콤마로 구분하여 설정
-D [옵션]
기본 설정 확인 및 변경
-b : 홈 디렉터리 수정
-g : 기본 그룹 변경
-s : 기본 쉘 변경
-m : skel 디렉터리 변경
-e : 패스워드 만료일 변경
-f : grace 기간(패스워드 만료일 이후 유예기간) 변경
useradd -D -b /home/username -s /bin/csh
-D
사용자 계정 생성 시 사용되는 현재의 설정값 출력
useradd -D
-s
지정 (로그인이 필요하지 않은 계정은 /sbin/nologin으로 설정)
-s shell
--shell=shell
사용자의 기본 쉘 설정
useradd -s /bin/bash 계정
-M
메일 전용 계정 생성
홈 디렉터리가 생성되지 않음
-r
999번 이하의 UID 자동 할당
서비스를 위한 더미 계정으로 보통 실제 사용자가 없음
쉘은 보통 /sbin/nologin으로 지정
홈 디렉터리가 생성되지 않음
-c 'comment'
--comment=comment
사용자 생성 시 사용자에 대한 설명 설정
useradd -c '테스트용' doran
-d HOME_DIR
--home-dir=HOME_DIR
새로운 계정의 홈 디렉터리 설정
 ※ 사용하지 않으면 기본 홈 디렉토리는 /home/username
-e date
--expiredate date
계정의 만료일 설정(YYYY-MM-DD)
※ 기본값은 /etc/default/useradd 파일에서 EXPIRE 변수의 값(보통 무기한)

 

 

 

 

 

 - 사용 예
  > useradd 설정 기본 내용 보여주기   

useradd -D 
리눅스.초보.서버설치.GNOME데스크탑.최적화추가.사용자관리-useradd


  > useradd 명령어로 사용자 3개 생성하고, 생성된 사용자들 확인

    # useradd -u 1100 tuser1
    # useradd -u 1101 tuser2
    # useradd -u 1102 tuser3

    # cat /etc/passwd | grep ^tuser
     tuser1:x:1100:1100::/home/tuser1:/bin/bash
     tuser2:x:1101:1101::/home/tuser2:/bin/bash
     tuser3:x:1102:1102::/home/tuser3:/bin/bash
리눅스.초보.서버설치.GNOME데스크탑.최적화추가.사용자관리-useradd
리눅스.초보.사용자관리 useradd

   

    위 그림에서 알수 있듯이
    g 옵션을 주지 않고 생성하니 그룹 ID 부분에 '사용자 ID'가 '소유그룹이름'으로 들어가 있다. 
    그리고 쉘이 기본적으로 bash 쉘이 설정되어 있다. 
    홈 디렉터리도 d 옵션을 주지 않아서 /home/ 디렉터리에 사용자명으로 생성되어있다.



  > useradd 명령어로 홈디렉토리 생성되지 않게 사용자 생성하고, 홈디렉토리 내역 확인

    # ls /home
     centos  tuser1  tuser2  tuser3
    # useradd -M tuser4
    # useradd -r tuser5
    # ls /home
     centos  tuser1  tuser2  tuser3

    # cat /etc/passwd | grep ^tuser
     tuser1:x:1100:1100::/home/tuser1:/bin/bash
     tuser2:x:1101:1101::/home/tuser2:/bin/bash
     tuser3:x:1102:1102::/home/tuser3:/bin/bash
     tuser4:x:1103:1103::/home/tuser4:/bin/bash
     tuser5:x:992:989::/home/tuser5:/bin/bash
리눅스.초보.서버설치.GNOME데스크탑.최적화추가.사용자관리-useradd
리눅스.초보.사용자관리 useradd

 

    새로 생성한 사용자의 UID 확인 한 결과, 
    tuser5 은 -r 옵션을 주었기 때문에 UID가 999번 이하의 UID로 자동 할당되었음을 알수 있다. 


  > 기타 사용 예)

  # useradd newuser : newuser라는 이름을 가진 사용자를 추가한다. 
    아무것도 명시하지 않을 시 디폴트로 그룹명은 사용자명,
    사용자 ID와 group ID는 현재 등록된 가장 끝 번호 + 1이다. 패스워드는 없다.
  # useradd -u 1111 newuser : 사용자 ID가 1111인 newuser를 등록한다.
  # useradd -g root newuser : newuser를 등록하고 그룹은 root로 한다.
  # useradd -d /myhome newuser : 홈 디렉토리가 /myhome인 newuser를 등록한다.  
  # useradd -s /bin/csh newuser : 기본 셸이 /bin/csh인 newuser를 등록한다.

 

 

 

 

[2. userdel]

  • 사용자 계정 삭제하는 관리자 명령어이다. 
  • root 권한이 있는 사용자만 사용할 수 있음
  • root 권한자가 root 이외의 사용자를 삭제할 때 사용하는 명령어

 

 사용자 계정 삭제 시 고려 사항
 1. 홈 디렉터리도 삭제할 것인지(userdel -r 사용자계정이름)
 2. 계정을 삭제하지 않고 잠금 할 것인지(usermod -L 사용자계정이름)
 3. 삭제될 계정이 소유하는 파일이 또 있는지
  - 삭제 전에 find / -user username -ls로 확인 → 루트 디렉토리부터 해당 계정이 소유자인 파일 확인
  - 삭제 후에는 find / -uid UID -ls 또는 find / -nouser -ls로 확인

 

 - 사용 방법
userdel [options] 사용자계정이름

 - 많이 사용되는 주요 옵션

옵션 설명
userdel [옵션] [사용자명] 해당하는 사용자 계정을 삭제
-r
--remove
계정에 귀속된 홈 디렉터리와 mailbox 등을 모두 삭제
보통의 상황이라면, 계정 삭제 시 반드시 사용
userdel -r 계정
 -f
 --force
삭제중에 나타나는 에러를 무시하고 강제로 삭제 진행
로그인 중이거나 다른 사용자가 사용 중이어도 삭제, 같은 이름의 그룹도 삭제


 - 참고형식

 # usedel -r tuser1 ; userdel을 사용해 사용자 삭제
 # ls /home
     centos  tuser2  tuser3
 # cat /etc/passwd | grep ^tuser
     tuser2:x:1101:1101::/home/tuser2:/bin/bash
     tuser3:x:1102:1102::/home/tuser3:/bin/bash

리눅스.초보.서버설치.GNOME데스크탑.최적화추가.사용자관리-useradd
리눅스.초보.사용자관리 userdel

 -r 옵션을 사용해서 홈 디렉터리도 같이 삭제된 것을 확인할 수 있다. 
    passwd 파일에도 tuser1은 찾을 수 없음이다. 



+ 다음 도움이 될 만한 내용을 소개드려요. 

   

 

[인공지능][OpenAI][챗봇][모르면 구글? 이젠 ChatGPT]

[모르면 구글 검색? 아니 이젠 ‘ChatGPT’로 물어봐] 혁신이 실종된 시대, 혁신으로 ‘뼈 때리는’ 서비스가 등장했다. ‘챗지피티’(ChatGPT)얘기다. GPT는 인공지능 챗봇이다. 챗봇은 우리에게도

modu4you.com