Filesystems
你如何讓 samba 遵循共享路徑之外的符號連結
這是 Ubuntu 伺服器 10.04 64 和 samba 3.4.7。
我有一個共享目錄
/home/mit/share
和另一個/home/temp
連結到共享目錄的目錄:ln -s /home/temp /home/mit/share/temp
但是在windows上,使用網際網路後,我無法打開
S:/temp
,但在Linux上可以/home/mit/share/temp
像預期的那樣訪問。如果我在內部連結目錄,則此方法有效
/home/mit/share/temp
,因此我猜 samba 限制使用共享目錄外部/上方的連結跳轉。編輯:
另請參閱標題為Ubuntu + latest samba version, symlinks no longer work on share mounted in Windows 的問題。
最好將其
unix extensions = no
放入全域部分,follow symlinks = yes
並且wide links = yes
僅放入您真正需要的共享部分。標誌必須位於
unix extension
全域部分而不是單個共享部分。但出於安全原因,最好僅在需要時使用其他選項,而不是全域使用。
編輯 smb.conf
[global] unix extensions = no [share] follow symlinks = yes wide links = yes
注意:如果您使用的是較新版本的 samba,則以下內容可能對您有用:
[global] allow insecure wide links = yes [share] follow symlinks = yes wide links = yes
關於
follow symlinks
和wide links
標誌的文件:https ://www.samba.org/samba/docs/using_samba/ch08.html#samba2-CHP-8-TABLE-1
作為其他答案的替代方案,要保持啟用 unix 擴展,可以使用:
[global] allow insecure wide links = yes [share] follow symlinks = yes wide links = yes