강좌
클라우드/리눅스에 관한 강좌입니다.
리눅스 분류

시스템 사용자 삭제하기 실무

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

시스템 사용자 삭제하기 실무

 

 

 

이번 강좌에서는 사용자를 삭제하는 방법에 대해서 배울 것이다.

 

 

 

 사용자를 삭제하는 것은 userdel이라는 명령어를 이용한다.

 

 

 

 , userdel은 시스템사용자를 삭제하는 명령어이다.

 

 

 

  이미 존재하고 있는 계정정보들을 삭제한다.

 

 

 

  계정을 삭제하게 되면 계정명만 삭제되는 것이 아니라 그 계정이 시스템 내에서 사용하고 있는 정보들(데이터, 설정정보 등)이 모두 삭제 된다.

 

 

 

 userdel의 영문메뉴얼을 보면 “delete a user account and related files”로 되어 있는 것을 확인할 수 있다.

 

 

 

 

 

, 사용자를 삭제한다는 것은 단순히 사용자의 ID자체만을 삭제하는 것이 아니라 그 사용자가 사용하던 파일들과 사용자소유의 파일들을 삭제한다는 의미이다.

 

 

 

 구체적으로는 삭제되는 계정사용자의 /etc/passwd내의 계정내용, /etc/shadow내의 패스워드 내용, /etc/group파일내의 그룹정보내용이 삭제된다.

 

 

 

 

 

사용자를 삭제할 때에 무엇보다 중요한 것은 -r옵션을 사용하여 계정을 삭제하면 /var/spool/mail/디렉토리에 있는 메일파일과 그 계정의 홈디렉토리 내용들이 모두 삭제된다는 점이다.

 

 

 

 그리고 -f옵션은 삭제대상 사용자를 시스템에서 강제로 삭제하게 된다.

 

 

 

 

 

좀전에 말했듯이 지금 배우고 있는 userdel에 있어서 가장 중요한 것은 -r옵션을 사용하는 것과 사용하지 않는 것의 차이점을 아는 것이다.

 

 

 

 이 차이점을 간단히 정리하면 다음과 같다.

 

 

 

 

 

-r옵션을 사용하지 않고 삭제할 때에는

   . /etc/passwd
파일 내의 계정정보행이 삭제된다.

 

 

 


   . /etc/shadow
파일 내의 패스워드정보행이 삭제된다.

 

 

 


   . /etc/group
파일 내의 그룹정보행이 삭제된다.

 

 

 

 



-r옵션을 사용하여 삭제했을 때에는

   . /etc/passwd
파일 내의 계정정보행이 삭제된다.

 

 

 


   . /etc/shadow
파일 내의 패스워드정보행이 삭제된다.

 

 

 


   . /etc/group
파일 내의 그룹정보행이 삭제된다.

 

 

 


   . /var/spool/mail
내의 메일파일이 삭제된다.

 

 

 


   .
홈디렉토리의 내용이 모두 삭제된다.

 

 

 

 

 

위와 같이 -r옵션을 사용했을 때와 사용하지 않았을 때의 차이점을 분명히 알고 있어야 한다.

 

 

 

 

 

먼저, userdel의 간단한 예부터 보도록 하겠다.

 

 

 

  아래의 예는 sspark1이라는 계정을 삭제한 예이다.

 

 

 

 

 

[root@sulinux  root]# userdel sspark1
[root@sulinux  root]#

 

 

 

위의 결과 특별한 결과메시지는 출력되지 않았지만 시스템 내부에서는 sspark1이라는 계정에 대한 /etc/passwd, /etc/shadow, /etc/group파일 내에 sspark1계정 관련 정보들이 모두 삭제 되었다.

 

 

 

 이 부분에 대해서 이해하기 바란다.

 

 

 

 

 

하지만 아래와 같이 sspark1의 홈디렉토리와 메일파일은 삭제되지 않고 그대로 존재하고 있음을 알 수 있다.

 

 

 

 

 

[root@sulinux  root]# ls -al /home/sspark1
합계 32
drwx------    3 600      600          4096  9
19 11:46 .
drwxr-xr-x    9 root     root         4096  9
19 11:52 ..
-rw-r--r--    1 600      600            24  9
19 11:46 .bash_logout
-rw-r--r--    1 600      600           191  9
19 11:46 .bash_profile
-rw-r--r--    1 600      600           124  9
19 11:46 .bashrc
-rw-r--r--    1 600      600           854  9
19 11:46 .emacs
-rw-r--r--    1 600      600           120  9
19 11:46 .gtkrc
drwxr-xr-x    3 600      600          4096  9
19 11:46 .kde
[root@sulinux  root]#
[root@sulinux  root]# ls -l /var/spool/mail/sspark1
-rw-rw----    1 600      600             0  9
19 11:46 /var/spool/mail/sspark1
[root@sulinux  root]#

 

 

 

이 경우에는 홈디렉토리와 메일파일을 확인하고 관리자가 직접 찾아서 삭제해야 한다.

 

 

 

 

 

앞의 예에서 보았듯이 userdel로 특정 계정을 삭제할때에 아무런 옵션을 사용하지 않으면 그 계정의 홈디렉토리와 메일파일은 삭제되지 않는다.

 

 

 

 물론 그 외의 정보들은 삭제가 된다.

 

 

 

  만약 -r옵션을 사용한다면 삭제되는 계정의 홈디렉토리와 메일파일까지 모두 삭제된다.

 

 

 

 

 

이번에는 -r옵션을 사용하여 bible3이라는 계정을 삭제하였다.

 

 

 

  설명드린 바와 같이 /etc/passwd, /etc/shadow, /etc/group내의 bible3에 관한 설정행들과 /var/spool/mail에 있는 메일파일, 그리고 bible3의 홈디렉토리내용이 모두 삭제되었다.

 

 

 

 

 

[root@sulinux  root]# userdel -r bible3
[root@sulinux  root]#

 

 

 

아래는 bible3의 홈디렉토리가 삭제되었으므로 당연히 확인되지 않음을 보여주고 있다.

 

 

 

 

 

[root@sulinux  root]# ls -al /home/bible3
ls: /home/bible3:
그런 파일이나 디렉토리가 없음
[root@sulinux  root]#



 

앞의 예에서 우리는 -r옵션의 의미와 실제 예를 보았다.

 

 

 

 

 

이번에는 userdel에서 사용하는 -r옵션보다 더 강력하게 특정사용자를 삭제할 수 있는 -f옵션도 알아두자. , 계정을 삭제하는 userdel 명령어 사용시에 -f옵션은 지정된 계정을 강제(force)하는 목적으로 사용된다.

 

 

 

 만약 삭제대상 사용자가 현재 로그인 중이라 하더라도 삭제된다.

 

 

 

 또한 사용자의 홈디렉토리와 메일파일도 함께 삭제된다.

 

 

 

 만약 다른 사용자가 삭제대상 사용자와 동일한 홈디렉토리를 사용하고 있다 하더라도 삭제되며, 삭제 대상 사용자의 소유가 아닌 메일파일 또한 삭제된다.

 

 

 

 

 

참고로 /etc/login.defs파일에 “USERGROUPS_ENAB”설정 값이 yes로 설정되어있고 삭제 대상 사용자의 그룹이 존재한다면 그 그룹도 함께 삭제될 것이다.

 

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,076 명
  • 현재 강좌수 :  36,001 개
  • 현재 접속자 :  467 명