Scan+Print server FreeBSD статья

Обсуждаем сайт и форум.

Модератор: f0s

Аватара пользователя
zentarim
мл. сержант
Сообщения: 73
Зарегистрирован: 2010-07-22 23:10:56

Scan+Print server FreeBSD статья

Непрочитанное сообщение zentarim » 2013-08-11 0:48:00

Давно новых статей не было... Пора исправлять. Проверяйте, если всех все устроит - нарисую статейку.

Несколько лет назад я писал статью про создание роутера с функционалом аналогичным обычному домашнему роутеру:
http://www.lissyara.su/articles/freebsd/tuning/wifi_router/
Прошло время, сдохла старая материнка, да и Wi-fi мне перестал быть нужным. На земену ей была куплена материнка
http://www.intel.com/content/www/us/en/motherboards/desktop-motherboards/desktop-board-d2500cc.html
На ней также был запилен роутер. Но одна недоработка все это время меня немного напрягала. Эта недоработка заключалась в том, что моя МФУшка Canon PIXMA MP540 была подключена к моей машине. Соответственно все, кому нужно было что-нибудь отсканировать, прибегали ко мне...
К тому же моя машина работает под linux, а второй домашний компьютер работает под Win7. Поэтому принтер был расшарен через Samba и периодически отваливался (Да, у меня кривые руки и я не могу настроить Самбу нормально :)) В любом случае сложившаяся ситуация меня не устраивала и наконец-то у меня дошли руки ее исправить. В процессе установки открылись некоторые особенности настройки, которые я решил для себя задокументировать. Заодно и решил статью набросать.
Что было решено сделать:
1) подключить МФУ к FreeBSD роутеру через USB
2) Расшарить принтер при помощи CUPS и печатать при помощи кроссплатформенного протокола IPP
3) Дать доступ к сканеру через WEB (сначала была идея расшарить сканер при помощи встроенных сетевых средств sane, но потом я решил, что через веб-морду будет удобнее).

Приступаем. Предполагаем, что внутреняя подсеть 192.168.0.0/24, а шлюз с фряхой - 192.168.0.1
По устройствам в ядре точно сказать не могу, но думаю, что понадобятся такие:

Код: Выделить всё

   device      usb      # USB Bus (required)
   device      ulpt      # Printer

   # Эти устройства вам нужны, если вы собираетесь пользоваться встроенным в МФУ кардридером
   device      scbus      # SCSI bus (required for ATA/SCSI)
   device      da      # Direct Access (disks)
   device      umass      # Disks/Mass storage - Requires scbus and da

Подключаем принтер по USB и смотрим как определился:

Код: Выделить всё

   # dmesg | grep -i canon
   ugen4.5: <Canon> at usbus4   # как выяснилось позднее - это сканер
   ulpt0: <Canon MP540 series, class 0/0, rev 2.00/1.02, addr 5> on usbus4   # это принтер
   umass3: <Canon MP540 series, class 0/0, rev 2.00/1.02, addr 5> on usbus4   # у MP540 есть встроенный кардидер, я им не пользуюсь
   da3: <Canon MP540 series 0102> Removable Direct Access SCSI-2 device   # теоретически если воткнуть в кардридер чего-нибудь  - это устройство потом можно будет смонтировать

Все определилось корректно. Для подключения принтера ставим следующие пакеты:
1) CUPS (Common Unix Printing System) - Сам сервер печати

Код: Выделить всё

   # cd /usr/ports/print/cups-base/ && make install clean

2) Gutenrint-base (High quality drivers for Canon, Epson, Lexmark, and PCL printers for use with Ghostscript, CUPS, Foomatic, and the Gimp). Драйвера для MP540 я нашел в этом пакете.
Предупреждение: сборка этого порта тянет за собой чертову кучу графбиблиотек, будьте готовы к долгому процессу сборки. Также при сборке этого пакета будут подтянуты библиотеки pango и cairo (Внимание: ОБЯЗАТЕЛЬНО соберите их с поддержкой X11, иначе последующие пакеты будут ругаться на ее отсутствие у этих библиотек)

Код: Выделить всё

   # cd /usr/ports/print/gutenprint-base/ && make install clean

Приводим конфиг CUPS (/usr/local/etc/cups/cupsd.conf) к такому виду:

