fstab 默认值未按预期工作

fstab 默认值未按预期工作

我想挂载一个分区,/media/files以便每个用户都可以在其中读取、写入和执行。我首先尝试:

UUID=6c95b3f6-90a5-4092-b30f-7a41210595f4   /media/files    ext4          defaults       0       2

但这并没有解决问题。

我现在已经尝试过:

UUID=6c95b3f6-90a5-4092-b30f-7a41210595f4   /media/files    ext4          exec,rw,user       0       2

也没有成功。我该怎么办?顺便说一句,我希望 Steam 在其中创建一个库文件夹。


更新

我现在也已将chmod文件夹添加/media/filesa+rwx允许 Steam 创建文件夹的位置/media/files/SteamLibrary。但是,它抱怨该分区没有执行权限。

iamuser@desktop:/media$ ls -l
drwxrwxrwx  4 root root 4096 May 21 19:32 files


iamuser@desktop:/media/files$ ls -l
drwx------ 2 root    root    16384 Mai 21 18:58 lost+found
drwxrwxrwx 3 iamuser iamuser  4096 Mai 21 19:39 SteamLibrary

仍然使用前面提到的 fstab 选项exec,rw,user

答案1

好的……我现在明白了。我用 chmod 做的很好,之前我在 fstab 中做的是问题所在。现在 fstab 中的默认值解决了这个问题。

因此,提醒所有正在挣扎的人:

chmod a+rwx /media/files

就可以了!

如果有人想补充有关严格许可的内容,我很高兴听到。

答案2

mount 选项user会重置其他一些选项。man 8 mount

用户   允许普通用户挂载文件系统。
       安装用户被写入 mtab,以便他可以卸载
       文件系统。此选项意味着选项  禁止执行诺苏伊德和 nodev(除非被后续选项覆盖,如
       在选项行中用户、执行、设备、suid)。

用户  允许每个用户挂载和卸载文件系统。这
       选项意味着选项禁止执行诺苏伊德, 和  节点  (除非
       被后续选项覆盖,如选项行中
       用户,exec,dev,suid)。

因此,您需要指定exec user

UUID=6c95b3f6-90a5-4092-b30f-7a41210595f4   /media/files    ext4          rw,user,exec       0       2

如果您希望每个用户都能够读取、写入和执行,那么这不是 ext4 挂载选项的工作,而是权限的工作,因为您已经使用 应用了它们chmod

附注:您可能最好将chown分配/media/files给您的用户,而不是分配给所有人rwx,或者使用usermount 选项,并且rwx只为您自己设置:

sudo chown iamuser:iamuser /media/files
sudo chmod a=rX,u+w /media/files

这应该让 Steam(以您的用户身份运行)在磁盘中创建文件。

相关内容