我正在尝试将 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。访问被拒绝。”
一旦我使用 OK 按钮接受错误消息,共享上的驱动程序文件就会被删除。
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