![NAS 与 SMB/CIFS 的问题;如何“查看”客户端-服务器消息传递?](https://linux22.com/image/208001/NAS%20%E4%B8%8E%20SMB%2FCIFS%20%E7%9A%84%E9%97%AE%E9%A2%98%EF%BC%9B%E5%A6%82%E4%BD%95%E2%80%9C%E6%9F%A5%E7%9C%8B%E2%80%9D%E5%AE%A2%E6%88%B7%E7%AB%AF-%E6%9C%8D%E5%8A%A1%E5%99%A8%E6%B6%88%E6%81%AF%E4%BC%A0%E9%80%92%EF%BC%9F.png)
我有一台新的 Synology NAS (DS1621+),并已开始集成到我的家庭网络中。我在 Linux 主机上使用它时遇到一些问题。我可以挂载 NAS,但权限(从 Linux 中看到)不是我想要的。我的印象是所有权和权限可以“映射”从 NAS 到我的 Linux 客户端,但我不清楚这是如何完成的。我的 Linux 主机都是基于 Debian 的设备,Synology NAS 通过 SMB 提供文件服务。在 Linux 上,我使用cifs-utils 套件( mount -t cifs ...
) 挂载股份。
我联系了 Synology,并惊讶地发现:
1:Synology 不向“命令行”用户提供技术支持。
2:Synology 声称他们的 SMB 实施是专有的,并且不提供有关接口的任何(有用)文档。
我怀疑Synology 的实施不是那远离主流,但经过一些尝试和错误,我仍然有“权限问题”。此外,该mount.cifs
手册有很多选项,其目的和效果对我来说很模糊。
是否有任何可用的 Linux 工具可以帮助识别mount.cifs
从 Linux 客户端的角度来看各种选项和参数如何影响权限?我想消除尽可能多的试错法尽可能。
我对使用 SMB 而不是 NFS 很感兴趣,因为我听到的 NFS 负面消息比 SMB 多。
我已在 Synology 端创建用户并将其添加到那里的 SMB 配置中。
编辑:2022-07-12;更多阅读、发现
这变量似乎正在发挥作用的是:
- Linux 实现的状态《Unix 扩展》SMB,以及我的客户端计算机上的版本
- 服务器(Synology)实施 SMB/Samba 的状态
- 服务器(Synology)实施“Unix Extensions”的状态
为了提高这个问题的质量,我尝试在我的问题的背景下定义这些变量:
- 重新介绍一下 Linux 实现“Unix 扩展”的状态:
$ mount.cifs --version
mount.cifs version: 6.11
# NOTE1: Unix Extensions are enabled by default per man mount.cifs
# NOTE2: see also 'modinfo cifs'
- SMB/Samba 的 Re 服务器 (Synology) 版本:
$ ssh admin@SynologyNAS-1
/$ samba --version
Version 4.10.18
/$ uname -srm
Linux 4.4.180+ x86_64
Re 服务器(Synology)版本的“Unix Extensions”
我不知道如何做到这一点,所以我尝试
smbclient
:
$ smbclient \\\\SynologyNAS\\rpi_share -U=pi
Enter WORKGROUP\pi's password:
Try "help" to get a list of possible commands.
smb: \> help
? allinfo altname archive backup
blocksize cancel case_sensitive cd chmod
chown close del deltree dir
du echo exit get getfacl
geteas hardlink help history iosize
lcd link lock lowercase ls
l mask md mget mkdir
more mput newer notify open
posix posix_encrypt posix_open posix_mkdir posix_rmdir
posix_unlink posix_whoami print prompt put
pwd q queue quit readlink
rd recurse reget rename reput
rm rmdir showacls setea setmode
scopy stat symlink tar tarmode
timeout translate unlock volume vuid
wdel logon listconnect showconnect tcon
tdis tid utimes logoff ..
!
smb: \> ? posix
HELP posix:
turn on all POSIX capabilities
smb: \> posix
Server doesn't support UNIX CIFS extensions.
smb: \> ? chmod
HELP chmod:
<src> <mode> chmod a file using UNIX permission
smb: \> chmod test-touch-4B.txt 666
Server doesn't support UNIX CIFS calls.
...
2022年7月12日;结论和修改的问题?
上述结果与smbclient
建议对于 SMB/CIFS,我的客户端软件是加快速度,但我闪亮的新 Synology NAS 还很远落后于曲线。
我原来的问题现在变成了:“这些结果准确吗?当供应商拒绝任何有关产品的信息时,是否有更结论性或更准确的方法来确定产品的状态?”
对于有类似疑问的人,我只能提供:
就我而言:我
mount
使用 Synology 用户pi
凭据。这样做会使我的 Linux 用户pi
无法写入已装载的共享 - 尽管 Synology 用户pi
已在 Synology DSM 中获得了 R&W 权限。我发现在命令中添加uid=pi
和选项,至少可以让 Linux 用户写入 Synology 服务器上的 SMB 共享。gid=pi
mount -t cifs
pi
为什么这个作品我将不得不留给其他人来回答。
进一步阅读:
- SMB UNIX 扩展 Wiki
- CIFS VFS - 通用 Internet 文件系统的协议扩展,以实现更好的 POSIX 文件 I/O 语义
- 搜索:SMB/CIFS/Samba 的“Unix 扩展”是什么?。
- Samba 版本 4.3 或更高版本支持 SMB 3.1.1
- Linux cifs 邮件列表
mount.cifs
并且mount.smb3
是几乎相同; refman mount.cifs
- 这也是mount.smb3
.- SMB3-Linux 维基
- SMB POSIX 扩展与 SMB Unix 扩展相同吗?...显然不是
- CIFS 协议扩展更新,fm 2006(正在
YEARS
制作中) - CIFS 协议扩展和 Linux CIFS 客户端 fm 概览。 2008年。
- SMB3 POSIX 扩展第 2 阶段...下一步是什么? (调频,2020)
- 上面#10的视频
- Linux 内核用户和管理员指南 » CIFS(注:Steve French 的更多废话)
- 什么是 SMB 协议以及为什么它是一个安全问题?
- 服务器消息块 - 维基百科