LINUX.ORG.RU

Pantum P2000+CentOS 6.5


1

1

Есть много принтеров Pantum P2000, предназначенных для печати с терминальных станций. Имеются виндовые драйвера и ppd+filter для cups. А сама проблема заключается в следующем: линуксовый драйвер требует glibc 2.14, не меньше. В оф. репозиториях CentOS 6.5 доступна только версия 2.12, обновлять этот сервер не вариант совсем. Пробовал уже, много чего отвалилось, откатился назад. Пытался запускать из chroot с нужной библиотекой. При попытке напечатать что-нибудь фильтр падает без объяснения причин «printer failed due to backend errors» - пишет. Новый терминальный сервер развернуть попробовал, позже узнал что под текущую инфраструктуру нет вменяемого удаленного клиента под CentOS 7. Собственно, вопрос: что делать в такой ситуации? Где-то вычитал как заводили подобные принтеры: поднимали сервер печати на винде, из cups отправляли документы на виндовую машину as is, виндовая машина преобразовывала такие документы в формат понятный принтеру и отправляла по ipp на линуксовую машину, непосредственно подключенную к принтеру. ИМХО королевский изврат, но, если нет более красивых решений, придётся попробовать.


под текущую инфраструктуру нет вменяемого удаленного клиента под CentOS 7

А невменяемый клиент есть? ИМХО, сейчас ваша задача добиться, чтобы принтер работал, неважно на каком дистрибутиве будет тестовый терминальный сервер. А уже потом можно будет нужные библиотеки устанавливать в chroot. Так ведь разные варианты возможны, или это вобще не рабочее, или требует строго определённой версии библиотек, или мешает что-то другое, допусим SeLinux.

mky ★★★★★ ()
Ответ на: комментарий от mky

«требует строго определённой версии библиотек». Поскольку работаю в госконторе, я обязан соблюдать определенные требования по защите персональных данных. Единственный дистр сертифицированный ФСТЭК-это CentOS. Поэтому плясать надо от него. Может, я что-то не так делаю в chroot? Вот скрипт, который указан в качестве фильтра:

export $PATH[br]
export $1[br]
export $2[br]
export $3[br]
export $4[br]
export $5[br]
rsync -avz /var/spool/cups/* /root/centos7/var/spool/cups/[br]
chroot /root/centos7/ /bin/bash -c '/usr/lib/cups/filter/rastertoPantum "$1" "$2" "$3" "$4" "$5"'[br]
Лог CUPS:
http://pastebin.com/YLE7b3Ah

xoma ()
Ответ на: комментарий от xoma

Лог CUPS:

А почему нет содержимого error_log или там пусто?

Последней командой скрипта обёртки принято делать exec, а rsync выглядит костыльно, для теста сойдёт, а так, ИМХО, правильнее настроить cups, чтобы он сам работал с /root/centos7/var/spool/cups/.

CentOS. Поэтому плясать надо от него.

Ну не хотите уменьшать число неизвестных, ну пляшите в темноте.

mky ★★★★★ ()
Ответ на: комментарий от mky

Лог CUPS можно увидеть по ссылке на pastebin. Сюда не влезло. Мне ссылку видно. Попробую exec добавить как до терминальной станции доберусь. Может, поможет.CentOS 6.5 на данный момент используется.

xoma ()
Ответ на: комментарий от xoma

Как бы не понятно:

E [11/Nov/2014:15:13:42 -0500] [Job 22496] Пустой файл печати!

Вы печатаете через терминального клиента или через команду lp?

Уберите ″export $1″ и т.д., это лишнее. Уберите rsync, смонтируйте /var/spool/cups в chroot через ″--bind″, хотя, не понятно, зачем это, имя файла фильтру передаётся последним (как минимум шестым) параметром.

mky ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.