Код: Выделить всё

# Важный момент: Без директивы ServerName вы, скорее всего, не сможете печатать с других компьютеров, а по умолчанию она не прописана.
# Она отвечает за то, с каким именем хоста принимать запросы от клиентов. Когда директива не прописана - в качестве имени хоста используется имя машины. Сюда лучше вписать IP адрес, на котором будет слушать CUPS
# Симптомы: Работает печать с локальной машины, работает тестовая печать, но не работает печать с других компов.
# Отдельные индивидуумы на форумах советуют при такой проблеме патчить файл hosts на клиенте. Не поддавайтесь на провокации, все можно сделать гораздо проще и правильнее :)
ServerName 192.168.72.1

SystemGroup wheel
# По умолчанию стоит localhost:631, т.е. доступ будет только с локальной машины.
Listen 192.168.72.1:631
Listen /var/run/cups.sock
LogLevel error
# Обнаружение принтера мне нафиг не нужно, поэтому отключаю.
Browsing Off
# По умолчанию включаем авторизацию (используются системные пользователи)
DefaultAuthType Basic
WebInterface Yes
<Location />
   # За доступ к принтерам отвечает этот подраздел конфига. Я разрешаю доступ к нему без аутентификации и только из локальной сети.
  AuthType None
  Order allow,deny
  Allow 192.168.0.0/24
</Location>
<Location /admin>
   # Доступ к администрированию принтеров. Кому попало и что попало менять нельзя. Поэтому тут уже аутентификация (определено директивой BrowseLocalProtocols) и доступ только из локальной сети.
  AuthType Default
  Order allow,deny
  Allow 192.168.0.0/24
</Location>
<Location /admin/conf>
   # Непонятно, за что отвечает этот раздел. Сделал такой же доступ как к администрированию.
  AuthType Default
  Order allow,deny
Allow 192.168.0.0/24
</Location>
   # Далее идут всевозможные разграничения, кому и что можно делать. Меня вполне устраивают стандартные.
<Policy default>
  JobPrivateAccess default
  JobPrivateValues default
  SubscriptionPrivateAccess default
  SubscriptionPrivateValues default
  <Limit Create-Job Print-Job Print-URI Validate-Job>
    Order deny,allow
  </Limit>
  <Limit Send-Document Send-URI Hold-Job Release-Job Restart-Job Purge-Jobs Set-Job-Attributes Create-Job-Subscription Renew-Subscription Cancel-Subscription Get-Notifications Reprocess-Job Cancel-Current-Job Suspend-Current-Job Resume-Job Cancel-My-Jobs Close-Job CUPS-Move-Job CUPS-Get-Document>
    Require user @OWNER @SYSTEM
    Order deny,allow
  </Limit>
  <Limit CUPS-Add-Modify-Printer CUPS-Delete-Printer CUPS-Add-Modify-Class CUPS-Delete-Class CUPS-Set-Default CUPS-Get-Devices>
    AuthType Default
    Require user @SYSTEM
    Order deny,allow
  </Limit>
  <Limit Pause-Printer Resume-Printer Enable-Printer Disable-Printer Pause-Printer-After-Current-Job Hold-New-Jobs Release-Held-New-Jobs Deactivate-Printer Activate-Printer Restart-Printer Shutdown-Printer Startup-Printer Promote-Job Schedule-Job-After Cancel-Jobs CUPS-Accept-Jobs CUPS-Reject-Jobs>
    AuthType Default
    Require user @SYSTEM
    Order deny,allow
  </Limit>
  <Limit Cancel-Job CUPS-Authenticate-Job>
    Require user @OWNER @SYSTEM
    Order deny,allow
  </Limit>
  <Limit All>
    Order deny,allow
  </Limit>
