Я установил сервер Fedora 10 и хочу печатать на подключенном принтере с трех рабочих станций Windows Vista и двух XP.
После долгого чтения руководства я получил такую ситуацию:
Преступник - IE7 (и IE8) с рабочей станции Vista Business. Каждый раз, когда задание печати запускается из этого приложения на этой конкретной рабочей станции, я получаю сообщение об ошибке «Доступ запрещен» в журналах CUPS. Печать из IE с других рабочих станций работает. (Черт возьми ?!)
Мой текущий обходной путь - сначала распечатать файл PDF, а затем распечатать этот PDF-файл из Adobe Reader с той же рабочей станции.
Вторая проблема заключается в том, что у меня нет большого опыта работы с Fedora / Linux, поэтому это может быть вопрос новичка. Извините, если это так.
Я не использую Samba для печати, просто никак не мог заставить ее работать. Я использую CUPS без аутентификации, т.е. каждый может печатать. На рабочих станциях я добавил принтеры как «Интернет-принтер», указав этот URL https://myserver:631/printers/myprinter
РЕДАКТИРОВАТЬ: Я обновился до Fedora 11, но проблема все еще существует ...
РЕДАКТИРОВАТЬ 2: Дополнительная информация:
Проблема может заключаться в формате данных, отправляемых на принтер. Вы используете родные драйверы принтера на рабочей станции Windows? Если это так, вам может потребоваться включить «сырую» печать, то есть посылать необработанные двоичные коды печати с рабочей станции на принтер.
Возможно, вам потребуется отредактировать файл конфигурации cups и раскомментировать application/octet-stream
для включения необработанной печати. Я не уверен, каковы последствия этого для безопасности.
Другая вещь, которая может сработать или не сработать для вас, - это настроить ваш принтер как принтер Postscript, используя общий драйвер PostScript в клиенте Windows. Однако мне редко удавалось заставить это работать должным образом.
Как вы выставляете принтер ... через Samba, я полагаю? Так как Мистер Блестящий и Новый сказал, вы, вероятно, захотите выставить принтер как "сырой" принтер, что позволит устройствам Windows использовать обычные драйверы для взаимодействия с принтером. Вот как я всегда предоставлял клиентам Windows принтеры с сервера Linux.
Чтобы отладить это, вы захотите посмотреть журналы Samba, а также журналы CUPS. Сначала проверьте журналы Samba, чтобы узнать, есть ли доступ с компьютеров Windows к принтеру. Также проверьте журналы CUPS. Ищите ошибки в любом наборе журналов.
Если у вас включен selinux, то только для тестирования выполнить команду:
setenforce permissive
После этого перезапустите Samba и CUPS и попробуйте получить доступ. Если это имеет значение, вам может потребоваться просмотреть журналы аудита selinux, чтобы изменить некоторые разрешения там. Предполагая, что обычно у вас есть selinux в принудительном режиме, когда вы закончите тестирование, снова включите его с помощью:
setenforce enforcing