공부합시다!/LInux

CenTOS7 : User Account Management-2 (사용자관리)

간서치 2022. 1. 10. 10:49
728x90

LInux에서 계정을 생성하면 고유한 UID, GID를 할당 받습니다.

통상적으로 일반사용자는 1000번부터 시작을 합니다.

/etc/login.defs에 정의되어 있지요.

 

헌데 바로 이 UID를 이해하지 못하면 사용자 계정 삭제시 발생하는 문제를 정확히 알지 못하게 됩니다.

오늘은 바로 이 UID의 비밀을 좀 풀어볼까 합니다.

 

 

1. 계정 생성

 1.1. user a와 b를 생성합니다.

 1.2. a의 uid 1000, b의 uid 1001을 확인합니다.

 1.3. /home 디렉토리의 사용자 a,b 홈디렉토리 생성확인, 소유주및 그룹 유심히

 1.4. /var/spool/mail 디렉토리의 사용자 a,b 사서함 확인, 소유주및 그룹 유심히

계정 생성

 

 

2. 사용자 계정 삭제 

 2.1. # userdel a

 반드시 이때 -r 옵션을 사용하지 않습니다.

 2.2. /etc/passwd 파일의 계정 삭제 확인

 2.3. /home과 /var/spool/mail 디렉토리의 계정 흔적 확인

계정 삭제

 

 

3. 삭제한 a 계정을 다시 생성

 3.1. 다시 생성 후 /etc/passwd에서 uid를 확인 합니다. 

 3.2. 기존 1000 -> 1002로 변경됨을 확인합니다.

 3.3. 그러나 /home과 /var/spool/mail에는 기존 계정의 파일이 존재하기에 복사하지 않습니다.

 3.4. 바로 이 부분 때문에 차후 소유권 문제가 발생합니다.

계정 재 생성

 

 

4. a계정 정상 삭제

 4.1. # userdel -r a  로 정상삭제를 시도합니다.

 4.2. 허나 이전 파일은 uid 1000으로 인식하기에 현재 사용자 a의 uid 1002와 상이하기 때문에 소유권 문제 발생

 4.3. # rm -rf /home/a  /var/spool/mail/a  수동으로 삭제합니다.

 4.4. 계정 삭제 시에는 반드시 -r 옵션을 사용합니다.

소유권 문제

특별한 상황이 아니라면 계정 삭제 시에는 반드시 -r 옵션을 사용해서 연관된 하위 디렉토리나 파일까지 삭제하시기 

바랍니다. 단 삭제전 백업은 필수입니다.

운영에는 실패해도 백업에는 실패하지 마라! 아주 오래된 격언입니다.

지금은 운영도 실패하면 안됩니다. ㅎㅎ

 

Have a nice day!

728x90