gas*_*ter 12 permissions files
我试过“chattr +i DIRNAME”,它很棒,但是在chattr之后我无法在DIR中创建文件。还有什么可以防止用户删除目录?
root@HOST ~] mkdir test
[root@HOST ~] chattr +i test
[root@HOST ~] cd test
[root@HOST ~/test] touch sth
touch: cannot touch `sth': Permission denied
[root@HOST ~/test] cd ..
[root@HOST ~] chattr -i test
[root@HOST ~] cd test
[root@HOST ~/test] touch sth
[root@HOST ~/test]
Run Code Online (Sandbox Code Playgroud)
更新:只有目录删除很重要,所以我仍然需要删除里面的文件
小智 14
创建一个文件“.protected”并以root身份执行
chattr +i .protected
Run Code Online (Sandbox Code Playgroud)
然后您可以删除除此.protected目录之外的所有文件,因此任何其他用户都无法删除该目录。
那么简单的 chown/chmod 有什么问题呢?:
cd /tmp
mkdir question
sudo chown root:root question
[sudo] password for user:
chmod 777 ./question
touch sth
rm sth
cd ..
rm question -rf
rm: cannot remove `question': Operation not permitted
Run Code Online (Sandbox Code Playgroud)
好吧,让我告诉你这有什么问题:question由于777权限的原因,每个用户都可以访问目录中的每个文件。最好是
groupadd questionmkdir questionchown root:question ./questionchmod 770 ./questionusermod -G group user这里的重要技巧是该目录的所有者与尝试删除该目录的任何用户不同。