The OpenNET Project / Index page

[ новости/++ | форум | wiki | теги ]

Печать на МФУ Samsung во FreeBSD с использованием драйверов Linux
Настройка печати через CUPS на МФУ Samsung SCX-4521F с использованием 
драйверов Linux

Окружение: 
        - FreeBSD 7.1-PRERELEASE i386
        - linux_base-f8 из портов
        - linux-png-1.2.8_2 из портов
        - linux-tiff из портов
        - linux-jpeg-6b.34 из портов
        - linux-xorg-libs-6.8.2_5 из портов
        - cups-base-1.3.9_2 из портов
        - cups-smb-backend-1.0_1 из портов

Предполагается также, что линуксолятор вкомпилирован в ядро/подгружен и работает.
Если он работает нормально, то в sysctl можно увидеть версию ядра:

   # sysctl -a|grep linux

   hw.snd.compat_linux_mmap: 0
   compat.linux.oss_version: 198144
   compat.linux.osrelease: 2.6.16
   compat.linux.osname: Linux

1. Качаем с официального сайта Samsung драйвера для Linux 
(Linux Unified Driver). В моем случае файл назывался UnifiedLinuxDriver.tar.gz.

2. Распаковываем:

   # tar -zxf UnifiedLinuxDriver.tar.gz

3. Копируем ppd-файл с драйвером и нужный фильтр в папки CUPSа. Посмотреть, 
какой именно фильтр нужен, можно в соответствующем Вашему принтеру файлу ppd:

   # cat cdroot/Linux/noarch/at_opt/share/ppd/scx4x21.ppd |grep Filter
   *cupsFilter:  "application/vnd.cups-postscript 0 rastertosamsungspl"

   # mkdir /usr/local/share/cups/model/samsung
   # cp cdroot/Linux/noarch/at_opt/share/ppd/scx4x21.ppd /usr/local/share/cups/model/samsung/
   # cp cdroot/Linux/i386/at_root/usr/lib/cups/filter/rastertosamsungspl /usr/local/libexec/cups/filter/

4. Теперь задача добавить в /compat/linux недостающие либы. Перед тем, как 
запускать линуксячий бинарник, стОит выполнить команду

   # /compat/linux/sbin/ldconfig

Далее нужно выяснить, каких библиотек не хватает. Самый простой способ - запускать 
из командной строки /usr/local/libexec/cups/filter/rastertosamsungspl и смотреть,
чего ему не хватает. Подкладывать их в /compat/linux/lib или /compat/linux/usr/lib
по одной, и запускать /compat/linux/sbin/ldconfig. 

В моем случае не хватало следующих:

        libcups.so.2
        libcupsimage.so.2
        libgnutls.so.13
        libgcrypt.so.11
        libgpg-error.so.0

Найти и скачать RPM-пакеты для нужного релиза Fedroa, в которых есть эти библиотеки, 
можно с помощью Web-сервиса RPM Search, например http://rpm.pbone.net/
Итак, у нас появляется 4 файла rpm:

   # ls -1 *rpm

   cups-libs-1.3.4-2.fc8.i386.rpm
   gnutls-1.6.3-2.fc8.i386.rpm
   libgcrypt-1.2.4-6.i386.rpm
   libgpg-error-1.5-6.i386.rpm

Достаем оттуда библиотеки:

   # rpm2cpio cups-libs-1.3.4-2.fc8.i386.rpm | tar -zxf -
   # rpm2cpio gnutls-1.6.3-2.fc8.i386.rpm | tar -zxf -
   # rpm2cpio libgcrypt-1.2.4-6.i386.rpm | tar -zxf -
   # rpm2cpio libgpg-error-1.5-6.i386.rpm | tar -zxf -

Копируем их в /compat/linux:

   # cp -v lib/libgcrypt.so.11.2.3 lib/libgpg-error.so.0.3.1 /compat/linux/lib/
   lib/libgpg-error.so.0.3.1 -> /compat/linux/lib/libgpg-error.so.0.3.1
   lib/libgcrypt.so.11.2.3 -> /compat/linux/lib/libgcrypt.so.11.2.3
   # cp -v usr/lib/libcups* /compat/linux/usr/lib/
   usr/lib/libcupsimage.so.2 -> /compat/linux/usr/lib/libcupsimage.so.2
   usr/lib/libcups.so.2 -> /compat/linux/usr/lib/libcups.so.2
   # cp -v usr/lib/libgnutls.so.13.3.0 /compat/linux/usr/lib/tls/
   usr/lib/libgnutls.so.13.3.0 -> /compat/linux/usr/lib/tls/libgnutls.so.13.3.0
   # /compat/linux/sbin/ldconfig

5. Если все было сделано правильно, то бинарник должен нормально запуститься:

   # /usr/local/libexec/cups/filter/rastertosamsungspl

   INFO: Usage: rastertosamsungspl job-id user title copies options [file]
   ERROR: Wrong number of arguments

6. Далее идем броузером на http://localhost:631/ и подключаем принтер, как обычно.
В разделе Make/Manufacturer должен появиться Samsung, и далее - в разделе

   Model/Driver - SCX-4x21 Series.

Возможно, пропустил что-то, но в принципе суть изложена.
Аналогичным образом, я думаю, можно завести любой принтер, если к нему есть
нормальные Linux драйверы.
 
11.12.2008 , Автор: Alexander Shikoff
Ключи: freebsd, print, driver, hardware / Лицензия: CC-BY
Раздел:    Корень / Пользователю / Печать

