5

У меня есть старый рабочий стол, который я пытаюсь настроить как домашний сервер резервного копирования / печати. Резервное копирование было тривиальным, но у меня проблемы с печатью. Принтер подключен к серверу, на котором работает Ubuntu Server 9.10 (без графического интерфейса). Если я получу доступ к принтеру через http:// hostname: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

При печати из 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

1

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

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

0

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

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

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

0

В настоящее время я не использую 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

Удачи!

0

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

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .