我有一个 samba 文件夹,我尝试通过 smbclient 访问它,我可以很好地浏览它。但是,通过smbmount挂载,共享下的所有文件夹都是空的。我可以直接在共享下列出文件夹,但它们都显示为空。
smb客户端:
# smbclient //server/share -U username -W workgroup password
smbmount
# sudo smbmount //server/share mntpoint -o user=username,workgroup=workgroup,password=password
我也尝试过使用 domain=workgroup 而不是 workgroup,两者都给出了相同的结果。没有错误消息,一切正常,但是 mntpoint 下的所有文件夹都是空的,尽管使用 smbclient 时相同的文件夹是非空的。
这些是否使用不同的库?如何调试错误?
此外,如果我尝试挂载 //server/share/folder,执行 ls 会导致分段错误。使用 dmesg 我发现:
kernel BUG at /build/buildd/linux-2.6.28/fs/cifs/cifs_dfs_ref.c:315!
完整跟踪: http: //pastebin.com/m70adc213
使用凭证文件,我首先得到空目录,然后资源暂时不可用。在我的 dmesg 中,我看到以下输出:
CIFS VFS: compose_mount_options: Failed to resolve server part of \\srv\share to IP: -11
尝试改用凭证文件;详情见
smbmount(8)
。尝试运行此命令:
mount -t smbfs -o username=username,password=password //server/shared_dir /mnt/
虽然 smbclient 和 mount.{cifs,smbfs} 之间的区别似乎确实表明这是一个客户端问题(好吧,它可能仍然是),但对我来说解决类似问题的方法是将我的 smbd 更新到最新发布的包我的发行版。