我有一台运行 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
我找到了一些相关的帖子,见下文,但是,根据 samba 规则,我认为这aux
是一个有效的文件名,不是吗?
编辑:下面是 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 指出这一点。现在,我只需要更改文件夹的名称。
答案1
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”)