Печать из Windows 7 на принтер в Mac OS (Linux)
Попробуем разобраться, как можно организовать печать из Windows на принтер, установленный на системе с UNIX / Linux / Mac OS X. Стандартная подсистема печати для UNIX называется CUPS (Common UNIX Printing System). Одни из способов организовать сетевую печать на CUPS принтере – открыть к нему общий доступ (расшарить) с помощью Samba. Однако в этой статье мы не будем рассматривать этот способ, т.к. несмотря на то, что этот способ является «родным» для Windows-клиентов, не всегда целесообразно разворачивать и настраивать самбу, если помимо организации сервера печати, другой необходимости в ней нет (скорее всего придется решить целый ряд проблем, в основном, конечно, связанных с авторизацией).
Предпочтительным методом подключения клиента Windows к серверу печати CUPS на UNIX-подобной операционной системе — является протокол IPP (Internet Printing Protocol), используемый в CUPS в качестве основы для управления заданиями и очередями. IPP это стандартный протокол, основанный на HTTP, позволяющий управлять печатью, поддерживает аутентификацию и шифрование (SSL), контроль доступа, а также позволяющий использовать переадресацию портов и туннелированние. По сравнению с Samba конфигурация сервера печати CUPS через IPP является более простой, и менее подвержена ошибкам.
В Windows встроенная поддержка IPP появилась только начиная с версии Windows 2000.
Итак, предположим, у нас имеется компьютер с OS X Lion, на котором развернут сервер CUPS с принтером Canon, сетевой доступ к которому открыт (в данном примере доступ открыт для всех без авторизации по логину/паролю).
Получаем адрес очереди печати на сервере CUPS
Предположим, что адрес нашего компьютера с OS X (и, соответственно, нашего сервера печати) 192.168.11.211, по умолчанию сервера CUPS использует TCP-порт 631. В адресной строке браузера перейдите по адресу , а затем на вкладку Printers. Во вкладке будет отображен список всех установленных в системе OS X и доступных нам принтеров. Имя каждого принтера представляет собой ссылку, адрес которой и является адресом очереди печати принтера в системе CUPS.
Таким образом мы узнаем (и сразу копируем его в буфер обмена), что адрес очереди интересующего нас принтера в системе CUPS это
http:// 192.168.11.211:631/printers/Canon_iP4000_series
Поддержка IPP/CUPS печати в Windows
Для того, чтобы включить поддержку печати IPP в Windows, необходимо установить соответствующую роль. Как правило, в Windows XP/Vista/ Windows 7 поддержка протокола печати через интернет (IPP) уже установлена. Если нет, в Windows 7 установить клиента IPP можно сделать через панель управления. Перейдите в Control Panel ->Programs and Features -> Turn Windows feautures on or off. В появившемся окне разверните ветку Print and Document Services, отметьте опцию Internet Printing Client и нажмите Ок, после чего будет установлен клиент поддержки IPP печати (в Windows 2008/2008 R2 устанавливается отдельная функция с аналогичным именем).
Установка и настройка сетевого CUPS принтера в Windows
Установку и настройку IPP принтера мы будем осуществлять в Windows 7 (процедура в других версиях Windows аналогична, отметим, что в данном случае мы настраиваем именно сетевой принтер, а не локальный как описано в статье Печать из Windows 7 на сетевой принтер XP). Перейдите в панель управления принтерами (Control Panel\Hardware and Sound\Devices and Printers) и создайте новый сетевой принтер (Add a network, wireless or Bluetooth printer). Запустится автоматический поиск принтеров, но скорее всего, нужный принтер найден не будет, поэтому нажмите на кнопку The printer what I wont isn’t listed.
В поле Select a shared printer by name вставьте скопированный ранее адрес очереди печати принтера и нажмите Next.
Windows попытается соединится с принтером, причем не факт что удачно, это зависит от многих факторов и разобрать их все вряд ли получится. Из практики, отметим, что если процесс подключения к принтеру затянется (более 3-5 минут), попробуйте проверить доступность сервера CUPS, перейдя на тот же адрес с помощью любого браузера, и попробуйте подключить принтер опять.
В случае успешного подключения система предложит вам установить драйвер принтера. На этом моменте немного остановимся. Система CUPS принимает от клиентов файлы печати, являющиеся обычными PostScript документами. Язык печати PostScript поддерживается системой Windows прямо «из коробки», главная проблема в том, что имя стандартного драйвера PS звучит Microsoft Publisher Color Printer (забавная маскировка, не правда ли), но на некоторых системах может использоваться именование MS Publisher Imagesetter.
Итак, выбираем драйвер, для чего переходим в секцию Generic, выбираем MS Publisher Color Printer и жмем ОК (если в системе имеется «родной» драйвер принтера, все равно выбираем MS Publisher!).
Если все прошло успешно (а обычно проблем на этом этапе не возникает), то далее следует типовая процедура настройки принтера (имя, описание, нужно ли давать общий доступ). Нажав, Next попытайтесь распечатать тестовую страницу печати. Как правило, тестовая страница печати без каких либо затруднений выводится на печать на принтере, подключенном к Unix-like клиенту.
В некоторых случаях стоит попробовать установить родной драйвер принтера, хотя все же предпочтительно сначала убедится, что с простым драйвером PS задания печати выводятся корректно. Но следует понимать, что реально для печати используется драйвер, установленный в системе CUPS, а установленный в Windows драйвер PostScript всего лишь формирует PS файл и передает его на сервер.
Примечание. Не забудьте проверить, что между машиной с OS X и Windows порт 631 не блокируется сетевым экраном.
Итак, мы разобрались, как в Windows 7 настроить печать на принтер, установленный в Mac OS X (в UNIX/Linux процедура аналогична).
Источник
Не могу изменить настройки CUPS в Mac OS X
Я получаю доступ к чашкам через веб-интерфейс Mac локально, и мне нужно изменить некоторые настройки. Я набрал адрес (http://127.0.0.1:631) и зашел в админ-панель (логин не требуется).
Я пошел, чтобы изменить некоторые параметры в разделе «Сервер», я установил флажки и нажал «Изменить настройки». Страница перезагрузилась без проверки двух опций, как и раньше.
Почему моя система не принимает изменения в моей конфигурации, мне нужно куда-нибудь войти?
PS: я пытался восстановить права доступа к диску, так как это, кажется, стандартная вещь, когда Mac работает неправильно, но это не помогло.
3 ответа 3
Для CUPS в Mac OS X вам нужно аутентифицировать пользователя, но не совсем очевидно, как это сделать. После того как вы аутентифицировали свой сеанс (используя ваше имя пользователя и пароль), остальная часть интерфейса работает как положено. Он должен запросить у вас имя пользователя и пароль, когда вы нажмете кнопку «Изменить настройки».
Я также обнаружил, что аутентификация работает правильно, только если вы используете Safari — в Chrome и Firefox она не работает. (Старые версии в Tiger и Leopard отлично работали с другими браузерами)
По умолчанию интерфейсу администратора CUPS для изменения чего-либо требуется «root». По умолчанию OSX оставляет root-пользователя отключенным. Чтобы внести изменения через веб-интерфейс CUPS, вам нужно включить root. Apple опубликовала процедуру для этого, точные шаги зависят от версии OS X:
- В меню Apple выберите « Системные настройки».
- В меню « Вид» выберите « Учетные записи».
- Нажмите на замок и авторизуйтесь с учетной записью администратора.
- Нажмите Параметры входа .
- Нажмите кнопку «Изменить . » или «Присоединиться . » в правом нижнем углу.
- Нажмите кнопку «Открыть каталог Utility . ».
- Нажмите на замок в окне утилиты каталогов.
- Введите имя учетной записи администратора и пароль, затем нажмите OK.
- Выберите Enable Root User в меню Edit.
- Введите пароль пользователя root, который вы хотите использовать, в поля «Пароль» и «Проверка», затем нажмите «ОК».
Возможно, вам придется перезапустить CUPS после выполнения описанной выше процедуры, чтобы сделать то, что вы хотите.
MacOS X 10.3.x сломал аутентификацию пользователя в веб-интерфейсе. Следующее приходит от людей из Apple:
Здесь происходит то, что OS X 10.3 (Panther) перешла на теневые пароли, которые cupsd не может прочитать. Страница man getpwent (3) обсуждает детали:
Начиная с Mac OS X 10.3, теперь эта функция отличается для каждого пользователя в зависимости от значения AuthenticationAuthority, сохраняемого для запрашиваемого пользователя в DirectoryServices.
Если запрашиваемый пользователь по-прежнему является устаревшим пользователем шифрованного пароля или теперь имеет значение AuthenticationAuthority, содержащее «; basic;», эти процедуры будут вести себя стандартным образом BSD. Эти функции будут «скрывать» файл паролей, например, позволять только определенным программам иметь доступ к зашифрованному паролю. Если процесс, который их вызывает, имеет действующий uid 0, зашифрованный пароль будет возвращен, в противном случае поле пароля возвращаемой структуры будет указывать на строку ‘*’.
По умолчанию в Mac OS X 10.3 и более поздних версиях все пользователи будут иметь AuthenticationAuthority будет содержать значение «; ShadowHash;». У этих пользователей будет видимое значение пароля «********». Эти функции не будут иметь доступа к зашифрованному паролю. Установка или изменение пароля пользователя должны выполняться полностью через API-интерфейсы DirectoryService для этого пользователя по умолчанию.
Два обходных пути на данный момент:
- Удалите строки
- / из /etc/cups/cupsd.conf
Вернитесь к паролям шифрования. Это можно сделать в Netinfo Manager, изменив ‘AuthenticationAuthority’ пользователя с ‘; ShadowHash;’ к ‘; основному;’ и используя «openssl passwd» для установки пароля. Следующая статья о macosxhints говорит об этом:
Репозитории CUPS (как Darwin, так и cups.org) были обновлены для установки файла конфигурации pam (8), который работает с этими паролями через модуль pam_securityserver. Это решило проблему в Тигре.
Комментарии к вышеупомянутой статье также содержат некоторую соответствующую информацию.
Источник
Question: Q: cupsctl WebInterface=yes
I am unable to access the CUPS Web Interface so that I can change my printer settings, and it’s pretty frustrating!
I am using OS X 10.9.4
If I go to http://127.0.0.1:631 or http://localhost:631 I get the following error:
The web interface is currently disabled. Run «cupsctl WebInterface=yes» to enable it.
I have researched this on the web, and have found, and followed, various articles containing the following instructions to resolve it:
- Enable the root admin account
- Log in using the root account
- Open Terminal while logged in as the root account and enter the following:
- cupsctl WebInterface=yes
- sudo cupsctl WebInterface=yes
- I have receive the following message in Terminal when running these commands:
cupsctl: Internal Server Error
- I have restarted my Mac and ran them again and received the same error messages.
As I mentioned, I am still receiving unable to access the CUPS Web Interface.
Can’t Change CUPS Settings on Mac:
Enabling the CUPS Web Interface on OS X 10.8
Posted on Aug 8, 2014 9:08 AM
In the Finder press ‘cmd-shift-G’ and enter in the dialog window ‘/private’ without the quotes.
Navigate to the folder ‘cups’ and open (double-click) the ‘cupsd.conf’ file if there is no program that opens the file, try to open it with ‘TextEdit’. On my Mac it opens with ‘TextMate’ but ‘BBEdit’ will do also.
Search (cmd-F) for ‘WebInterface’ if you don’t find it, add a line in the first block like this:
On my Mac it Looks Like this:
WebInterface yes
If it is set to no (WebInterface no), just change the ‘no’ to a ‘yes’.
To save the changes you need to enter your password.
Posted on Aug 8, 2014 3:42 PM
All replies
Loading page content
Page content loaded
From Terminal issue in sequence
sudo cupsctl —debug-logging
sudo cupsctl —no-debug-logging
Aug 8, 2014 12:52 PM
I tried those commands and received the same error:
cupsctl: Internal Server Error
Aug 8, 2014 1:01 PM
The following two commands stop and restart the CUPS daemon
sudo launchctl unload /System/Library/LaunchDaemons/org.cups.cupsd.plist
sudo launchctl load /System/Library/LaunchDaemons/org.cups.cupsd.plist
If that does not work there should be some problem with CUPS. Have a look at log files
Aug 8, 2014 1:09 PM
Aug 8, 2014 1:23 PM
Both of those commands executed without error. However, when I try to run the following commands, they fail with the same error:
- cupsctl webinterface=yes
- cupsctl —remote-any
Error: «cupsctl: Internal Server Error»
How do I look at the log files?
Aug 8, 2014 1:24 PM
Thank you for posting. I am not having a problem printing to my printer at all, it’s working fine. I’m just trying change the default printer settings.
I have already tried this though, and it did not solve my problem. 🙂
I believe this should be solved by accessing the CUPS web interface.
Aug 8, 2014 1:27 PM
Log into a newly created admin user account and see if the problem persists . If so, reinstall the OS.
iMac refurb (27-inch Mid 2011), OS X Mavericks (10.9.4), SL & ML, G4 450 MP w/Leopard, 9.2.2
Aug 8, 2014 1:28 PM
Thank you for your post.
I have already tried logging in as the administrator, but the problem still persists. Reinstalling the OS is an extreme step, I would like to exhaust all other possibilities before going down that path.
Aug 8, 2014 1:30 PM
Open Console, scroll down the left pane until you see cups. Expand
Aug 8, 2014 1:37 PM
Try with a new admin account.
Aug 8, 2014 1:47 PM
This is the contents of /etc/cups/
Check users and permissions
drwxr-xr-x 12 root _lp 408 4 Lug 22:15 .
drwxr-xr-x 95 root wheel 3230 7 Ago 18:36 ..
dr-x—x—x 2 _lp admin 68 8 Ago 22:39 certs
-rw-r—r— 1 root _lp 3297 24 Mag 13:17 cups-files.conf
-rw-r—r— 1 root _lp 4783 4 Lug 22:14 cupsd.conf
-rw-r—r— 1 root _lp 4790 4 Lug 22:14 cupsd.conf.O
-rw-r—r— 1 root _lp 6512 24 Mag 13:17 cupsd.conf.default
drwxr-xr-x 2 root _lp 68 5 Apr 09:53 interfaces
drwxr-xr-x 3 root _lp 102 26 Mag 10:38 ppd
-rw——- 1 root _lp 463 4 Lug 22:15 printers.conf
-rw——- 1 root _lp 463 4 Lug 22:14 printers.conf.O
-rw-r—r— 1 root _lp 270 24 Mag 13:17 snmp.conf
Aug 8, 2014 1:55 PM
Launch the Console application in any of the following ways:
☞ Enter the first few letters of its name into a Spotlight search. Select it in the results (it should be at the top.)
☞ In the Finder, select Go ▹ Utilities from the menu bar, or press the key combination shift-command-U . The application is in the folder that opens.
☞ Open LaunchPad. Click Utilities , then Console in the icon grid.
/var/log ▹ cups ▹ error_log
from the hierarchical list on the left side of the Console window. If you don’t see that list, select
View ▹ Show Log List
from the menu bar.
Each message in the log begins with the date and time when it was entered. Select the messages from the time of the last failed printing attempt. Copy them to the Clipboard by pressing the key combination command-C . Paste into a reply to this message ( command-V ).
If there are runs of repeated messages, post only one example of each . Don’t post many repetitions of the same message.
☞ The log contains a vast amount of information, almost all of it useless for solving any particular problem. When posting a log extract, be selective . A few dozen lines are almost always more than enough.
Please don’t indiscriminately dump thousands of lines from the log into this discussion .
Please don’t post screenshots of log messages—post the text.
Источник