如何使用 unix 扩展挂载 cifs

Joe*_*ham 5 mount samba cifs

我正在尝试挂载 cifs 共享并启用 unix 扩展,但默认情况下挂载传递的是“nounix”,我不知道如何更改默认行为。我已经检查过'man mount.cifs',并且没有选项可以执行'nounix' 的逆操作。

这是我的挂载命令:

$ sudo mount -t cifs //192.168.1.135/fooshare -o username=foouser,password=foopass,uid=baruser,gid=baruser ~/fooshare
Run Code Online (Sandbox Code Playgroud)

然后,当我检查挂载操作中实际使用的所有选项时,会出现“nounix”:

$ mount | grep fooshare
//192.168.1.135/fooshare on /home/baruser/foodshare type cifs (rw,relatime,vers=default,cache=strict,username=foouser,domain=,uid=1000,forceuid,gid=1000,forcegid,addr=192.168.1.135,file_mode=0755,dir_mode=0755,nounix,serverino,mapposix,rsize=1048576,wsize=1048576,echo_interval=60,actimeo=1)
Run Code Online (Sandbox Code Playgroud)

小智 5

当我添加,vers=1.0到挂载选项时,我将挂载选项从 更改nounixunix。您可以使用mount -l(unix不是可以设置为隐式的选项) 进行检查。

$ sudo mount -t cifs //192.168.1.135/fooshare ~/fooshare -o username=foouser,password=foopass,uid=baruser,gid=baruser,vers=1.0
Run Code Online (Sandbox Code Playgroud)

提供额外信息:

$ sudo bash -c "echo 3 > /proc/fs/cifs/cifsFYI"
Run Code Online (Sandbox Code Playgroud)

在设置选项之前,请确保正确卸载指定的挂载。查看状态(当前 cif 挂载的数量):

$ cat /proc/fs/cifs/DebugData
Run Code Online (Sandbox Code Playgroud)

  • 添加 `vers=1.0` 也对我有用。原来 Samba 的 UNIX 扩展只与 SMB 1.0 兼容。 (2认同)