在 FreeBSD 中挂载 smbfs 的正确语法是什么?

在 FreeBSD 中挂载 smbfs 的正确语法是什么?

我有两台联网的 FreeBSD 11.1 服务器,都安装了 Samba 4.6.x。 Samba 没有问题,它可以从任何 Windows 客户端很好地浏览,但我似乎找不到使用 CLI 从一台服务器安装到另一台服务器(或者实际上从一台服务器本身)安装 samba 的语法。

两台服务器使用相同的远程用户+密码来访问Samba共享。服务器是独立的,并使用自己的用户/组进行身份验证/权限;没有广告。

作品:

smbclient \\\\servername\\myfiles -U servername\\remoteuser
smbclient '\\servername\myfiles' -U servername\\remoteuser
  (they're equivalent)

不起作用(摘自历史):

mount_smbfs -I serverIP //remoteuser@servername/myfiles ~/mountpoint    
mount_smbfs -I servername //remoteuser@servername/myfiles ~/mountpoint    
smbutil -v login //remoteuser@servername/myfiles    
mount_smbfs -I smbclient \\\\servername\\myfiles -U servername\\remoteuser    
mount_smbfs -U servername\\remoteuser \\\\servername\\Usr_files ~/mountpoint    
mount_smbfs -U servername\\remoteuser //remoteuser@servername/myfiles ~/mountpoint    
mount_smbfs //remoteuser@servername/myfiles ~/mountpoint    
mount_smbfs //\\servername\\remoteuser@servername/myfiles ~/mountpoint    
mount_smbfs //\\\\servername\\remoteuser@servername/myfiles ~/mountpoint    
mount_smbfs //servername/remoteuser@servername/myfiles ~/mountpoint    
mount_smbfs -I serverIP //servername/remoteuser@servername/myfiles ~/mountpoint    
mount_smbfs //[email protected]/myfiles ~/mountpoint    
mount_smbfs //remoteuser@servername/myfiles ~/mountpoint    
mount -t smbfs //remoteuser:remotepassword@servername/myfiles ~/mountpoint    
mount -t smbfs //remoteuser@servername/myfiles ~/mountpoint    
mount -t smbfs \\\\remoteuser@servername\\myfiles ~/mountpoint    
mount -t smbfs remoteuser@servername/myfiles ~/mountpoint    
mount -t smbfs //remoteuser@servername/myfiles ~/mountpoint    
mount -t smbfs //remoteuser@serverIP/myfiles ~/mountpoint    
mount_smbfs -I servername //remoteuser@servername/myfiles ~/mountpoint    
mount_smbfs -I servername -U \\\\servername\\remoteuser //remoteuser@servername/myfiles ~/mountpoint    
mount_smbfs -I servername -U \\\\servername\\remoteuser //servername/myfiles ~/mountpoint    

你明白了:)我已经尝试在远程服务器的 smbd 日志中对它所期望的内容与我所提供的内容进行故障排除,但我似乎仍然找不到所需的命令。

错误消息是“权限被拒绝”,或者在远程日志中,混合了 NT_STATUS_NO_SUCH_USER (“您的用户/系统名称的语法错误”)、NT_STATUS_NOT_FOUND (“您的共享语法或其他内容错误”)和NT_STATUS_ACCESS_DENIED(“您的凭据语法错误”)。正如上面的第一个命令多伊工作,很明显问题是使用不正确的语法/参数之一,而不是实际的权限、任务资源或配置问题。

我对 Samba 的 CLI 语法有什么根本性的误解,正确的命令是什么?

答案1

mount_smbfs 无法与 smbv2 及更高版本正常工作。我发现的唯一解决方案是更改 smb.conf 全局部分中 samba 服务器上的一些设置

    client ntlmv2 auth = no
    ntlm auth = yes

设置上述内容让我使用 mount_smbfs 命令在 FreeBSD 主机上挂载我的 samba 共享并写入共享

mount_smbfs -I 10.0.4.8 -U someuser //someuser@samba4/someshare /sambad01

samba 服务器上的 test_parm 显示以下内容:

root@samba:/ # testparm
Load smb config files from /usr/local/etc/smb4.conf
Loaded services file OK.
Server role: ROLE_STANDALONE

Press enter to see a dump of your service definitions

# Global parameters
[global]
        client NTLMv2 auth = No
        log file = /var/log/samba4/%m
        map to guest = Bad User
        netbios name = SAMBA4
        ntlm auth = ntlmv1-permitted
        idmap config * : backend = tdb

smbstatus(NT1 用于 mount_smbfs,smb3_11 用于我的 Windows 主机):

root@samba:/ # smbstatus

Samba version 4.10.11
PID     Username     Group        Machine                                   Protocol Version  Encryption           Signing
----------------------------------------------------------------------------------------------------------------------------------------
1200    someuser   someuser   d04 (ipv4:10.0.4.4:43318)                 NT1               -                    -
13014   someuser   someuser   10.10.10.14 (ipv4:10.10.10.14:61017)      SMB3_11           -                    partial(AES-128-CMAC)

答案2

... 有效

mount_smbfs -I 10.10.10.10 -U someuser -W someworkgroup //[email protected]/somesharename /mnt/somemountname

相关内容