Samba 共享文件夾名稱在 linux 機器上顯示不正確
我有一個執行 OMV 5 的 NAS 伺服器,用於儲存個人數據(文件、照片、影片等)。我使用 Samba 共享來自 NAS 的數據,並且在用於訪問共享數據的客戶端上執行 Fedora 33。
我遇到的問題是
aux
NAS 上命名的文件夾AHY9U3~9
在 Fedora 客戶端上出現,請參見下面的範例 左側 tmux 面板中的工作目錄在客戶端上,而在右側面板中,工作目錄在 NAS 上。我覺得奇怪的是,我可以使用奇怪的名稱或文件夾在 NAS 上的正確名稱來訪問客戶端上的文件夾。當我嘗試使用客戶端上執行的軟體在客戶端和 NAS 之間同步數據時,我偶然發現了這個“錯誤”。我有一堆名為 aux 的文件夾分散在整個文件夾層次結構中,當問題實際上是它們的名稱如何映射到客戶端時,同步軟體為它們標記了一個差異。
我不知道是什麼導致了這個問題,最重要的是,如何解決它。我還想知道是否還有其他文件夾名稱被錯誤地映射到客戶端。
請查看以下客戶端和伺服器的軟體版本資訊 伺服器 samba 版本: Samba 版本 4.9.5-Debian 客戶端 samba 版本: 版本 4.13.12 客戶端資訊:
- 核心版本 - 5.14.13-100.fc33.x86_64
- 肉桂版 - 4.8.6
aux
我找到了一些相關的文章,見下文,但是,根據 samba 規則,我認為這是一個有效的文件名,不是嗎?編輯:以下是 smb.conf 中的全域部分和相應的共享部分,
[global] workgroup = WORKGROUP server string = %h server dns proxy = no log level = 0 log file = /var/log/samba/log.%m max log size = 1000 logging = syslog panic action = /usr/share/samba/panic-action %d encrypt passwords = true passdb backend = tdbsam obey pam restrictions = no unix password sync = no passwd program = /usr/bin/passwd %u passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* . pam password change = yes socket options = TCP_NODELAY IPTOS_LOWDELAY guest account = nobody load printers = no disable spoolss = yes printing = bsd printcap name = /dev/null unix extensions = yes wide links = no create mask = 0777 directory mask = 0777 use sendfile = yes aio read size = 16384 aio write size = 16384 time server = no wins support = no multicast dns register = no # Special configuration for Apple's Time Machine fruit:aapl = yes
[test] path = hidden-path/test/ guest ok = no guest only = no read only = no browseable = yes inherit acls = yes inherit permissions = no ea support = no store dos attributes = no vfs objects = printable = no create mask = 0664 force create mode = 0664 directory mask = 0775 force directory mode = 0775 hide special files = yes follow symlinks = yes hide dot files = yes valid users = invalid users = read list = write list =
EDIT2:我沒想到
aux
是保留字,但是是的,請參閱https://docs.microsoft.com/en-us/windows/win32/fileio/naming-a-file。感謝@Ricky 指出。現在,我只需要更改文件夾的名稱。
aux
是 DOS/Windows 中的保留字。嘗試通過任何“正常”方式訪問文件都會失敗:T:\>dir \\.\t:\aux 10/31/2021 08:50 AM 0 aux 1 File(s) 0 bytes T:\>dir t:\aux File Not Found
我的 samba (3.0.10) 版本已經很老了,所以它根本不會和名字混淆。(短名和長名是“aux”)