在 OS X 上设置文件系统挂载 umask

在 OS X 上设置文件系统挂载 umask

(使用 Snow Leopard。)当我插入使用 FAT32 格式化的闪存驱动器时,驱动器上所有文件的权限都设置为 0666;在有色人种ls和我的强迫症之间,这很烦人。有没有办法让它自动以不同的 umask 挂载?

答案1

修改 /System/Library 下的文件可能会导致问题;请自行承担风险;请先备份,等等。无论如何:这个网站被称为超级用户是有原因的。继续:

有一个文件:/System/Library/Filesystems/msdos.fs/Contents/Info.plist

该文件中有一个部分控制系统上的 FAT32 行为。在我的计算机(Tiger,但您的计算机应该类似)中,该部分位于文件底部,如下所示:

<key>MS-DOS FAT32</key>
<dict>
        <key>FSFormatArguments</key>
        <string>-F 32</string>
        <key>FSFormatContentMask</key>
        <string>DOS_FAT_32</string>
         ...

...等等等等。对于您的目的而言,本节中最重要的部分是:

        <key>FSMountArguments</key>
        <string></string>
        <key>FSMountExecutable</key>
        <string>../../../../../../sbin/mount_msdos</string>

如果您查看 mount_msdos 的手册页,您将看到有一个用于设置掩码的“-m”参数。您可以通过更改相应的行来设置挂载参数:

        <key>FSMountArguments</key>
        <string>-m 644</string>

或者任何你喜欢的掩码。如果你愿意,你也可以在其中使用其他选项(如“-o rdonly”)。请注意,这当然适用于该文件系统类型的任何挂载。所以请明智选择。

如果你真的有强迫症,就不要花太多时间查看 plist 文件...里面有很多东西会分散你的注意力。;)

相关内容