Установка і настройка сканера під gnu

ВСТАНОВЛЮВАТИ СКАНЕРА У GNU / LINUX
НА ПРИКЛАДІ EPSON PERFECTION 1270
ДЛЯ Debian 4.0 Etch і openSUSE 10.2

Практичний посібник (версія 3.2)

Установка і настройка сканера в операційній системі GNU / Linux має особливості в порівнянні з MS Windows. Це пов'язано не з вадами архітектури GNU / Linux, а з тим, що виробники сканерів тримають в секреті алгоритми роботи своїх пристроїв. При продажу сканери комплектуються, як правило, тільки драйверами для MS Windows (іноді - також для MacOS), які йдуть в бінарному вигляді. Тому написання драйверів під GNU / Linux вдає із себе непросту задачу для ентузіастів цієї операційної системи: потрібен якийсь час, для того, щоб усвідомити принцип дії того чи іншого сканера і написати драйвер. Для більшості новітніх моделей сканерів взагалі немає драйверів під GNU / Linux, або вони не надають повної функціональності. Має сенс перед придбанням сканера упевнитися, що він буде працювати також і під GNU / Linux, відвідавши відповідну сторінку проекту Sane (розшифровується Scanner Access Now Easy, що можна перевести приблизно як "сканувати тепер легко"), що забезпечує підтримку сканерів в GNU / Linux.

Для сканерів, продажі яких почалися 1-3 роки тому, драйвери вже написані і надають в більшості випадків хорошу функціональність під GNU / Linux - особливо якщо модель сканера набула широкого поширення. Однак ряду сканерів для функціонування необхідно так зване "фірмове програмне забезпечення" (firmware) - особлива бінарна програма, яка завантажується в пам'ять сканера на початку роботи ( "бінарник". Іноді її називають також "прошивка"). Проблема полягає в тому, що такі бінарники поширюються виробниками сканерів під особливими пропрієтарними ліцензіями і, як правило, не можуть бути включені до складу дистрибутивів GNU / Linux як частина соотвествующих драйверів сканерів. Тому в більшості випадків потрібна додаткова настройка драйвера сканера в GNU / Linux, чому і присвячена ця замітка.

З'ясовуємо, чи встановлені в системі пакети sane і xsane. В консолі в режимі суперкористувача вводимо команду:

Для кожного пакету дивимося рядок "Стан". Якщо пакети вже встановлені, отримуємо повідомлення про це (перегортаємо інформацію клавішею "пробіл"). В іншому випадку інсталюємо їх командою:

Далі переконуємося, що система бачить сканер. Вводимо команду:

У цьому переліку сканер йде в першому рядку. Важливим параметром є його ідентифікатор (ID), який в даному випадку має значення 04b8: 0120. Перше число (до двокрапки) дає код фірми-виробника (англ. Vendor-ID), друге - код самого пристрою (англ. Product-ID). Потрібно запам'ятати ці значення, вони будуть важливі при подальшій настройці.

Інший спосіб повинен підтвердити, що сканер бачить не просто операційна система, але і пакет sane. Для цього вводимо команду sane-find-scanner і отримуємо наступне повідомлення:

Виділена напівжирним рядок показує, що знайдений сканер і видає ті ж коди для нього, що і команда lsusb.

Установка і настройка сканера під gnu

Як відповідь буде список тих додаткових модулів (backends) до sane. в яких є підтримка даного сканера. У нашому прикладі - це модуль SnapScan. версії якого, починаючи з 1.4, "добре" підтримують цей сканер.

Установка і настройка сканера під gnu

Примітка. Вибір правильного додаткового модуля (backend) вкрай важливий, оскільки в разі помилки можна завдати непоправної шкоди сканера.

Більшість цих модулів знаходяться в пакеті libsane. але для деяких сканерів потрібно буде додатково роінсталліровать пакет libsane-extras (докладніше подивитися його опис можна командою aptitude show libsane-extras).

Установка і настройка сканера під gnu

Переходимо до рядка, в якій дана докладна інформація про наше сканері (Epson Perfection 1270). Тут важливим є те, що для коректної роботи сканер вимагає попереднього завантаження в свою пам'ять спеціального бінарного програмного забезпечення (firmware), яке йде на диску разом зі сканером і являє собою файл під назвою esfw3e.bin:

Установка і настройка сканера під gnu

