我有一个装有 EXT4 分区的 Ubuntu 10.04 机器。此分区设置为自动挂载在/etc/fstab
。为了便于理解,我们将其命名为:/media/foo
。
不幸的是,只能root
在 的根文件系统上创建/删除文件/目录foo
。其他用户要在此卷上执行文件/io,root
需要创建目录并chmod
授予其他人权限。
我希望安装该卷,以便任何人都可以读取/写入该卷,而root
无需chmod
。
以下是我的fstab
参赛作品:
/dev/sda8 /media/foo ext4 rw,user,exec 0 0
该条目最初有defaults
而不是rw,user,exec
。我添加了额外的条目,即 ,rw
以便任何用户都可以读/写。
不幸的是,fstab
入口不起作用。它安装得很好,但仍然需要root
干预。
而且,以防有人问起,简单地运行:chmod -R 777 *
on /media/foo
asroot
不起作用。
答案1
mount 选项user
仅允许任何用户挂载文件系统。该rw
选项使文件系统不再是只读的。您必须使用权限才能使父目录可写。
chmod 777 /media/foo
您显示的命令chmod
仅影响现有文件之内 /media/foo
。
答案2
我认为将 fstab 条目更改为以下内容会更简单:
/dev/sda8 /media/foo ext4 rw,user,exec,umask=000 0 0
umask=000
表示任何人都可以读取、写入或执行 foo 中的任何文件或目录。通常的默认值是 022,表示用户无法写入。
答案3
我在 openSUSE 上遇到了同样的问题,但我认为解决方案也适用于此。我想要共享挂载文件系统的所有用户都属于同一主要组:用户
我的 fstab 中有以下行:
/dev/<partition> <mount_point> ext4 rw,acl 0 0
我运行了以下命令:
sudo chgrp -R users <mount_point>
sudo setfacl -d -m g::rwx <mount_point>
这样新创建的文件或目录就会获得这些权限。这意味着您已经安装了 acl 包。
答案4
首先,你要确保 /media/foo 目录本身是可写的。如果还不是,请运行以下命令:
chmod +w /media/foo
请记住,star 仅适用于目录的可见内容,而不适用于目录本身或任何不可见的文件。