use*_*973 31 permissions mount
我尝试使用此命令手动挂载:
sudo mount -t vfat /dev/sdb1 /media/external -o uid=1000,gid=1000,utf8,dmask=027,fmask=137
Run Code Online (Sandbox Code Playgroud)
我没有得到什么dmask,fmask在这里做什么。我知道它们用于设置权限,但是当我检查挂载目录中的文件和文件夹的权限时,它们与我使用fmask和设置的不同dmask。
那么,他们实际上在做什么呢?
MrV*_*dji 56
fmask和dmask是FAT 文件系统的mount选项,基于.fstab
它们用于定义权限(umask将它们设置为文件和目录,而fmask仅适用于文件和dmask目录)。
掩码不是文件的权限,它们用于获取您想要的权限。此外,掩码不能添加任何权限,它们仅限制文件或目录可以具有的权限。
该umask是对文件和文件夹的默认值,如果你想定制文件和文件夹的权限,你应该使用fmask与dmask相同用途的umask。
掩码权限与传递给chmod命令的八进制权限代码不同,但是此表非常有助于理解掩码权限的工作原理:
0 1 2 3 4 5 6 7
r + + + + - - - -
w + + - - + + - -
x + - + - + - + -
Run Code Online (Sandbox Code Playgroud)
它作为正常的八进制权限工作,但从 7 中减去,并使用绝对值。例如,如果您想将权限设置为0777,则需要将其设置0000在umask(例如umask=0000)中,如果您想将其设置为0755,则将其设置为0022:
(来源)
man mount 给出了这个:
umask=value
Set the umask (the bitmask of the permissions that are not
present). The default is the umask of the current process. The
value is given in octal.
dmask=value
Set the umask applied to directories only. The default is the
umask of the current process. The value is given in octal.
fmask=value
Set the umask applied to regular files only. The default is the
umask of the current process. The value is given in octal.
Run Code Online (Sandbox Code Playgroud)
您还可以找到例子,从Drenriza技术的解释ubuntu论坛,当然还有维基百科有很大帮助,像往常一样。
| 归档时间: |
|
| 查看次数: |
77227 次 |
| 最近记录: |