Windows может видеть принтер Ubuntu Server, но не может печатать на него

6651
Michael Moussa

У меня есть старый рабочий стол, который я пытаюсь настроить как домашний сервер резервного копирования / печати. Резервное копирование было тривиальным, но у меня проблемы с печатью. Принтер подключен к серверу, на котором работает Ubuntu Server 9.10 (без графического интерфейса). Если я получаю доступ к принтеру через http: // имя_хоста: 631 / printers /, я могу распечатать тестовую страницу, поэтому я знаю, что принтер работает; однако мне не повезло с Windows.

Windows может увидеть принтер при просмотре через \ hostname \, но я не могу подключиться. Windows говорит: «Windows не может подключиться к принтеру» без указания причины.

Какие-либо предложения?

Из /etc/samba/smb.conf :

[global] workgroup = WORKGROUP dns proxy = no security = user username map = /etc/samba/smbusers 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 = yes printing = cups printcap name = cups  [printers] comment = All Printers browseable = no path = /var/spool/samba writable = no printable = yes guest ok = yes read only = yes create mask = 0700  [print$] comment = Printer Drivers path = /var/lib/samba/printers browseable = yes read only = yes guest ok = yes 

Из /etc/cups/cupsd.conf :

LogLevel warn SystemGroup lpadmin Port 631 Listen /var/run/cups/cups.sock Browsing On BrowseOrder allow,deny BrowseAllow all BrowseRemoteProtocols CUPS BrowseAddress @LOCAL BrowseLocalProtocols CUPS dnssd DefaultAuthType Basic <Location /> Order allow,deny Allow all </Location> <Location /admin> Order allow,deny Allow all </Location> <Location /admin/conf> AuthType Default Require user @SYSTEM Order allow,deny Allow all </Location> <Policy default> <Limit Send-Document Send-URI Hold-Job Release-Job Restart-Job Purge-Jobs Set-Job-Attributes Create-Job-Subscription Renew-Subscription Cancel-Subscription Get-Notifications Reprocess-Job Cancel-Current-Job Suspend-Current-Job Resume-Job CUPS-Move-Job CUPS-Get-Document> Require user @OWNER @SYSTEM Order deny,allow </Limit> <Limit CUPS-Add-Modify-Printer CUPS-Delete-Printer CUPS-Add-Modify-Class CUPS-Delete-Class CUPS-Set-Default CUPS-Get-Devices> AuthType Default Require user @SYSTEM Order deny,allow </Limit> <Limit Pause-Printer Resume-Printer Enable-Printer Disable-Printer Pause-Printer-After-Current-Job Hold-New-Jobs Release-Held-New-Jobs Deactivate-Printer Activate-Printer Restart-Printer Shutdown-Printer Startup-Printer Promote-Job Schedule-Job-After CUPS-Accept-Jobs CUPS-Reject-Jobs> AuthType Default Require user @SYSTEM Order deny,allow </Limit> <Limit CUPS-Authenticate-Job> Require user @OWNER @SYSTEM Order deny,allow </Limit> <Limit All> Order deny,allow </Limit> </Policy> <Policy authenticated> <Limit Create-Job Print-Job Print-URI> AuthType Default Order deny,allow </Limit> <Limit Send-Document Send-URI Hold-Job Release-Job Restart-Job Purge-Jobs Set-Job-Attributes Create-Job-Subscription Renew-Subscription Cancel-Subscription Get-Notifications Reprocess-Job Cancel-Current-Job Suspend-Current-Job Resume-Job CUPS-Move-Job CUPS-Get-Document> AuthType Default Require user @OWNER @SYSTEM Order deny,allow </Limit> <Limit CUPS-Add-Modify-Printer CUPS-Delete-Printer CUPS-Add-Modify-Class CUPS-Delete-Class CUPS-Set-Default> AuthType Default Require user @SYSTEM Order deny,allow </Limit> <Limit Pause-Printer Resume-Printer Enable-Printer Disable-Printer Pause-Printer-After-Current-Job Hold-New-Jobs Release-Held-New-Jobs Deactivate-Printer Activate-Printer Restart-Printer Shutdown-Printer Startup-Printer Promote-Job Schedule-Job-After CUPS-Accept-Jobs CUPS-Reject-Jobs> AuthType Default Require user @SYSTEM Order deny,allow </Limit> <Limit Cancel-Job CUPS-Authenticate-Job> AuthType Default Require user @OWNER @SYSTEM Order deny,allow </Limit> <Limit All> Order deny,allow </Limit> </Policy> 
5

