我最近遇到了這個問題。我通常透過 smb 從 Linux 機器瀏覽本機網路共用資料夾(即使用 smb: 從檔案總管)。現在,每當我嘗試存取捷徑或再次輸入憑證時,我都會不斷收到詢問使用者、網域和密碼的對話方塊視窗。
所以我嘗試使用 cisf-utils 手動安裝位置:
sudo mount -t cifs //fileshare1/docs1/user/My\ Documents/shared/Francesco/ /home/frank/used_shared/ -o username=my_user,password=my_pass,domain=my_domain,gid=1000,uid=1000
我明白了mount error(13): Permission denied
。
我確信我的用戶擁有該資料夾的權限,因為我可以從 Windows 電腦存取它。
另外,如果我嘗試透過以下方式將我的個人資料夾安裝在該位置:
sudo mount -t cifs //fileshare1/docs5/francesco.azzarello/ /home/frank/mnt_folder -o username=my_user,password=my_pass,domain=my_domain,gid=1000,uid=1000
我可以毫無問題地訪問它。
作為參考,我使用的是 4.2.0-36-generic 內核,我的 mount.cifs 版本是 6.4
關於如何使這兩種方法之一發揮作用有什麼想法嗎?
更新關於 ponsfrilus 答案
數字 1:詳細選項回傳:
_mount.cifs kernel mount options: ip=xxx.xxx.xxx.xxx,unc=\\fileshare1\docs1,uid=1000,gid=1000,user=my_user,,domain=my_domain,prefixpath=user/My Documents/shared/Francesco/,pass=********
mount error(13): Permission denied
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)_
2號基本上是一樣的事情:
_ mount.cifs kernel mount options: ip=xxx.xxx.xxx.xxx,unc=\\fileshare1\docs1,iocharset=utf8,file_mode=0777,dir_mode=0777,user=my_user,,domain=my_domain,prefixpath=user/My Documents/shared/Francesco/,pass=********
mount error(13): Permission denied
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)_
vers=2.1 沒有改變:
_mount.cifs kernel mount options: ip=xxx.xxx.xxx.xxx,unc=\\fileshare1\docs1,vers=2.1,iocharset=utf8,file_mode=0777,dir_mode=0777,user=my_user,,domain=my_domain,prefixpath=user/My Documents/shared/Francesco/,pass=********
mount error(13): Permission denied
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)_
至於第四個,我可以掛載 docs1 沒有問題,但我可以導航到使用者中的共用資料夾。
答案1
我很確定我今天在 Ubuntu 16.10 上遇到了完全相同的問題,我多次嘗試了該線程中的所有建議,我可以使用 Windows Server 2016 安裝完全相同的共享,並且可以使用 smbclient ( smbclient -U brainstrust //WINBOX01/shared
) 瀏覽它。我什至嘗試了外部憑證文件。
我最終偶然發現了一個修復程序 - 儘管我為 Windows 機器上的共享創建了一個本地用戶,但它也加入了一個網域。基本上將網域設置為本地計算機-o domain=WINBOX01
立即解決了我的問題,因此在這裡留下評論,希望它對那裡的人有用。
我使用的完整的最小命令是:
sudo mount.cifs -v //WINBOX01/shared /home/geoff/winbox01 --verbose -o user=brainstrust,password=topsecret,domain=WINBOX01
答案2
我認為您的伺服器安全類型錯誤,錯誤 13 意味著伺服器不允許您進入。
您需要在 mount 指令中選擇正確的安全模式,透過 -o 新增 sec 選項,如下所示[參考]:
sec=
Security mode. Allowed values are:
· none - attempt to connection as a null user (no name)
· krb5 - Use Kerberos version 5 authentication
· krb5i - Use Kerberos authentication and forcibly enable packet
signing
· ntlm - Use NTLM password hashing
· ntlmi - Use NTLM password hashing and force packet signing
· ntlmv2 - Use NTLMv2 password hashing
· ntlmv2i - Use NTLMv2 password hashing and force packet signing
· ntlmssp - Use NTLMv2 password hashing encapsulated in Raw NTLMSSP message
· ntlmsspi - Use NTLMv2 password hashing encapsulated in Raw NTLMSSP message, and force packet signing
答案3
嘗試新增“-v”選項以獲得詳細輸出:
sudo mount -v -t cifs //fileshare1/docs1/user/My\ Documents/shared/Francesco/ /home/frank/mnt_folder -o \ username=my_user,password=my_pass,domain=my_domain,gid=1000,uid=1000
使用 mount 指令的這些選項進行測試
iocharset=utf8,rw,file_mode=0777,dir_mode=0777:
sudo mount -v -t cifs //fileshare1/docs1/user/My\ Documents/shared/Francesco/ /home/frank/mnt_folder -o username=my_user,password=my_pass,domain=my_domain,\ iocharset=utf8,rw,file_mode=0777,dir_mode=0777
測試指定 SMB 版本選項 (vers=2.1),請參閱桑巴維基。從 mount.cifs 手冊頁:
vers=
SMB 協定版本。允許的值為:1.0 - 經典的 CIFS/SMBv1 協定。這是預設值。
2.0 - SMBv2.002 協定。這最初是在 Windows Vista Service Pack 1 和 Windows Server 2008 中引入的。
2.1 - Microsoft Windows 7 和 Windows Server 2008R2 中引入的 SMBv2.1 協定。
3.0 - Microsoft Windows 8 和 Windows Server 2012 中引入的 SMBv3.0 協定。
最後,嘗試僅掛載第一個共享:
sudo mount -v -t cifs //fileshare1/docs1/ /home/frank/mnt_folder \ -o username=my_user,password=my_pass,domain=my_domain,\ iocharset=utf8,rw,file_mode=0777,dir_mode=0777
您可以分享的任何詳細輸出可能會有所幫助。
答案4
將選項新增sec=ntlm
至 mount 命令解決了我的問題。
例如:
sudo mount -t cifs -o username=administrator,password=123456,sec=ntlm //ip/eeshare /mnt/eeshare/