Де взяти цей файл? В даному випадку - для нашого конкретного прикладу - можна завантажити esfw3e.bin з нашого сайту. Для інших сканерів має сенс спочатку пошукати бінарники в інтернеті, в разі невдачі - шукати на фірмовому диску. На жаль, не завжди вони присутні на диску явно - іноді вони доступні лише після інсталяції в операційній системі MS Windows, як правило - в директорії C: \ Windows \ System32. У разі гострої необхідності можна провести інсталяцію драйвера сканера в віртуальній машині з встановленою там MS Windows або в емуляторі wine. а потім витягти звідти бінарник.

Але як налаштувати потрібний нам модуль (backend) навіть при наявності бінарники? Первинну інформацію про модуль можна знайти в його довідці sane. задавши команду:

При описі модуля з нашого прикладу (snapscan) в керівництві йдеться про те, що він підтримує конкретний тип сканерів (AGFA SnapScan flatbed scanners). Пропонується для більш докладної інформації подивитися сторінку керівництва самого модуля. Що і робимо командою

Там можна прочитати, що конфігураційний файл даного модуля - /etc/sane.d/snapscan.conf і в ньому треба зробити кілька виправлень: вказати тип сканера (у нас - USB) і місце розташування бінарники. Бінарник пропонується розміщувати в директорії / usr / share / sane / snapscan /. Створимо таку директорію і скопіюємо в неї бінарник за допомогою наступних команд:

Зауважте, при цьому на файл esfw3e.bin виставлені такі права:

Переходимо до виправлення конфігураційного файлу snapscan.conf. Попередньо робимо його резервну копію:

Перш за все потрібно змінити таку строчку:

Після слова firmware потрібно вписати реальні шлях і назву нашого бінарники. Оскільки ми скопіювали його в директорію / usr / share / sane / snapscan /. то в цьому рядку треба лише замінити фіктивне ім'я your-firmwarefile.bin на ім'я нашого бінарники - esfw3e.bin. В результаті отримуємо наступний варіант цього рядка:

Налаштування завершено, але поки що зі сканером можна працювати тільки в режимі суперкористувача, що соответстсвует жорсткої політики безпеки дистрибутива Debian, а не зовсім зручно на звичайному робочому столі. Щоб дозволити роботу зі сканером рядовим користувачам, додаємо їх в групу scanner. Це можна зробити в консолі в режимі суперкористувача наступними командами:

Наприклад, для користувача, що має логін dmitry.

Виходимо з режиму суперкористувача і перевіряємо під конкретним користувачем, чи відбулося додавання в групу scanner. давши команду groups:

Примітка. Якщо Ви працювали не в текстовій консолі, а в консолі графічного середовища (наприклад, konsole в KDE), потрібно вийти з графічного середовища і знову увійти, щоб зміни вступили в силу.

Перевіряємо прив'язку модуля до сканера:

Якщо Ви бачите подібну напис - значить, сканер і його додатковий модуль успішно ідентифіковані, можна переходити до сканування. Опис деталей цього процесу і корисні поради Ви можете знайти на сторінці "Сканування в GNU / Linux на прикладі Epson Perfection 1270". В іншому випадку (якщо scanimage нічого не знаходить) потрібно внести додаткові зміни в конфігураційний файл допоміжного модуля.

Налаштування сканера в openSUSE дозволяє використовувати специфічний для цього дистрибутива графічний конфігуратор, що може бути психологічно звичніше для користувачів, лише недавно пересіли з MS Windows.

Перевіряємо, що в системі встановлений пакет для роботи зі сканером sane і графічна оболонка до нього xsane

Вводимо в консолі в режимі суперкористувача команди:

Якщо пакети не встановлені - встановлюємо їх (Меню -> Система -> YaST -> Управління програмним забезпеченням).

Потім підключаємо сканер до комп'ютера. З'являється інформаційне вікно, в якому пропонується налаштувати сканер (див. Рис. 1).


Установка і настройка сканера під gnu

Мал. 1.Інформаціонное вікно при підключенні нового сканера до комп'ютера

Якщо вікно не з'явилося автоматично, перевіряємо, чи бачить система наш сканер: задаємо в консолі команду lsusb. Якщо є рядок з назвою нашого сканера (як в даному випадку: Seiko Epson Corp.), запускаємо програму його налаштування вручну: Меню -> Система -> YaST -> Обладнання -> Сканер.

Відбувається пошук сканерів. Сканер виявляється системою, але виявляється не налаштований (див. Рис. 2).