5 ответов на вопрос

2
Aleksander Adamowski

При печати из Windows на сервер CUPS я нашел более надежным использование IPP (Internet Printing Protocol), а не SMB.

В Windows при добавлении нового принтера выберите «Сетевой принтер», а затем «Подключиться к принтеру через Интернет или интранет».

Когда он запрашивает URL-адрес принтера, введите http: // hostname: 631 / printers / printername (удалите пробелы из этого URL-адреса, я добавил их из-за ограничения количества гиперссылок на Superuser.com для новых пользователей).

Затем действуйте как обычно.

См. Также этот трехкомпонентный документ по настройке сервера CUPS, драйверов принтера и клиента Windows:

http://www.howtoforge.com/ipp_based_print_server_cups

Дело в том, что Windows работает очень медленно, когда дело доходит до IPP. LiraNuna 14 лет назад 0
1
lorenzog

Вам необходимо добавить гостевого пользователя в базу паролей Samba. Обычно это делается путем сопоставления guestв файлах конфигурации samba существующего пользователя UNIX; предоставить этому пользователю права на печать через группы; тогда вы сможете получить доступ к принтеру через \\server\URI.

Вы также можете попробовать подключиться к серверу, указав имя пользователя (то есть администратора) при добавлении сетевого диска.

ужасно жаль воскрешать старый пост, но у меня есть именно эта проблема, и я не могу понять, что означает ваш ответ. Я был бы рад, если бы вы могли объяснить в моем новом сообщении http://superuser.com/questions/1081542/how-to-allow-guest-access-in-samba Blaine 8 лет назад 0
@Blaine Вау, это было давно :) Похоже, что (единственный) ответ на ваш вопрос правильный: вам нужно добавить нового пользователя. Я прокомментирую там. lorenzog 8 лет назад 1
0
Dan McGrath

Вы обновились до 9.10 (Кармический)?

В этой теме люди упоминают, что после перехода с Jaunty на Karmic им пришлось повторить инструкции сервера печати, прежде чем XP снова сможет подключить принтер.

Может быть, это поможет вам?

Я не обновился до 9.10. Это была свежая установка 9.10. Инструкции 9.04 не очень помогают, потому что они предполагают, что я использую Ubuntu Desktop, а я нет. Я использую Ubuntu Server, поэтому нет графического интерфейса Michael Moussa 14 лет назад 0
0
mzuther

В настоящее время я не использую Samba, но у меня все еще есть несколько предложений:

  • включите ведение журнала, добавив log file = /var/log/samba.logв /etc/samba/smb.conf - это может дать вам подсказки о том, что идет не так (вы также можете установить log level = 10, что даст вам гораздо больше вывода)

  • writable = noи read only = yesдействительно одинаковы, поэтому вы должны удалить один из них - в противном случае, изменение только одного из них может не иметь никакого эффекта

  • попробуйте изменить create maskего по умолчанию0744

  • наконец, если все это не сработало, посмотрите документацию: http: // localhost: 631 / (сам не знал, что это «онлайн» ...) иman smb.conf

Удачи!

У меня есть система Ubuntu, чей smb.conf по умолчанию использует `create mask = 0700` в определении общего доступа к принтерам, так что я бы предположил, что настройка нормальна. quack quixote 14 лет назад 0
0
NT3RP

Если принтер работает в Linux, возможно, Linux - красная сельдь?

Я прочитал статью о Microsoft TechNet от кого-то, у кого такая же проблема, как у вас. Предположим, что в этом случае Samba и Linux представляют собой красную сельдь, возможно, стоит попробовать предлагаемое решение.