</Policy>
<Policy authenticated>
  JobPrivateAccess default
  JobPrivateValues default
  SubscriptionPrivateAccess default
  SubscriptionPrivateValues default
  <Limit Create-Job Print-Job Print-URI Validate-Job>
    AuthType Default
    Order deny,allow
  </Limit>
  <Limit Send-Document Send-URI Hold-Job Release-Job Restart-Job Purge-Jobs Set-Job-Attributes Create-Job-Subscription Renew-Subscription Cancel-Subscription Get-Notifications Reprocess-Job Cancel-Current-Job Suspend-Current-Job Resume-Job Cancel-My-Jobs Close-Job CUPS-Move-Job CUPS-Get-Document>
    AuthType Default
    Require user @OWNER @SYSTEM
    Order deny,allow
  </Limit>
  <Limit CUPS-Add-Modify-Printer CUPS-Delete-Printer CUPS-Add-Modify-Class CUPS-Delete-Class CUPS-Set-Default>
    AuthType Default
    Require user @SYSTEM
    Order deny,allow
  </Limit>
  <Limit Pause-Printer Resume-Printer Enable-Printer Disable-Printer Pause-Printer-After-Current-Job Hold-New-Jobs Release-Held-New-Jobs Deactivate-Printer Activate-Printer Restart-Printer Shutdown-Printer Startup-Printer Promote-Job Schedule-Job-After Cancel-Jobs CUPS-Accept-Jobs CUPS-Reject-Jobs>
    AuthType Default
    Require user @SYSTEM
    Order deny,allow
  </Limit>
  <Limit Cancel-Job CUPS-Authenticate-Job>
    AuthType Default
    Require user @OWNER @SYSTEM
    Order deny,allow
  </Limit>
  <Limit All>
    Order deny,allow
  </Limit>
</Policy>
BrowseWebIF Yes

Включаем CUPSD в /etc/rc.conf:

Код: Выделить всё

   # echo 'cupsd_enable="YES"' >> /etc/rc.conf

Стартуем CUPSD:

Код: Выделить всё

   # /usr/local/etc/rc.d/cupsd restart

Проверяем, запустился ли CUPS:

Код: Выделить всё

   # sockstat -l | grep cups
   root     cupsd      3047  7  tcp4   192.168.0.1:631      *:*
   root     cupsd      3047  8  stream /var/run/cups.sock

Все запустилось, теперь надо настроить принтер. Идем на веб-интерфейс:
https://192.168.0.1:631/admin
Тут вас спросят пароль от root. Внимание: после ручной правки конфига cups большинство "галочек" в веб-морде показывают хрен пойми чего. Поэтому не очень-то им доверяйте
Нажимаем кнопку "Добавить принтер":
cups_web1_mod.png

Ага, принтер определился, но почему-то в двух ипостасях. Выбираем первую:
cups_web2_mod.png

Даем принтеру имя. Внимание: это имя будет использоваться при обращении к принтеру из клиента печати!
Поэтому для удобства даем ему достаточно короткое и простое имя в латинской раскладке. Обращаем внимание на строку "Подключение" и ее значение "usb:/dev/ulpt0"
/dev/ulpt0 - это и есть устройство принтера. Разумеется, включаем общий доступ к принтеру.
cups_web3_mod.png

В этом окне выбираем драйвер принтера (Производитель Canon, модель MP540). так как я без понятия - какой из драйверов мне надо, то выбираем тот, где есть подпись "ru" :)
cups_web4_mod.png

cups_web5_mod.png

Здесь оставляем все как есть, кроме пункта "Источник носителя". Его принудительно выставляем в значение "Cassette", так как по умолчанию принтер пытается найти бумагу в заднем лотке.
<<Здесь должен был быть скриншот... К сожалению не больше 5 вложений в сообщение>>
Все, принтер настроен:
<<Здесь должен был быть скриншот... К сожалению не больше 5 вложений в сообщение>>
Конфигурации всех принтеров будут храниться в /usr/local/etc/cups/printers.conf. После добавления принтера он будет выглядить подобным образом:

Код: Выделить всё

# Printer configuration file for CUPS v1.5.4
# Written by cupsd on
# DO NOT EDIT THIS FILE WHEN CUPSD IS RUNNING
<Printer Canon>
UUID urn:uuid:127948e7-0ba2-311b-6e44-1b2c87d04d7a
Info Canon MP540 series
Location GATE
MakeModel Canon PIXMA MP540 - CUPS+Gutenprint v5.2.8
DeviceURI usb:/dev/ulpt0
State Idle
StateTime 1376160812
Type 36876
Accepting Yes
Shared Yes
JobSheets none none
QuotaPeriod 0
PageLimit 0
KLimit 0
OpPolicy default
ErrorPolicy stop-printer
</Printer>