Установка і настройка сканера під gnu

Мал. 2.Сообщеніе про те, що сканер знайдений, але не налаштований

Натискаємо "Редагувати", вибираємо з двох запропонованих драйверів для Epson Perfection 1270 той, у якого написано: "Потрібно вивантаження прошивки. Драйвер snapscan (пакет sane) забезпечує хорошу функціональність" і натискаємо "Далі" (рис. 3).


Установка і настройка сканера під gnu

Мал. 3.Вибіраем працюючий варіант драйвера для сканера Epson Perfection 1270 (драйвер snapscan)

З'являється попередження про те, що прошивку треба взяти з Windows-драйвера і подивитися інструкцію з налаштування через команду "man sane-snapscan" (рис. 4).


Установка і настройка сканера під gnu

Мал. 4.Предупрежденіе про необхідність установки бінарної прошивки

В результуючому вікні тепер видно як і раніше ненастройнний наш сканер Epson Perfection 1270 і ненастроєного драйвер snapscan. який буде підтримувати сканер, якщо ми знайдемо і встановимо прошивку (тобто висвічуються окремо потрібний нам сканер - але без драйвера, і потрібний нам драйвер - але не асоціювання зі сканером) - див. рис. 5.


Установка і настройка сканера під gnu

Мал. 5.Драйвер і сканер поки ще не налаштовані - потрібно прошивка

У цьому вікні, тим не менш, є цінна інформація для подальшої настройки драйвера: vendor ( "виробник"): 0x04b8, product ( "модель"): 0x0120. Ці відомості треба запам'ятати. Поки можна закрити це вікно.

Тепер треба десь знайти "прошивку" (завантажується в пам'ять сканера бінарник) і пов'язати з нею наш драйвер snapscan. Зазвичай бінарник має розширення .bin.

Для деяких сканерів ці бінарники включені в пакети iscan. iscan-firmware і iscan-proprietary-drivers. які поставляється з openSUSE 10.2. Щоб дізнатися, чи є там бінарник для бажаної моделі сканера, потрібно всього лише подивитися опис цього пакета в YaST (Меню -> Система -> YaST -> Управління програмним забезпеченням. Потім "Пошук": ім'я пакета, див. Закладку "Опис") - див. рис. 6.

Установка і настройка сканера під gnu

Мал. 6.Інформація про моделях сканерів, бінарники для яких представлені в пакеті iscan

Якщо бінарник потрібного сканера представлений в пакеті, встановлюємо пакет.

Якщо доступу до комп'ютера з встановленою на ньому MS Windows і інсталювати там сканером необхідної моделі немає, то залишається шукати бінарник або на інсталяційному CD (але там він представлений в явному вигляді далеко не завжди), або в інтернеті. Для Epson Perfection 1270 бінарники прошивки на інсталяційному CD в явному вигляді немає, його можна завантажити звідси: esfw3e.bin.

Після того, як знайдений необхідний бінарник необхідно відповідним чином налаштувати драйвер snapscan з програми sane. який буде забезпечувати роботу нашого сканера. Докладну інструкцію можна прочитати, набравши в консолі: З інструкції слід, що треба скопіювати бінарник esfw3e.bin в директорію / usr / share / sane / snapscan і при цьому змінити конфігураційний файл /etc/sane.d/snapscan.conf. Все це необхідно зробити з правами суперкористувача: Копіюємо бінарник esfw3e.bin у вказану директорію: Про всяк випадок, зберігаємо первинну версію конфігураційного файлу snapscan.conf під ім'ям snapscan.conf.back. Редагуємо snapscan.conf. Необхідно рядок відредагувати так: і в кінці файлу додати такі рядки щодо нашого сканера (інформацію про виробника і моделі ми запам'ятали трохи вище): Зберігаємо файл (Ctrl-S). Виходимо з нього.

Запускаємо знову Меню -> YaST -> Обладнання -> Сканер. Отримуємо налаштований на драйвер snapscan сканер Epson Perfection 1270 (див. Рис. 7).

Установка і настройка сканера під gnu

Мал. 7.Настроенний сканер Epson Perfection 1270 під openSUSE 10.2

Тепер сканер повністю налаштований. Можна переходити до сканування. Опис деталей і корисні поради Ви можете знайти на сторінці "Сканування в GNU / Linux на прикладі Epson Perfection 1270".

Схожі статті