홈 폴더가 삭제되는 것을 방지하는 것은 매우 좋은 생각이라고 생각합니다. 그래서 나는 이것을 할 수 있는 가능한 방법을 찾았습니다. 이것이 내가 찾은 것입니다:
- 사용
chattr +i /home/user
- 루트로도 추가/제거/이름 바꾸기가 불가능합니다.사용자폴더 및 모든 직접 하위 폴더사용자- 좋은것과 나쁜 것. 사용자 디렉터리의 소유자를 루트로 변경하고 고정 비트를 설정합니다. .keep 파일을 추가하고 소유자도 루트로 변경합니다.
chown root:user /home/user chmod 1775 /home/user chown root /home/user/.keep
루트 삭제 가능/홈/사용자, 사용자는 할 수 없습니다. 그러나 사용자는 자신의 디렉터리에 있는 파일을 자유롭게 추가/제거/이름 바꿀 수 있습니다.
- 사용
chattr +a /home/user
- 첫 번째 방법과 동일하지만 사용자가 파일을 추가할 수 있습니다.
나는 chattr +a
홈 디렉토리에서: chattr +a /home
이 가장 좋은 방법이라고 생각합니다.
- 다른 사용자를 위해 새 홈 폴더를 쉽게 만들 수 있습니다.
- 파일을 자유롭게 편집할 수 있습니다/홈/사용자
- 우리는 조심할 수 없습니다
sudo rm -rf /home/user
실제로 질문은 이 접근 방식의 함정은 무엇입니까?
답변1
필요한 디렉토리를 삭제하려면쓰다상위 항목에 대한 권한입니다. 이는 다음을 의미합니다.사용자을(를) 쓸 수 없으므로 /home
자신의 디렉토리를 삭제할 수 없습니다.
$ chown root:root /home
$ chmod 0755 /home
$ chown user:user /home/user
$ chmod 0750 /home/user
이러한 권한을 사용하면 루트만 작업할 수 있습니다 . 이 설정은 Linux 시스템이 다중 사용자이기 때문에 실제로 매우 일반적입니다. 그러나 첫 번째 사용자(일반적으로 ID 1000)에 속하는 Ubuntu 설정을 /home
보았습니다 . /home
Ubuntu의 첫 번째 사용자는 일반적으로 sudoer이지만(sudoer를 사용하여 모든 것을 삭제할 수 있음을 의미함) sudo
루트가 아닌 다른 사용자에게 이를 제공하는 것은 좋은 습관이 아니라고 생각합니다./home
결론적으로 말하자면 chattr
, 나는 이것이 약간 과잉이라고 생각합니다. 권한 문제가 발생했습니다. 추가 파일 속성이 필요하지 않습니다.