我正在尝试将 samba 与 CUPS 一起使用来共享网络中 Windows 计算机的打印机及其驱动程序。每次我尝试通过 printmanagement.msc 从 Windows 10 计算机上传打印机驱动程序时,都会收到“访问被拒绝”错误,但在服务器端我可以看到文件已创建!
到目前为止,我已经在 Ubuntu 18.04 LTS 工作站上安装了 samba,使用相应的密码创建了 samba 用户“root”并编辑了 smb.conf
[print$]
path = /srv/samba/printer_drivers/
read only = no
guest ok = yes
browseable = yes
wirteable = yes
directory mask = 0775
create mask = 0775
write list = @lpadmin, root
admin users = @lpadmin, root
force user = root
共享目录 /srv/samba/printer_drivers/ 具有以下权限:
root$ ls -la /srv/samba/printer_drivers/
total 36
drwxrwsr-x 9 root root 4096 Nov 7 14:30 ./
drwxr-xr-x 3 root root 4096 Nov 5 10:24 ../
drwxrwsr-x 2 root root 4096 Nov 7 14:30 IA64/
drwxrwsr-x 2 root root 4096 Nov 7 14:30 W32ALPHA/
drwxrwsr-x 2 root root 4096 Nov 7 14:30 W32MIPS/
drwxrwsr-x 2 root root 4096 Nov 7 14:30 W32PPC/
drwxrwsr-x 2 root root 4096 Nov 7 14:30 W32X86/
drwxrwsr-x 2 root root 4096 Nov 7 14:30 WIN40/
drwxrwsr-x 4 root root 4096 Nov 8 10:41 x64/
子目录是由 Windows AddDriver 向导自动创建的
我通过以下方式连接 Windows 主机上的共享
net use x: \\hostname\print$ /user:root
然后我输入被接受的密码
the command completed successfully
然后我可以导航到 Windows 资源管理器中的共享并毫无问题地创建、修改和删除文件。当我打开 printmanagement.msc 时,单击我的 samba 服务器(我将其添加为打印服务器)并选择“添加驱动程序”,我可以从列表中选择一个驱动程序,然后单击“完成”。然后我可以看到一个资源管理器文件传输窗口,显示文件正在被复制,Linux 计算机上共享目录的 ls 显示文件在那里,但 Windows 计算机随后抛出错误:
“无法安装 HP LaserJet (...) 驱动程序,类型 4 - 用户模式 x64。访问被拒绝。”
一旦我通过“确定”按钮接受错误消息,共享上的驱动程序文件就会被删除。
smbstatus 的输出(我概括的前 3 个 IP 地址部分):
root$ smbstatus
Samba version 4.7.6-Ubuntu
PID Username Group Machine Protocol Version Encryption Signing
----------------------------------------------------------------------------------------------------------------------------------------
13162 root root *.*.*.119 (ipv4:*.*.*.119:49176) SMB3_11 - partial(AES-128-CMAC)
Service pid Machine Connected at Encryption Signing
---------------------------------------------------------------------------------------------
print$ 13162 *.*.*.119 Thu Nov 8 12:45:30 PM 2018 CET - -
IPC$ 13162 *.*.*.119 Thu Nov 8 12:45:37 PM 2018 CET - -
Locked files:
Pid Uid DenyMode Access R/W Oplock SharePath Name Time
--------------------------------------------------------------------------------------------------
13162 0 DENY_NONE 0x80 RDONLY NONE /srv/samba/printer_drivers . Thu Nov 8 12:45:31 2018
答案1
你拼写错误wirteable = yes
,应该是writeable = yes
,也许可以修复它。但这是一个疯狂的猜测,我只是随机偶然发现的。
此外,testparm /etc/samba/smb.conf
每当您需要检查smb.conf
文件中是否存在不一致之处时,它都是您的朋友。
答案2
我也遇到了同样的问题,结果是其中一位司机。使用另一个版本它可以工作。虽然我一直无法从windows的打印管理中进入打印机首选项来设置默认的打印类型和双面