You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

118 lines
9.4 KiB

9 years ago
---
title: Настройка принтера Samsung ML-1520P
tags: hardware, samsung
---
!!! Этот принтер больше не поддерживается Samsung, соответственно драйвера они больше для него не пишут. Более того, у них на сайте их тоже уже нет. На свой страх и риск выкладываю [тут](http://hatred.homelinux.net/~hatred/samsung/20061102191855421_UnifiedLinuxDriver.tar.gz). Описание настройки закрытого драйвера оставлено в исторических целях.
Открытый драйвер samsung GDI
----------------------------
Встренный в ghostscript. На [странице принтера](http://www.linuxprinting.org/show_printer.cgi?recnum=Samsung-ML-1520P) отмечен как рекомендуемый.
Проверить наличие можно так:
$ gs --help | grep samsunggdi
psrgb pswrite pxlcolor pxlmono r4081 rinkj rpdl **samsunggdi** sgirgb sj48
Далее установка происходит следущим образом, рассказ для CUPS и для ArchLinux.
- Заходим [сюда](http://www.linuxprinting.org/show_driver.cgi?driver=gdi&fromprinter=Samsung-ML-1520P), выбираем принтер ML-1520, ставим чекбокс в download и нажимаем кнопку Generate PPD file, сохраняем файл себе на жесткий диск, имя: Samsung-ML-1520-gdi.ppd
- Для работы нужен фильтр foomatic-rip, находится в пакете foomatic-filters, ставим его: ``pacman -S foomatic-filters`` у кого нет такого пакета, посмотрите [сайт](http://www.linuxprinting.org/foomatic.html) на предмет наличия.
- Запускаем браузер (CUPS думаю у вас уже запущен), заоходим на http://localhost:631 и далее:
- Идем в [Manage printers](http://localhost:631) и удаляем принтер со старыми драйверами
- Идем в [Add printer](http://localhost:631/admin?OP=add-printer):
* Name: любое, пусть будет ml1520
* Location: "моя комната" или "мой кабинет" или "далеко далеко далече"
* Description: описание принтера
- Нажимаем Continue, попадаем в "Device for ml1520"
* Выбираем Device, у меня принтер на паралельном порту (он может работать и через USB), поэтому устройство выглядит так: "Samsung ML-1520P LPT #1"
- Нажимаем Continue, попадаем в "Model/Driver for ml1520"
* В Provide a PPD file выбираем наш сохраненный Samsung-ML-1520-gdi.ppd
- Нажимаем Add Printer. Принтер добавлен
- Переходим опять в Manage Printers, устанавливаем опции печати, в частности формат листа A4, можно проверить печать, напечатав пробую страницу.
Открытый драйвера splix
------------------------
Есть так же в репозитарии ArchLinux, или качается с http://splix.ap2c.org, там же смотрится список поддерживаемых принтеров. Драйвер отмечен как: "This driver contains algorithms which are (possibly) patented (See license text)".
- Ставим ``pacman -S splix``
- Перестартуем CUPS после: ``/etc/rc.d/cups restart``
- Все шаги проделываются аналогично установке samsunggdi, за исключением установки foomatic-filters и в списке принтеров вместо указания PPD, он выбирается из списка: "Samsung ML-1520, SpliX V. 2.0.0 (en)"
Закрытый драйвер
-----------------
С закрытыми драйверами бывает очень много разного необычного и загадочного, вот и с принтером ML-1520 не все получилось гладко. Основная проблема в том, что когда стояла старая Slackware 9.1 этот принтер завелся с полуоборота на с теми дровами что были с ним на диске. После обновления до Slackware 9.1 он работать наотрез отказался, такое же поведение наблюдалось и на свеженьком Arch Linux 0.7.1. Все дело было в том что фильтр из состава драйвера валился в сигфолт, думается из-за несоответствия версии glibc в системе и glibc с которой был скомпилирован фильтр. Обновление драйверов с официального сайта samsung.com (не берите драйвера с samsung.ru, там таааакое старье!) тоже не помогло...
Так и стоял этот принтер без работы почти все лето...
Ну вот подумав, что, возможно, драйвера еще раз обновили и решили эти проблемы, опять полез на samsung.com. И надо же, действительно, обновление было ;) Скрестив пальчики поставил на закачку (14 метров по gprs это да...). После окончания скачивания мы имеем архив:
20060710181110812_UnifiedLinuxDriver.tar.gz
распаковываем его:
tar xzf 20060710181110812_UnifiedLinuxDriver.tar.gz
Переходим в каталог:
cd cdroot
Смотрим на заманчивый файл `autorun` и еще более заманчивый `Linux/install.sh` и... нет не угадали, нифига мы их не запускаем. Попробую объяснить почему, в двух словах:
После инсталляции стандартным путем, принтер нафиг отказывается работать! почему - хз, как настраивать - хз. (ну точнее не полностью непонятно, но объяснять то что у самого в голове сумбурно - бред)
Далее идем по инструкции (делаем от рута):
- Создаем каталог: ``mkdir -p /opt/Samsung/mfp``
- Копируем все из Linux/i386/at_opt в вышеуказанный каталог (вместо i386 может быть x86_64): ``cp -r Linux/i386/at_opt /opt/Samsung/mfp/``
- Копируем все из Linux/i386/at_root ``cp -r Linux/i386/at_root /opt/Samsung/``
- Делаем симлинки:
ln -s /opt/Samsung/usr/lib/cups/backend/* /usr/lib/cups/backend
ln -s /opt/Samsung/usr/lib/cups/filter/* /usr/lib/cups/filter
ln -s /opt/Samsung/usr/lib/sane/* /usr/lib/sane
ln -s /opt/Samsung/usr/lib/libmfp.so.1.0.1 /usr/lib/
- Копируем qt библиотеку с которой собрана конфигурационная морда и создаем линк:
cp Linux/i386/lib/libqt-mt.so.3 /opt/Samsung/usr/lib ln -s /opt/Samsung/usr/lib/libqt-mt.so.3 /usr/lib
- Копируем все из noarch/at_opt/share в /opt/Samsung/mfp/share ``cp -r noarch/at_opt/share/* /opt/Samsung/mfp/share``
- Копируем noarch/at_root ``cp -r noarch/at_root/* /opt/Samsung/``
- Делаем линк ``ln -s /opt/Samsung/etc/sane.d/* /etc/sane.d/``\ (7-8 пункты не имеют к настройке принтера никакого отношения но могут быть полезны при настройке комбайнов и сканеров от самсунга)
- Пройдитесь ldd по фильтрам и вообще всем бинарникам:
ldd /opt/Samsung/mfp/bin/*
ldd /opt/Samsung/usr/lib/cups/backend/*
ldd /opt/Samsung/usr/lib/cups/filter/*
Если не найдены библиотеки типа libstdc++ попробовать сначала доставить из дистрибутива или из noarch/
- Скопировать OEM.ini ``cp Linux/OEM.ini /opt/Samsung/mfp/share/``
- Остановить cups: ``/etc/rc.d/cups stop``
- Отредактировать ``/etc/cups/printers.conf``
<DefaultPrinter ml1520>
Info
Location
DeviceURI parallel:/dev/lp0
State Idle
Accepting Yes
JobSheets none none
QuotaPeriod 0
PageLimit 0
KLimit 0
</Printer>
- Скопировать ML-1520spl2.ppd: ``cp /opt/Samsung/mfp/share/ppd/ML-1520spl2.ppd /etc/cups/ppd/ml1520.ppd``
- Запустить cups ``/etc/rc.d/cups start``
- Запустить программу конфигурации ``/opt/Samsung/mfp/bin/Configurator
- Настроить свой принтер
Все, после этого все должно работать, возможно сделаю спек для утилиты makepkg из состава ArchLinux что бы автоматизировать этот процесс
Alexander 'Hatred' Drozdoff, Vladivostok, 2006.08.22, updated: 2009.03.31