Хоть CUPS хоть и запускается с правами root, но печатать будет только на устройства, принадлежащие системной группе "cups". Почему так происходит - я, к сожалению, не знаю.
Нам надо "инструктировать" devfs, чтобы она назначала определенные права устройству "/dev/ulpt0". Это делается при помощи файла /etc/devfs.rules и /etc/rc.conf . Приводим его к такому виду:

Код: Выделить всё

   [operator=5]
   add path ulpt0 mode 0660 group cups

В /etc/rc.conf добавляем строку:

Код: Выделить всё

   devfs_system_ruleset="operator"

Перезапускаем devfs:

Код: Выделить всё

   # /etc/rc.d/devfs restart

Проверяем, подхватились ли правила:

Код: Выделить всё

   # devfs rule show
   100 path ulpt0 group cups mode 660

Теперь при перезагрузке системы или включении/отключении принтера у него сразу будут правильные права. Однако сейчас они не применятся, поэтому выдаем права принтеру вручную:

Код: Выделить всё

   # chown root:cups /dev/ulpt0

Проверяем, есть ли права на запись в устройство у группы "cups":

Код: Выделить всё

   # ls -la /dev/ulpt0
   crw-rw----  1 root  cups    0, 137 10 авг 23:02 /dev/ulpt0

Все нормально, можно печатать. Пускаем на принтер пробную страницу из веб-интерфейса и, если все в порядке, идем настраивать клиенты печати.
Ниже привожу примеры настройки и скриншоты клиентов печати Windows 7 и Ubuntu (KDE):
1) KDE
<<Здесь должен был быть скриншот... К сожалению не больше 5 вложений в сообщение>>

2) Windows 7
<<Здесь должен был быть скриншот... К сожалению не больше 5 вложений в сообщение>>

Предположим, что принтер настроен и печать работает. Теперь настраиваем сканер и веб-интерфейс к нему.
Устанавливаем пакеты:
1) sane-backends (Собственно сам пакет sane и утилиты для работы со сканером из командой строки)

Код: Выделить всё

# cd /usr/ports/graphics/sane-backends && make install clean

2) sane-frontends (Еще какое-то барахло для работы со сканером. Было указано в инструкции к веб-морде)

Код: Выделить всё

# cd /usr/ports/graphics/sane-frontends && make install clean

3) ImageMagick-nox11 (различные утилиты для конвертаций графических форматов, в том числе и утилита convert который непосредственно используется в веб-морде. Почему nox11 - надеюсь обьяснять не надо)

Код: Выделить всё

# cd /usr/ports/graphics/ImageMagick-nox11 && make install clean

Вот далее я точно не помню, но что-то требовалось еще доустанавливать... В общем если по каким-то причинам не захочет сканировать - попробуйте проверить лог ошибок веб-сервера. Там будет ругань на то, чего не хватает.
Если наткнетесь - пожалуйста напишите в обсуждение и я добавлю информацию в статью.
В качестве веб-морды я использую phpsane, так как он достаточно прост в настройке и освоении. Однако для его работы необходим веб-сервер и установленный php. Лично я использую lighttpd+php53( Внимание: сначала я пытался использовать yaws, однако там были косяки с скачиванием файлов, поэтому я вернулся к lighttpd). Поскольку настройка и установка php и lighttpd неоднократно рассматривалась и обсасывалась, я только распишу моменты, в которых могут возникнуть вопросы:
- создатель phpsane обозвал главную страницу "phpsane.php", а не index.php. Я хотел обращаться к веб-серверу без принудительного указания страницы,
поэтому в конфиг lighttpd я добавил такую строку:

Код: Выделить всё

   index-file.names += ( "phpsane.php" )

Разумеется, можно переименовать сам phpsane.php в index.php, а также поменять все ссылки на него... Но мне было просто лениво.
Я повесил веб-сервер на порт 8800 и запустил его:

Код: Выделить всё

# sockstat -l
USER     COMMAND    PID   FD PROTO  LOCAL ADDRESS         FOREIGN ADDRESS     
www      lighttpd   10479 4  tcp4   192.168.0.1:8800     *:*

