我的网络上有三台计算机。1 台 Windows 10 机器、1 台 Mac OS 机器和 1 台 Ubuntu 机器。
Windows 机器:可以看到 Mac、访问 Mac、读取和写入 Mac。可以看到 Ubuntu 机器,但尝试使用凭据访问失败。
Mac 机器:可以看到 Windows 机器、访问 Windows、读取和写入 Windows。可以看到 Ubuntu 机器,但无法使用凭据访问。
Linux 机器:可以在浏览器中看到 Mac 机器,但系统无限次要求我输入用户名和密码,但没有任何进展。可以看到名为 Windows 网络的网络文件夹,但看不到该文件夹中的机器。我可以成功 ping 通其他两台计算机。我可以使用以下方法安装每台计算机:
安装 -t cifs'\192.168.0.XX\XXXX'/home/XXXX/XXXX/XXXX -o 用户名=XXXX,密码=XXXX
然而,一旦我安装了这些驱动器,我就无法写入数据。
我的 smbtree 看起来像这样:
工作组
\XXX-LINUX Linux 服务器
\XXX-WINDOWS Windows
\XXX-MAC Mac
\AIRPORT-TIME-XX AirPort 时间胶囊
\机场时间-XX\IPC$
我的 testparm-s 看起来像这样:
从 /etc/samba/smb.conf 加载 smb 配置文件
rlimit_max:将 rlimit_max(1024)增加到 Windows 最低限制(16384)
处理部分“[打印机]”
处理部分“[print$]”
处理部分“[公共目录]”
处理部分“[私人目录]”
已加载服务文件。
警告:您的某些共享名称长度超过 12 个字符。
一些较旧的客户端可能无法访问这些。(例如,Windows9x、WindowsMe 和 Samba 3.0 之前的 smbclient。)
服务器角色:ROLE_STANDALONE
全局参数
[全球的]
server string = %h server
security = USER
log file = /var/log/samba/log.%m
max log size = 1000
name resolve order = wins lmhosts hosts bcast
printcap name = cups
dns proxy = No
client ipc signing = No
idmap config * : backend = tdb
hosts allow = 192.168.0.
hosts deny = ALL
[打印机]
path = /var/spool/samba
printable = Yes
browseable = No
[打印$]
path = /var/lib/samba/printers
[公共目录]
path = /Public/Files
read only = No
guest ok = Yes
[私人目录]
path = /private/files/
valid users = me
browseable = No
我相信我的 samba 是最新的,并且在另外两台计算机上配置正确(它们也通过 samba 相互交互)。
我的 /etc/hosts 如下所示:
127.0.1.1 XXX-linux
127.0.0.1 本地主机
192.168.0.XX XXX-桌面
192.168.0.XX XXX-mac
对于支持 IPv6 的主机,以下几行是理想的
::1 ip6-本地主机 ip6-环回
fe00::0 ip6-本地网络
ff00::0 ip6-mcast前缀
ff02::1 ip6-所有节点
ff02::2 ip6-所有路由器
我真的只是希望这台计算机能够使用与其他两台计算机相同的登录名,对其他两台计算机拥有相同的读/写访问权限。请帮忙。
答案1
[1] 请务必发布您正在使用的 Ubuntu 版本。例如,Ubuntu 18.04 上的 Samba(客户端和服务器)与 Ubuntu 16.04 的工作方式不同。
[2] 您的 smb.conf 配置不正确,原因有很多。最明显的是您的私人共享不可浏览:browseable = No
。
[3] 如果你可以通过手动挂载来访问共享,那么在挂载时你需要控制该挂载点,这样你才有访问权限,而不仅仅是 root 权限:
对于 Windows 共享:
mount -t cifs //192.168.0.XX/XXXX /home/XXXX/XXXX/XXXX -o username=XXXX,password=XXXX,uid=1000
对于 MacOS 共享:
mount -t cifs //192.168.0.XX/XXXX /home/XXXX/XXXX/XXXX -o username=XXXX,password=XXXX,uid=1000,nounix
将 1000 更改为您自己的 uid 号码,可以通过运行以下命令找到:
id
[4] 您的私人分享列表valid users = me
没有“我”这样的用户。将其更改为您的真实用户名 - 假设是 robert。然后将该用户添加到 samba 密码数据库:
sudo smbpasswd -a robert
[5] /usr/share/samba/smb.conf 中有一个出厂默认 smb.conf 的副本,以便您可以重新开始。
[6] 如果有什么问题应该在 ubuntu 论坛上提出,那就是这个。AskUbuntu 不适合发布多篇帖子来解决此类 samba 问题。