所以基本上,我遇到的问题和此主题。我可以看到 samba 打印共享,但无法从 Windows 访问它。顶部答案看起来很有希望,指出我必须执行以下操作:
您需要将 guest 用户添加到 samba 密码数据库。通常,这是通过将 samba 配置文件中的 guest 映射到 UNIX 现有用户来完成的;通过组授予该用户的打印权限;然后您应该能够通过 \server\ URI 访问打印机。
有人能向我解释一下这是怎么做的吗?我在 Google 上搜索过,但没有太大帮助。
谢谢!
更新
这是我的 /etc/samba.conf 文件的打印机部分。如果您需要其余部分,请告诉我,我会将其放在 Google 文档或类似的东西中
[打印机]
注释 = 所有打印机
; 可浏览 = 是
路径 = /var/spool/samba
可打印 = 是
访客确认 = 是
; 只读 = 否
访客帐户 = blain
创建掩码 = 0700
答案1
为了在 Samba 中设置访客访问权限,您需要设置一个用户,它将假装以该用户身份登录。因此,假设您想公开共享 /mnt/somepartition/files 上的文件。您的配置可能如下所示:
[public_files]
comment = Public files
path = /mnt/somepartition/files
browsable = yes
guest ok = yes
writable = yes
guest account = someusername
create mask = 0775
directory mask = 0755
这句话的意思是“在 \mymachine\public_files 上创建一个 samba 共享,匿名用户可以查看(不像用户文件那样隐藏),并启用它的写访问权限。匿名用户可以通过使用 someusername 的凭据访问此共享。创建文件时,使它们全局可执行,但全局限制写访问权限。创建目录时,使它们全局可执行,但只能由 someusername 写入。”
完成此操作后,您需要根据您的问题创建一个 smbpassword。为此,首先确保该用户存在于您的服务器中。如果用户不存在,请创建它:
sudo adduser someusername
一旦用户存在,就创建 samba 登录:
sudo smbpasswd -a someusername
需要记住以下几点:public_files 指向的目录需要对 someusername 具有 READ 权限。请确保正确设置权限。如果目录归您所有但仍想让它们可用,请将 someusername 添加到公共组,然后更改组所有权。
答案2
我如何让它在运行 dietpi 的 Pi 上运行。它适用于 Windows (10)、Mac (Catalina) 和 Linux 客户端,并且具有读写权限。注意:我在启动时将 USBHDD 自动安装到 /media/USBHDD。
smb.conf的内容:
[global]
workgroup = WORKGROUP
server string = %h server
dns proxy = no
log file = /var/log/samba/log.%m
max log size = 1000
syslog only = no
syslog = 0
panic action = /usr/share/samba/panic-action %d
security = user
encrypt passwords = true
passdb backend = tdbsam
obey pam restrictions = yes
unix password sync = yes
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
map to guest = bad user
load printers = no
printcap name = /dev/null
disable spoolss = yes
[dietpi]
comment = DietPi Share
path = /mnt/dietpi_userdata
browseable = yes
create mask = 0664
directory mask = 0775
valid users = dietpi
writeable = yes
[PiNAS]
path = /media/USBHDD
browseable = yes
read only = no
guest ok = yes
writeable = yes
create mask = 0775
directory mask = 0755
max connections = 8