Веб-сервер работает. Теперь надо установить собственно веб-морду к сканеру. Скачиваем последнюю версию phpsane со странички
http://sourceforge.net/projects/phpsane/
Внутри архива находится папка, к которой надо предоставить доступ веб-серверу. Если вы все запустили правильно, то при заходе на веб-интерфейс у вас будет отображаться что-то вроде:
Изображение
Однако это еще не все, ведь сервер работает с правами пользователя www, у которого нет прав на чтение со сканера! Для этого добавляем пользователя www во встроенную группу "operator":

Код: Выделить всё

   # pw groupmod operator -m www

Пробуем найти наш сканер:

Код: Выделить всё

   # sane-find-scanner -q
   found USB scanner (vendor=0x04a9 [Canon], product=0x1730 [MP540 series]) at libusb:/dev/usb:/dev/ugen4.5

Сканер нашелся. Ключевое устройство - /dev/ugen4.5. Однако это устройство является ссылкой на "/dev/usb/4.5.0":

Код: Выделить всё

   # ls -la /dev/ugen4.5
   lrw-rw----  1 root  wheel  9  9 авг 23:20 /dev/ugen4.5 -> usb/4.5.0

Поэтому надо установить права для ссылки и, собственно, самого устройства. Делаем мы это опять-таки при помощи devfs, добавляя строки в /etc/devfs.rules

Код: Выделить всё

   [operator=5]
   # это добавлено для сканера
   add path ugen4.5 mode 0660 group operator
   add path usb/4.5.0 mode 0660 group operator
   # это было добавлено для принтера
   add path ulpt0 mode 0660 group cups

Как видно - мы в одном профиле устанавливаем права как для устройства принтера, так и для устройства сканера.
После добавления правил для сканера лучше сразу перезагрузиться, чтобы избежать пересоздания ссылок и установки прав в ручном режиме.
Проверяем, что получилось:

Код: Выделить всё

   # ls -la /dev/ugen4.5
   lrw-rw----  1 root  operator  9 11 авг 00:10 /dev/ugen4.5 -> usb/4.5.0
   # ls -la /dev/usb/4.5.0
   crw-rw----  1 root  operator    0, 124 11 авг 00:10 /dev/usb/4.5.0

Теперь все в порядке, можно сканировать. Заходим на
http://192.168.0.1:8800
Выбираем нужные настройки, имя файла и т.д. и нажимаем кнопку "Сканировать". Если все сделано верно - под кнопками будут появляться ссылки на файлы сканов.
Если нет - ковыряем лог веб-сервера на предмет ошибок.

Жду ваших комментариев


Аватара пользователя
zentarim
мл. сержант
Сообщения: 73
Зарегистрирован: 2010-07-22 23:10:56

Re: Scan+Print server FreeBSD статья

Непрочитанное сообщение zentarim » 2013-08-14 13:48:40

Какая-то непопулярная тема оказалась... Ну ладно, список статей давно не обновлялся, думаю и эта подойдет. Закину на днях.


Аватара пользователя
FreeBSP
майор
Сообщения: 2020
Зарегистрирован: 2009-05-24 20:20:19
Откуда: Москва

Re: Scan+Print server FreeBSD статья

Непрочитанное сообщение FreeBSP » 2013-09-16 17:48:45

мне интересно, но пока не востребована реализация этой темы
Человек начинает получать первые наслаждения от знакомства с unix системами. Ему нужно помочь - дальше он сможет получать наслаждение самостоятельно ©
Ламер — не желающий самостоятельно разбираться. Не путать с новичком: ламер опасен и знает это!

Bayerische
капитан
Сообщения: 1820
Зарегистрирован: 2010-12-25 20:41:50
Откуда: Хлебная столица

Re: Scan+Print server FreeBSD статья

Непрочитанное сообщение Bayerische » 2013-09-16 17:53:25

Аналогично.
Статья хорошая.

Аватара пользователя
zentarim
мл. сержант
Сообщения: 73
Зарегистрирован: 2010-07-22 23:10:56

Re: Scan+Print server FreeBSD статья

Непрочитанное сообщение zentarim » 2013-11-22 0:24:29

По наводке пользователя USSR в статью добавлен альтернативный способ установки прав на устройства сканера и принтера.

