ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Понедельник
22 июля
1060431 Топик полностью
fk0, легенда (13.12.2020 15:52, просмотров: 302) ответил Argon на Мало ли, вдруг кто в курсе... По большей части не работает печать из Linux Mint на сетевой принтер Samsung M2820ND.
Типично в линуксе принято, что "принтер" (верней CUPS или кто-то вместо него) принимает от программ PostScript-файл и рендерит его (с помощью "драйвера" принтера) в язык управления принтером (специфичный для фирмы, HPGL, или тот же PostScript) и отправляет на принтер... Если идут крякозябры, то есть подозрение, что печатается PostScript напрямую, а принтер его не понимает. Из PDF обычно генерируется тот же PostScript и далее как описано. Но сам по себе PDF является 

подмножеством PostScript и очень теоретически может распечататься сразу...


Начать можно с того, что используется для печати (типично CUPS). Посмотреть его логи (может там уже проблема), посмотреть что непосредственно посылается на принтер (через tcpdump сдампить), и что посылается на CUPS от программ (может сырой текст, что объясняет крякозябры). Программы понимают что печатать и куда из анализа /etc/printcap (в старую эпоху) и через libcups (которая перечисляет принтеры известные CUPS).


Что должно быть:


1) программа должна в CUPS отправлять postscript;

2) CUPS должен данный postscript с помощью "фильтра" рендерить в файл для принтера (и оставлять запись в логе);

3) файл для принтера, на языке принтера, должен отправляться на принтер...


Проверить шаги 2 и 3 можно вручную, с помощью ippeveprinter или cupsfilter преобразовав postscript (который можно получить с помощью enscript, pdf2ps из состава ghostscript...) в файл принтера и отправив его, с помощью netcat, на нужный порт роутера.


Про взаимодействие CUPS с программами не скажу. Вначале убедится, что административный интерфейс CUPS в состоянии напечатать test page ( http://localhost:631 ). Если способен, а из программ не печатает -- проблема в пункте 1. А если не печатает, то скорей проблема в пунктах 2 и 3. И скорей попросту драйвер не тот.

[ZX]