CUPS (Common UNIX Printing System) — сервер печати для UNIX-подобных операционных систем. Компьютер с запущенным сервером CUPS представляет собой сетевой узел, который принимает задания на печать от клиентов, обрабатывает их и отправляет на соответствующий принтер.
И так поехали:
# uname -a FreeBSD sani4.ru 10.1-RELEASE FreeBSD 10.1-RELEASE #0: Wed Mar 4 09:34:59 KRAT 2015 root@Sani4.ru:/usr/src/sys/i386/compile/SANI4 i386 |
Устанавливаем все нужные пакеты из портов:
# cd /usr/ports/print/cups && make install clean # cd /usr/ports/print/cups-base && make install clean # cd /usr/ports/print/cups-bjnp && make install clean # cd /usr/ports/print/cups-client && make install clean # cd /usr/ports/print/cups-image && make install clean # cd /usr/ports/print/cups-pdf && make install clean # cd /usr/ports/print/cups-pk-helper && make install clean # cd /usr/ports/print/cups-pstoraster && make install clean # cd /usr/ports/print/cups-smb-backend && make install clean # cd /usr/ports/print/gutenprint-cups && make install clean |
# cd /usr/ports/print/foomatic-db && make install clean # cd /usr/ports/print/foomatic-db-engine && make install clean # cd /usr/ports/print/foomatic-db-hpijs && make install clean # cd /usr/ports/print/foomatic-filters && make install clean # cd /usr/ports/print/gutenprint-foomatic && make install clean |
# cd /usr/ports/print/ghostscript9 && make install clean |
Устанавливаем HPLIP для поддержки принтеров HP
# cd /usr/ports/print/hplip && make install clean |
Установливаем foo2zjs
# cd /usr/ports/print/foo2zjs && make install clean |
Должно быть так:
# pkg info | grep cups cups-1.7.3.1 = up-to-date with port cups-base-1.7.3_1 = up-to-date with port cups-bjnp-2.0 = up-to-date with port cups-client-1.7.3_4 = up-to-date with port cups-filters-1.0.66 = up-to-date with port cups-image-1.7.3_3 = up-to-date with port cups-pdf-2.6.1_1 = up-to-date with port cups-pk-helper-0.2.5 = up-to-date with port cups-pstoraster-8.15.4_8 = up-to-date with port cups-smb-backend-1.0_6 = up-to-date with port gutenprint-cups-5.2.10 = up-to-date with port |
# pkg info | grep foomatic foomatic-db-20150214 = up-to-date with port foomatic-db-engine-4.0.12,2 = up-to-date with port foomatic-db-hpijs-1.4 = up-to-date with port foomatic-filters-4.0.17_2 = up-to-date with port gutenprint-foomatic-5.2.10 = up-to-date with port |
# pkg info | grep hplip hplip-3.14.10 = up-to-date with port |
Создаем директории:
# mkdir /usr/local/share/foo2zjs/firmware # mkdir /usr/local/share/foo2zjs/icm # mkdir /usr/local/share/foo2hp/icm |
cd /tmp |
Скачиваем прошивки:
# getweb all |
После закачки копируем закаченные файлы:
cp DL*.icm CP*.icm km2430*.icm /usr/local/share/foo2zjs/icm cp sihp*.img /usr/local/share/foo2zjs/firmware cp hpclj26*.icm km2430*.icm /usr/local/share/foo2hp/icm rm *.icm *.img |
Переходим в /usr/local/share/foo2zjs/firmware
cd /usr/local/share/foo2zjs/firmware |
Преобразовываем прошивку утилитой arm2hpdl:
arm2hpdl sihp1000.img > sihp1000.dl arm2hpdl sihp1005.img > sihp1005.dl arm2hpdl sihp1020.img > sihp1020.dl arm2hpdl sihpP1005.img > sihpP1005.dl arm2hpdl sihpP1006.img > sihpP1006.dl arm2hpdl sihpP1505.img > sihpP1505.dl |
Копируем /usr/local/share/examples/cups/ulpt-cupsd.conf -> /usr/local/etc/devd/
# cp /usr/local/share/examples/cups/ulpt-cupsd.conf /usr/local/etc/devd/ |
Пропишем новое правило после этого /usr/local/etc/devd/ulpt-cupsd.conf после строк:
attach 110 { device-name "ulpt[0-9]+"; action "/usr/local/sbin/ulpt-cupsd.sh enable $device-name"; }; |
само правило:
attach 120 { device-name "ulpt[0-9]+"; match "vendor" "0x03f0"; match "product" "0x4117"; action "cat /usr/local/share/foo2zjs/firmware/sihp1020.dl > /dev/$device-name"; }; |
Для печати из под Windows машин делаем следующее:
Раскоментируем строчки:
в файле /usr/local/etc/cups/mime.types:
application/octet-stream |
в файле /usr/local/etc/cups/mime.convs:
application/octet-stream application/vnd.cups-raw 0 - |
Если установлен ghostscript, то закомментировать строку в:
в файле /usr/local/etc/cups/mime.convs:
application/vnd.cups-postscript application/vnd.cups-raster 100 pstoraster |
Делаем рестарт cupsd:
# service cupsd restart |
Создаем файл devfs.rules в /etc/
touch /etc/devfs.rules |
Добавляем доступ группе ‘cups’ к устройствам в /dev
[system=10] add path 'unlpt*' mode 0660 group cups add path 'ulpt*' mode 0660 group cups add path 'lpt*' mode 0660 group cups add path 'usb*' mode 0770 group cups add path 'ugen*' mode 0660 group cups add path 'usb/*' mode 0660 group cups |
В /etc/rc.conf добавляем строчку:
devfs_system_ruleset="system" |
Для доступа к настройкам принтера нужно отредактировать конфигурационный файл /usr/local/etc/cups/cupsd.conf
# Listen for connections on Port 631. Port 631 # добавили #Listen localhost:631 # закомментировали Listen /var/run/cups.sock # Show shared printers on the local network. Browsing On BrowseLocalProtocols dnssd BrowseAllow 192.168.1.* # добавили свою внутреннюю сеть BrowseAddress 192.168.1.* # добавили свою внутреннюю сеть # Default authentication type, when authentication is required... DefaultAuthType Basic # Allow access to the server from any machine on the LAN <location> Order allow,deny #Allow localhost Allow 192.168.1.* # добавили свою внутреннюю сеть </location> # Allow access to the admin pages from any machine on the LAN <location /admin> #Encryption Required Order allow,deny Allow 192.168.1.* # добавили свою внутреннюю сеть </location> # Allow access to configuration files from any machine on the LAN <location /admin/conf> AuthType Default Require user @SYSTEM Order allow,deny Allow 192.168.1.* # добавили свою внутреннюю сеть </location> |
Выключаем и снова включаем принтер. Принтер должен отработать два раза.Первый раз при включении, а второй при загрузке прошивки.
Установка принтера.
В адресной строке браузера вводим
https://ip:631
меню -> < Администрирование>
пункт -> < Добавить принтер>
выбираем HP LaserJet 1018 (HP LaserJet 1018)
жмем -> < продолжить> — ставим галочку < Разрешить совместный доступ к этому принтеру>
жмем -> < продолжить>
жмем -> < выбрать модель>
я выбрал
жмем -> < добавить принтер>
жмем — < сохранить параметры>
Все принтер установлен.
Проверяем — < обслуживание> -> < печать пробной страницы>
использовал статью 1 и 2
Cups Ошибки
После длительного использования CUPS перестал запускаться и выдавал ошибку
Nov 17 08:17:45 -- cupsd: dnssd_clientstub ConnectToServer: connect()-> No of tries: 1 Nov 17 08:17:46 -- cupsd: dnssd_clientstub ConnectToServer: connect()-> No of tries: 2 Nov 17 08:17:47 -- cupsd: dnssd_clientstub ConnectToServer: connect()-> No of tries: 3 Nov 17 08:17:48 -- cupsd: dnssd_clientstub ConnectToServer: connect() failed path:/var/run/mdnsd Socket:9 Err:-1 Errno:2 No such file or directory |
как я понимаю это глюк Freebsd… а решилось это достаточно необычным способом.
а именно дописав в /etc/rc.conf
named_chrootdir="" |