Аватара пользователя
alex117
ст. сержант
Сообщения: 323
Зарегистрирован: 2010-07-30 13:25:13

Re: Scan+Print server FreeBSD статья

Непрочитанное сообщение alex117 » 2013-11-22 9:17:20

Норм, пригодиться. Сам думал перекинуть принтер на домашний сервак.
Автору спасибо.

Аватара пользователя
alex117
ст. сержант
Сообщения: 323
Зарегистрирован: 2010-07-30 13:25:13

Re: Scan+Print server FreeBSD статья

Непрочитанное сообщение alex117 » 2013-11-22 22:03:49

Блин, так и не нашел своего Canon LBP6000B в списке выбора принтеров CUPS

Аватара пользователя
zentarim
мл. сержант
Сообщения: 73
Зарегистрирован: 2010-07-22 23:10:56

Re: Scan+Print server FreeBSD статья

Непрочитанное сообщение zentarim » 2013-11-23 10:46:35

alex117 писал(а):Блин, так и не нашел своего Canon LBP6000B в списке выбора принтеров CUPS

Возможно не все так плохо. Посмотрите на оффсайте, там какие-то драйвера есть:
http://www.canon.ru/Support/Consumer_Products/products/printers/Laser/i-SENSYS_LBP6000B.aspx?type=download&page=1Возможно получится выковырять из них PPD файл и подсунуть CUPS-у. Шанс, конечно, маленький, однако вам терять особо нечего :)

Может быть эти мануалы подскажут какую-нибудь идею:
http://habrahabr.ru/sandbox/46310/
http://forum.altlinux.org/index.php?topic=10367.0

Аватара пользователя
zentarim
мл. сержант
Сообщения: 73
Зарегистрирован: 2010-07-22 23:10:56

Re: Scan+Print server FreeBSD статья

Непрочитанное сообщение zentarim » 2013-11-23 10:57:39

zentarim писал(а):
alex117 писал(а):Блин, так и не нашел своего Canon LBP6000B в списке выбора принтеров CUPS

Возможно не все так плохо. Посмотрите на оффсайте, там какие-то драйвера есть:
http://www.canon.ru/Support/Consumer_Products/products/printers/Laser/i-SENSYS_LBP6000B.aspx?type=download&page=1Возможно получится выковырять из них PPD файл и подсунуть CUPS-у. Шанс, конечно, маленький, однако вам терять особо нечего :)

Может быть эти мануалы подскажут какую-нибудь идею:
http://habrahabr.ru/sandbox/46310/
http://forum.altlinux.org/index.php?topic=10367.0

Также здесь
http://software.canon-europe.com/software/0040567.asp
лежат драйвера, которые судя по описанию работают с LBP6000B. В архиве RPM и DEB пакеты, а также исходники. Если вам очень повезет - то может удаться их собрать под фряху.

Аватара пользователя
alex117
ст. сержант
Сообщения: 323
Зарегистрирован: 2010-07-30 13:25:13

Re: Scan+Print server FreeBSD статья

Непрочитанное сообщение alex117 » 2013-11-23 16:10:09

PPD пробовал - но не помогло.
У меня даже нет раздела с Canon в выборе драйвера, а у Вас на скринах есть.
Использую FreeBSD 8.4, но думаю не в этом дело. Порты обновленные

Аватара пользователя
zentarim
мл. сержант
Сообщения: 73
Зарегистрирован: 2010-07-22 23:10:56

Re: Scan+Print server FreeBSD статья

Непрочитанное сообщение zentarim » 2013-11-23 18:44:12

alex117 писал(а):PPD пробовал - но не помогло.
У меня даже нет раздела с Canon в выборе драйвера, а у Вас на скринах есть.
Использую FreeBSD 8.4, но думаю не в этом дело. Порты обновленные

