如何连接到 Windows 2016 Server 上的 DFS 共享?

Alk*_*zer 0 server mount samba networking

我的公司将我们的数据托管在 Windows Server 2016 上。我正在运行 Xubuntu(版本 15.04),无法使用该命令连接到我们的共享mount

这是我尝试失败的命令示例(我想挂载以下示例中的文件夹Folder4Test_mnt

sudo mount -v -t cifs //domain.adress.org/dfs/Folder1/Folder2/Folder3/Folder4 /home/alkalyzer/Test_mnt -o username=domain/myusername,domain=domain.adress.org,rw
Run Code Online (Sandbox Code Playgroud)

这样做时(在提示符下提供密码后),我收到以下错误消息:

mount error(13): Permission denied
Run Code Online (Sandbox Code Playgroud)

这是写在/var/log/syslog

Status code returned 0xc000006d NT_STATUS_LOGON_FAILURE
CIFS VFS: Send error in SessSetup = -13
CIFS VFS: cifs_mount failed w/return code = -13
Run Code Online (Sandbox Code Playgroud)

我采用了不同的方法来尝试使其发挥作用:

  1. 更改workgroupworkgroup = DOMAIN/etc/samba/smb.conf
  2. 加入wins support = yes/etc/samba/smb.conf
  3. client min protocol = SMB2和添加client max protocol = SMB3/etc/samba/smb.conf
  4. 将这两行添加到/etc/request-key.conf

    create cifs.spnego  *   *       /usr/sbin/cifs.upcall -t %k
    create  dns_resolver    *   *       /usr/sbin/cifs.upcall %k
    
    Run Code Online (Sandbox Code Playgroud)

我可以使用文件浏览器(Thunar 或 Nautilus)连接到此共享,但无法浏览其中包含的/run/user/1000/gvfs与远程文件夹相对应的文件夹(ls表示该文件夹的所有权限和所有权均由问号填充)。

smbclient我还可以使用以下命令连接到此共享:

smbclient //domain.adress.org/dfs/ -Udomain/myusername -Whdomain.adress.org -D Folder1/Folder2/Folder3/Folder4
Run Code Online (Sandbox Code Playgroud)

如何使用mount命令挂载这些远程文件夹?

小智 5

我在这篇博文中找到了解决方案

安装keyutils软件包。

sudo apt-get install keyutils
Run Code Online (Sandbox Code Playgroud)

现在我可以在没有服务器名的情况下挂载 dfs 共享:

sudo mount -t cifs //mydfsdomain/namespaceroot/sharedfolder /mnt/sharedfolder -o credentials=/etc/cred.file
Run Code Online (Sandbox Code Playgroud)