我有某些文件和文件夹,我想为某些用户锁定它们的读取、写入和执行权限。我可以使用chmod XXX <filepath>
锁定文件权限,但用户当然可以删除该文件,尽管他无法访问它。有没有办法阻止他这样做?另外,这对文件夹也有效吗?
答案1
root
这可以通过将它们的所有权更改为:来实现:
chown root:root /path/to/file
然后,您可以使用以下方式控制各个权限chmod
:
chmod a+r,og-w /path/to/file
+
/之前的字母-
是将受影响的用户:
拥有该文件的用户 (
u
)、
该文件的组中的其他用户 (g
)、
不在该文件的组中的其他用户 (o
)
或所有用户 (a
)。如果以上任何一项均未给出,则效果如同已
a
给出,
+
/后面的字母-
是将被授予/删除的权限:
r Read
w Write
x Execute (for files); or list folder contents (for dirs)
关于删除的说明
用户删除文件的权限取决于文件所在文件夹,而不是文件本身的写权限。
您需要chown
以 root 身份访问chmod o-w
该文件的文件夹以防止删除。
关于文件夹删除的说明
为了防止文件夹被删除,文件夹的父级必须防止写入 ( o-w
)。或者,文件夹可以具有粘滞位 ( +t
)。
答案2
我不知道为什么
chmod 700
不会阻止其他人删除该目录
1.最好的选择是使用别名
rm
与rmdir
sudo rm
这样sudo rmdir
每次使用rm
ubuntu 时都会要求输入管理员密码。
要使此别名永久生效,请将此别名条目添加到~/.bash_aliases
2.还有一个选择是
创建两个用户帐户
一个作为管理员
其他作为一般用户
不要添加此一般用户sudoers组,所以他将无法删除除他的主目录之外的任何内容。
让别人用这个普通用户,你用管理员用户