我正在尝试挂载一个目录(dir3)。但是,在 Windows 计算机上,目录 /server/dir1 已经是文件共享文件夹,但我没有权限。我已获得 //server/dir1/dir2/dir3 的读取权限。下面给出了我正在运行的命令和收到的响应的示例。
~# mount -vt cifs //server/dir1/dir2/dir3 /mount/directory -o credentials=/file/credentials
mount.cifs kernel mount options: ip=10.10.10.10,unc=\\server\dir2,credential=/file/credentials,ver=1,user=user,domain=sbts,prefixpath=dir2/dir3,pass=********
mount error(13): Permission denied
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)
在我的 Mac 上,我可以使用相同的凭据连接到//server/dir1/dir2/dir3
,因此我假设我的“mount -t cifs”命令有问题,而不是我的凭据有问题。
我的猜测是, mount 命令将//server/dir1/dir2/dir3
行拆分为unc=\\server\dir1
and prefixpath=dir2/dir3
,导致事务尝试测试针对\\server\dir1
and not 的权限//server/dir1/dir2/dir3
。
有什么办法可以防止mount -t cifs
命令分裂//server/dir1/dir2/dir3
成unc=\\server\dir1
and吗prefixpath=dir2/dir3
?或者还有其他方法可以解决我的问题吗?
答案1
有同样的问题。我给出的DFS
分为两部分:uns
和prefixpath
。
对我来说“突破”是激活以下诊断cifs
:
$ echo 1 | sudo tee /proc/fs/cifs/cifsFYI
然后,在另一次失败的安装尝试之后,我查看了 dmesg-log 内部
$ dmesg
并看到了安装问题的原因:
fs/cifs/cifs_dfs_ref.c: cifs_compose_mount_options: Failed to resolve server part of <HERE_WAS_UNC_PART_OF_MY_DFS> to IP: -11
“谷歌搜索”错误让我找到了以下两篇文章:
- https://vlkan.com/blog/post/2015/01/08/smb-mount-troubleshoot/
- https://access.redhat.com/solutions/45070
这些文章的简短摘要:
- 安装
keyutils
包 - 将以下行附加到
/etc/request-key.conf
:
create cifs.spnego * * /usr/sbin/cifs.upcall -c %k
create dns_resolver * * /usr/sbin/cifs.upcall %k
利润!