Windows

無法從 Linux 上的 Windows 10 機器掛載多個共享

  • December 18, 2019

我有一台執行 Windows 10 Pro 的機器(winten),可以導出兩個共享(X 和 Y)。我可以在我的 Arch Linux 機器上掛載這些共享中的任何一個,但不能同時掛載兩者。兩個共享的 /etc/fstab 中的配置完全相同,只是共享名稱不同:

//winten/x /mnt/winten/x cifs nofail,noserverino,vers=3.11,credentials=/etc/samba/private/winten-Net,uid=65534,gid=65534,file_mode=0444,iocharset=utf8,ro 0 0
//winten/y /mnt/winten/y cifs nofail,noserverino,vers=3.11,credentials=/etc/samba/private/winten-Net,uid=65534,gid=65534,file_mode=0444,iocharset=utf8,ro 0 0

憑據文件包含 Windows 機器上本地使用者的名稱和密碼。

這是嘗試掛載共享的範例:

# mount /mnt/winten/x
# mount /mnt/winten/y
mount error(22): Invalid argument
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs) and kernel log messages (dmesg)
# umount /mnt/winten/x
# mount /mnt/winten/y
# mount /mnt/winten/x
mount error(22): Invalid argument
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs) and kernel log messages (dmesg)

如您所見,無論我先安裝哪個都可以,而第二個則失敗。

這是 dmesg 的相關輸出:

[597888.074965] CIFS: Attempting to mount //winten/x
[597890.126132] CIFS: Attempting to mount //winten/y
[597890.129018] CIFS VFS: cifs_read_super: get root inode failed
[597899.512091] CIFS: Attempting to mount //winten/y
[597902.941119] CIFS: Attempting to mount //winten/x
[597902.942777] CIFS VFS: cifs_read_super: get root inode failed

我需要做什麼才能同時安裝兩個共享?

我發現了這個問題,但它正朝著另一個方向發展(在 Windows 機器上安裝 Samba 共享),結果問題是每個共享使用不同的憑據(但我使用的是相同的憑據)。

不幸的是,我沒有解決方案,但我確實有一個可能適合您目的的解決方法:

這似乎只發生在 SMB 版本 3.0 及更高版本中,因此如果您使用vers=2.1而不是使用vers=3.11該版本,則應該允許同時安裝多個共享。

引用自:https://unix.stackexchange.com/questions/556236