Обсуждение [ Линейный режим | Показать все | RSS ]
 
  • 1.1, xxx, 23:00, 11/12/2008 [ответить] [смотреть все]
  • +/
    >Аналогичным образом, я думаю, можно завести любой принтер, если к нему есть

    нормальные Linux драйверы.

    Впринципе, да. Я таким же образом заводил lexmark z23. В большинсве случаев драйвера для принтеров представляют собой фильтры для cups + user space утилитки.

     
  • 1.2, iZEN, 02:24, 12/12/2008 [ответить] [смотреть все]
  • +/
    Майкл Лукас для установки RPM-пакетов Linux во FreeBSD советует применять вот такую команду:
    # rpm -i --ignoreos --dbpath /var/lib/rpm --root /compat/linux имяпакета
     
  • 1.3, супер, 07:12, 12/12/2008 [ответить] [смотреть все]
  • +/
    а что cups под freebsd нету?
     
     
  • 2.4, anesth, 11:33, 12/12/2008 [^] [ответить] [смотреть все]
  • +/
    Нету. И не будетЪ. И в тексте заметки cups нигде не упоминается.
     
     
  • 3.5, iZEN, 15:13, 12/12/2008 [^] [ответить] [смотреть все]
  • +/
    >Нету. И не будетЪ. И в тексте заметки cups нигде не упоминается.

    :-)

    Интересно, как же я печатаю на сетевом принтере?
    http://izenfire.blogspot.com/2007/09/hp-deskjet-6943-freebsd.html

    CUPS:
    % cd /usr/ports/print/cups/ && make install clean

     
     
  • 4.7, anesth, 02:23, 13/12/2008 [^] [ответить] [смотреть все]  
  • +/
    >>Нету. И не будетЪ. И в тексте заметки cups нигде не упоминается.
    >
    >:-)
    >
    >Интересно, как же я печатаю на сетевом принтере?
    >http://izenfire.blogspot.com/2007/09/hp-deskjet-6943-freebsd.html

    Интересно, а как я на своём сетевом (и на нём же локально) печатаю?

    >CUPS:
    >% cd /usr/ports/print/cups/ && make install clean

    Как у вас с чувством юмора и концентрацией внимания?
    Медленно и по слогам. В тек-сте за-мет-ки cups ниг-де не упо-ми-на-ет-ся.

     
     
  • 5.8, iZEN, 08:38, 13/12/2008 [^] [ответить] [смотреть все]  
  • +/
    >Медленно и по слогам. В тек-сте за-мет-ки cups ниг-де не упо-ми-на-ет-ся.

    Читайте ещё раз:

    "Настройка печати через CUPS на МФУ Samsung SCX-4521F с использованием
    драйверов Linux"

    Вы не видите "CUPS"? А он есть! :))

     
     
  • 6.9, anesth, 18:07, 14/12/2008 [^] [ответить] [смотреть все]  
  • +/
    >Вы не видите "CUPS"? А он есть! :))

    Да нету там никакого "CUPS". А вообще, да, есть.
    А чувства юмора у вас таки нет.

     
  • 2.12, Alexander, 16:48, 08/01/2009 [^] [ответить] [смотреть все]  
  • +/
    >а что cups под freebsd нету?

    Есть. И он используется.
    Просто фильтр и ppd-файл берется из линуксовых драйверов. А чтобы фильтр нормально работал - нужны линуксовые либы, которых нет в дереве портов.

     
  • 1.6, iZEN, 15:16, 12/12/2008 [ответить] [смотреть все]  
  • +/
    Для печати на принтерах Samsung во FreeBSD есть нативный порт ports print splix... весь текст скрыт [показать]
     
     
  • 2.11, Alexander, 16:46, 08/01/2009 [^] [ответить] [смотреть все]  
  • +/
    >Для печати на принтерах Samsung во FreeBSD есть нативный порт!
    >
    >ports/print/splix/
    >WWW: http://splix.sourceforge.net/

    Есть. А Вы видите в списке поддерживаемых принтеров SCX-серию? Я - нет.

     
  • 1.13, maa, 18:16, 17/06/2009 [ответить] [смотреть все]  
  • +/
    Делал подобное для Samsung CLP-610. FreeBSD 7.2 i386, linux_base-f8.
    Вылетают только белые страницы
     
  • 1.14, maa, 18:45, 17/06/2009 [ответить] [смотреть все]  
  • +/
    Но в то же время CLP-510 работает прекрасно.
    Оба используют rastertosamsungsplc
     
  • 1.15, linecommander, 20:29, 22/11/2009 [ответить] [смотреть все]  
  • +/
    \> uname -a

    TrueBSD 2.0-RC2 i386
    FreeBSD MyxaTonomyxa 7.2-STABLE FreeBSD 7.2-STABLE #0: Mon Nov  2 14:05:12 EET 2009     root@truebsd:/usr/obj/usr/src/sys/TRUEBSD  i386

    linux_base-f10 из портов
    cups-base-1.3.10_4 из портов
    cups-smb-backend-1.0_2 из портов

    библиотеки были подставлены из fc10 рпм-ов

    линуксолятор работает

    libgcrypt.so.0 пришлось заменить, так как ldconfig сказал, что она не является символической ссылкой

    Model/Driver - XEROXwc3119(наименование неточно) изначально была взята ппдшка из CDкомплекта, но после установки спликса почему-то начала называть себя спликсовой.

    спликс потянул с собой чтото из ddk-ев

    сейчас работает, но поломанные зависимости libgcrypt не дают работать c pgp и mcabber-ом

    надеюсь, что после ближайшего обновления всё станет на свои места

     

    Ваш комментарий
    Имя:         
    E-Mail:      
    Заголовок:
    Текст:




      Закладки на сайте
      Проследить за страницей
    Created 1996-2017 by Maxim Chirkov  
    ДобавитьРекламаВебмастеруГИД  
    Hosting by Ihor