问题描述
我有很多FAT32驱动器,我想将它们安装在Ubuntu中,以便它们对目录具有权限模式700,对所有其他文件具有权限模式。默认情况下,它们对所有文件都有755,这不是特别有用,因为几乎没有非目录应可执行,并且它破坏了驱动器上托管的版本控制存储库。
“回到过去”,我本来可以在/etc /fstab中列出带有我想要的umask /dmask的驱动器,并且没有默认值。这些天来,驱动器在其卷名下自动挂载。很棒,除了现在我不知道如何设置默认值。
我尝试更改/system /storage /default_options /vfat /mount_options gconf密钥,但显然没有效果。最初是077,但是安装的驱动器反映的默认值是022;更改驱动器和re-inserting导致文件仍然具有755的许可位。
最佳办法
更新不幸的是,没有内置的手段可以做到这一点。 “right way” the supported way正在使用所需的默认安装选项设置/etc /fstab行。这意味着您必须将默认值设置为per-device,尽管您可以使用分区标签或UUID来避免需要特定的设备路径。特别是,此方法似乎发生在PolicyKit桌面授权之前。
在Ubuntu论坛Launchpad和Gnome’s bugzilla上,来自用户的许多帖子都在NTFS和FAT32上寻找与您正在寻找的相同功能。 Ubuntu 9.10和10.04通过DeviceKit-Disks,GVFS和Nautilus的组合提供默认的自动挂载。
DeviceKit-disks提供了一个FilesystemMount接口,其options参数似乎是配置装入选项的正确方法。但是GVFS /Nautilus似乎没有通过UI或配置文件提供任何方法来在自动挂载USB密钥时指定此选项。
有两种解决方法:
-
This Launchpad bug包含一个user-provided patch,该user-provided patch更改了custom-built devicekit-disks软件包中的DeviceKit-Disks默认值。从好的方面来说,这可能是为所有设备设置首选默认值的最简单方法。缺点是更新软件包时,您需要再次重新修补。
-
Ubuntu论坛上的一篇帖子提出了device-specific workaround script:
#!/bin/bash devkit-disks --unmount /dev/disk/by-uuid/0D3594370C618A2A devkit-disks --mount-options "dmask=000" --mount /dev/disk/by-uuid/0D3594370C618A2A
这也是sub-optimal,因为您必须使用特定设备对此进行更新。但是,它确实避免了受支持的fstab解决方案可能具有的授权问题。