Вы устанавливали пакет драйверов gutenprint-base? Драйвера для Canon должны находится в нем. Я, к сожалению, вполне мог перепутать пакеты с драйверами... На всякий случай привожу все известные мне порты:
/usr/ports/print/gutenprint
/usr/ports/print/foomatic-db
/usr/ports/print/foomatic-db-hpijs (принтеры HP)
/usr/ports/print/ghostscript9
Но, боюсь, они вам не помогут :( У меня нет в списке драйверов для LBP600B. Более того, я не вижу поддержки вашего принтера хоть какими-либо драйверами, кроме официальных. Попробуйте собрать их из исходников. По крайней мере с моим MP540 мне это удавалось (Правда это было давно и на PC-BSD)

Аватара пользователя
alex117
ст. сержант
Сообщения: 323
Зарегистрирован: 2010-07-30 13:25:13

Re: Scan+Print server FreeBSD статья

Непрочитанное сообщение alex117 » 2013-11-25 7:15:36

Пакеты от Canon находятся в gutenprint, как я понял, а не в gutenprint-base, а первый у меня был не установлен, как ни странно.
После установки, все нашлось, но моего LBP6000, как я и думал, там не оказалось. Кстати на убунте тоже пишут, что есть проблемы.
Купил на выходных еще Canon MP 230. Принтер настроил, правда дрова выбрал от MP220,т.к опять же моего нету в списке :-D ,а сканер так и не видит.
В общем плюнул и бросил эту затею. Пришел к выводу, что пока еще нужно выбирать железо под фряху, а не наоборот.

Аватара пользователя
zentarim
мл. сержант
Сообщения: 73
Зарегистрирован: 2010-07-22 23:10:56

Re: Scan+Print server FreeBSD статья

Непрочитанное сообщение zentarim » 2013-11-25 7:43:00

alex117 писал(а):Пакеты от Canon находятся в gutenprint, как я понял, а не в gutenprint-base, а первый у меня был не установлен, как ни странно.
После установки, все нашлось, но моего LBP6000, как я и думал, там не оказалось. Кстати на убунте тоже пишут, что есть проблемы.
Купил на выходных еще Canon MP 230. Принтер настроил, правда дрова выбрал от MP220,т.к опять же моего нету в списке :-D ,а сканер так и не видит.
В общем плюнул и бросил эту затею. Пришел к выводу, что пока еще нужно выбирать железо под фряху, а не наоборот.
Да, к сожалению с фряхой есть такое :( Сам каждый раз бешусь... Но раз уж купили MP230 , может все-таки попробуете запостить сюда вывод

Код: Выделить всё

usbconfig list
dmesg
sane-find-scanner -q
А дальше видно будет.

Аватара пользователя
alex117
ст. сержант
Сообщения: 323
Зарегистрирован: 2010-07-30 13:25:13

Re: Scan+Print server FreeBSD статья

Непрочитанное сообщение alex117 » 2013-12-06 11:37:47

постараюсь вечером сделать, по памяти там вроде был осмысленный вывод, что типа Canon такой то и пр.

Аватара пользователя
zentarim
мл. сержант
Сообщения: 73
Зарегистрирован: 2010-07-22 23:10:56

Re: Scan+Print server FreeBSD статья

Непрочитанное сообщение zentarim » 2013-12-06 21:39:33

alex117 писал(а):постараюсь вечером сделать, по памяти там вроде был осмысленный вывод, что типа Canon такой то и пр.


Было бы хуже, если бы бессмысленный... Запостите сюда, может кто чего сможет подсказать.

Аватара пользователя
sadchok
сержант
Сообщения: 271
Зарегистрирован: 2011-10-13 10:40:54
Откуда: Алтайский край

Re: Scan+Print server FreeBSD статья

Непрочитанное сообщение sadchok » 2013-12-07 20:19:20

Код: Выделить всё

root@samba:~ # uname -a
FreeBSD samba.sadchok.local 10.0-BETA4 FreeBSD 10.0-BETA4 #0 r258774: Sun Dec  1 04:22:09 UTC 2013     root@snap.freebsd.org:/usr/obj/usr/src/sys/GENERIC  i386

root@samba:~ # dmesg | grep -i hp
ugen2.2: <HP> at usbus2
umass0: <HP Photosmart C5200 series, class 0/0, rev 2.00/1.00, addr 2> on usbus2
da0: <HP  1.00> Removable Direct Access SCSI-5 device
ulpt1: <HP Photosmart C5200 series, class 0/0, rev 2.00/1.00, addr 2> on usbus2

root@samba:~ # dmesg | grep -i canon
ugen1.2: <Canon> at usbus1
ulpt0: <Canon Canon CAPT USB Printer, class 0/0, rev 1.10/1.00, addr 2> on usbus1

root@samba:~ # usbconfig list
ugen0.1: <OHCI root HUB SiS> at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE (0mA)
ugen2.1: <EHCI root HUB SiS> at usbus2, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA)
ugen1.1: <OHCI root HUB SiS> at usbus1, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE (0mA)
ugen2.2: <Photosmart C5200 series HP> at usbus2, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (2mA)
ugen1.2: <Canon CAPT USB Printer Canon> at usbus1, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON (0mA)


В веб морде CUPS 1.5.4 в разделе выбора принтеров пусто.
Локальных принтеров не видит.
Подскажите куда копать.
The brain can not be found. Runs the software emulation

Аватара пользователя
zentarim
мл. сержант
Сообщения: 73
Зарегистрирован: 2010-07-22 23:10:56

Re: Scan+Print server FreeBSD статья

Непрочитанное сообщение zentarim » 2013-12-07 22:55:02

Я так понимаю, что вы не видите своего принтера в разделе "Принтеры" сразу после установки CUPS?
Если так, то вам его надо добавить:

Код: Выделить всё

Администрирование -> Добавить принтер

Аватара пользователя
sadchok
сержант
Сообщения: 271
Зарегистрирован: 2011-10-13 10:40:54
Откуда: Алтайский край

Re: Scan+Print server FreeBSD статья

Непрочитанное сообщение sadchok » 2013-12-08 7:19:29

Код: Выделить всё

Администрирование -> Добавить принтер -> Локальные принтеры

Тут пусто.
The brain can not be found. Runs the software emulation

Аватара пользователя
zentarim
мл. сержант
Сообщения: 73
Зарегистрирован: 2010-07-22 23:10:56

Re: Scan+Print server FreeBSD статья

Непрочитанное сообщение zentarim » 2013-12-08 11:46:16

Занятно... а что дает

Код: Выделить всё

ls -la /dev | grep ulpt

?

Аватара пользователя
sadchok
сержант
Сообщения: 271
Зарегистрирован: 2011-10-13 10:40:54
Откуда: Алтайский край

Re: Scan+Print server FreeBSD статья

Непрочитанное сообщение sadchok » 2013-12-08 15:50:55

Код: Выделить всё

root@samba:~ # ls -la /dev | grep ulpt
crw-rw----   1 root  cups      0x70 Dec  8 07:55 ulpt0
The brain can not be found. Runs the software emulation

Аватара пользователя
zentarim
мл. сержант
Сообщения: 73
Зарегистрирован: 2010-07-22 23:10:56

Re: Scan+Print server FreeBSD статья

Непрочитанное сообщение zentarim » 2013-12-08 16:04:08

sadchok писал(а):

Код: Выделить всё

root@samba:~ # ls -la /dev | grep ulpt
crw-rw----   1 root  cups      0x70 Dec  8 07:55 ulpt0
Очень странно... А попробуйте добавить принтер
"Хост или принтер LPD/LPR"
при этом в строке "подключение:" укажите
usb:/dev/ulpt0
Дальше выбор драйвера и т.д.

В принципе я еще видел, что народ жаловался на права доступа (нужно вместо 660 поставить 666). Хотя это вряд ли поможет.

Аватара пользователя
sadchok
сержант
Сообщения: 271
Зарегистрирован: 2011-10-13 10:40:54
Откуда: Алтайский край

Re: Scan+Print server FreeBSD статья

Непрочитанное сообщение sadchok » 2013-12-09 17:18:20

Код: Выделить всё

make config-recursive -C /usr/ports/print/cups-base
make install clean -C /usr/ports/print/cups-base

Так проще (не нужно сидеть и ждать).
The brain can not be found. Runs the software emulation

Аватара пользователя
zentarim
мл. сержант
Сообщения: 73
Зарегистрирован: 2010-07-22 23:10:56

Re: Scan+Print server FreeBSD статья

Непрочитанное сообщение zentarim » 2013-12-09 19:52:31

sadchok писал(а):

Код: Выделить всё

make config-recursive -C /usr/ports/print/cups-base
make install clean -C /usr/ports/print/cups-base

Так проще (не нужно сидеть и ждать).

Это что?


Вернуться в «Про сайт»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя