Linux mini-HOWTO

         

Авторские права


Авторские права на русский перевод этого текста принадлежат 00 ASPLinux Все права зарезервированы.

Этот документ является частью проекта Linux HOWTO.

Авторские права на документы Linux HOWTO принадлежат их авторам, если явно не указано иное. Документы Linux HOWTO, а также их переводы, могут быть воспроизведены и распространены полностью или частично на любом носителе, физическом или электронном, при условии сохранения этой заметки об авторских правах на всех копиях. Коммерческое распространение разрешается и поощряется; но, так или иначе, автор текста и автор перевода желали бы знать о таких дистрибутивах.

Все переводы и производные работы, выполненные по документам Linux HOWTO, должны сопровождаться этой заметкой об авторских правах. Это делается в целях предотвращения случаев наложения дополнительных ограничений на распространение документов HOWTO. Исключения могут составить случаи получения специального разрешения у координатора Linux HOWTO, с которым можно связаться по адресу приведенному ниже.

Мы бы хотели распространить эту информацию по всем возможным каналам. Но при этом сохранить авторские права и быть уведомленными о всех планах распространения HOWTO. Если у вас возникли вопросы, пожалуйста, обратитесь к координатору проекта Linux HOWTO по электронной почте: linux-howto@metalab.unc.edu> или к координатору русского перевода Linux HOWTO компании ASPLinux по адресу linux-howto@asplinux.ru>



Более подробная информация


Более новые версии программы zip для параллельного порта и техническая информация по драйверу - http://www.torque.net/~campbell/

Информация по многим устройствам для параллельного порта - http://www.torque.net/linux-pp.html

Совместное использование параллельного порта - http://www.cyberelk.demon.co.uk/parport.html

Установка Linux с zip (для машин без CD) - http://metalab.unc.edu/mdw/HOWTO/mini/Install-From-ZIP.html

X интерфейс для программы ziptool - http://www.scripps.edu/~jsmith/jazip/

Информация по конфигурации Lilo - http://metalab.unc.edu/mdw/HOWTO/mini/LILO.html

Информация по использованию bootprompts - http://metalab.unc.edu/mdw/HOWTO/BootPrompt-HOWTO.html

Если вы устанавливаете Linux ОС на Zip или запускаете ОС с Zip - http://metalab.unc.edu/LDP/HOWTO/mini/ZIP-Install.html

Iomega - http://www.iomega.com/

Общая информация для программирования параллельного порта на PC - http://www.lvr.com/parport.htm



Будет ли когда-нибудь в PPA встроена поддержка EPP/ECP?


Версия программы 0.26не поддерживает режим EPP. Версия 1.41 имеет

поддержку EPP. Эта программа также намного быстрее. Смотри раздел по производительности.



Будет ли PPA работать с подключенному к параллельному порту SyQuest EZ135 ?


Нет. EZ135 - IDE устройство с конвертером ShuttlePort parallel -> IDE встроенный в него.

Однако есть некоторая работа по этому драйверу. Проверьте

http://www.torque.net/linux-pp.html



Быстродействие


Со стандартной версией (2.0.x) ядра вы получаете программу ppa.c версии 0.26. Это очень надежная и простая программа. Она получила достаточное распространение и очень неплохо поддерживается. Одно только плохо - программа работает не очень быстро, как того хотелось бы. На моей машине ядро версии 2.0.30, два параллельных порта, pentium 133, 16Мб памяти и 5 Гб eide жесткий диск. Машина обошлась мне в 500. U.S. $ и устройство ZIP в 250 $.

ZIP устройство у меня стоит на втором порту, а принтер на первом. Второй порт находится на старой карте и не поддерживает режим EPP. Таким образом драйвер работает в 4 битном режиме.

Чтобы проверить производительность, я скопировал файл (10.6Мб) с жесткого диска на zip. Время копирования - 7 минут 15 секунд. Копирование с zip на жесткий диск заняло 7 минут.

Я сделал 2 изменения. Первое, я переключил zip на первый порт и установил в BIOS режим EPP для первого порта. В тоже время, я подключил принтер ко второму порту.

Второе, я скачал новую версию программы со странички David Campbells. Затем я установил эту программу.

Прочитайте файл readme, который идет вместе с программой. Потом я запусти тот же тест (копирование файла) снова и скопировал файл с zip и обратно. Копирование на жесткий диск заняло 1 минуту 55 секунд. С жесткого диска на Zip ровно 1 минуту. Сравните - 7:15 и7:00 со старой программой. Это большое усовершенствование по сравнению с версией 0.26.

Далее я отформатировал zip диск в файловую систему ext2. Запустил тот же тест. Результаты соответственно 50 и 40 секунд.

Отчет о производительности

Тест на копирование файла размером 10.6 Мб с zip на диск и обратно. Стандартный порт в режиме 4 бит и программа (версия 0.26) - 7:00 и 7:15 (медленно).

Новая программа (версия 1.41) и режим порта EPP с файловой системой ext2 - 50 и 40 секунд (очень быстро).



Быстрый запуск


ИТАК, вы купили новый ZIP-дисковод, и хотите его использовать. Поддержка zip, и все необходимые модули, бывают встроены в ядра некоторых дистрибутивов. Для начала попробуйте дать команду insmod ppa. (Проверьте, подключен ли дисковод, и вставлен ли в него диск). Если программа ppa не найдена, то пересоберите ядро. На моей машине 2 параллельных порта, один для zip, а второй для принтера. Такая конфигурация все упрощает - не надо переключать кабеля и т.п.

Настройка и сборка ядра:

Перейдите в каталог /usr/src/linux

Дайте команду make xconfig

Опция scsi support = Y

Опция scsi disk support = Y

Опция Iomega zip support - поддержка в виде модуля

Опция printer support - поддержка в виде модуля

Запишите изменения и выйдите из программы конфигурирования

make dep

make clean

make zImage или zlilo или zdisk

make modules

make modules_install

Теперь используйте дисковод:

Загрузите модуль командой insmod ppa

Создайте точку подключения: mkdir /zip

Вставьте форматированный dos-zip-диск в дисковод.

Подключите диск: mount -t vfat /dev/sda4 /zip

Используйте стандартные команды работы с файлами: l /zip, ls /zip, df, cp,

После завершения работы отключите диск umount /zip

Если в предыдущих шагах у вас возникли какие-нибудь проблемы, то читайте следующие главы этого документа, в которых, возможно, будет описание решения проблемы.



Часто задаваемые вопросы


Здесь рассмотрены некоторые вопросы, которые мне часто задаеют. Пожалуйста почитайте ответы на них, перед тем как задать их же!



Что произойдет, если при загрузке в дисководе не будет диска?


Ядро будет пробовать прочитать таблицу разделов, но операция прервется из-за превышения времени ожидания. Нет причин волноваться по этому поводу. Как только вы вставите диск, ядро обратит внимание, что он имеется в устройстве и пересканирует таблицу разделов.

ПОДСКАЗКА: когда вы меняете диски, неплохо бы всегда использовать fdisk, чтобы проверить структуру разделов на новом диске.

BIOS на некоторых SCSI конроллерах будет пытаться читать таблицу разделов на вашем диске в течении загрузки системы. Если вы не можете отключить эту проверку, вам придется всегда загружаться с диском в устройстве.



Диск с утилитами ZIP


Необходимо сделать некоторые действия, если вы хотите использовать диск который идет с устройством ZIP. Программное обеспечение позволяет контролировать защиту от записи на диск. Большинство людей разблокируют диск под DOS, прежде чем использовать его в Linux. Linux не может получить доступ к заблокированному диску, и вы должны разблокировать его с помощью утилиты фирмы Iomega.

Как ожидается, скоро такая утилита будет доступна под Linux.



Дисковод ZIP


Существуют, как минимум, пять или шесть реализаций дисковода Iomega ZIP 100. Все они описаны на сайте Iomega по адресу http://www.iomega.com/product/zip/

Все они работают со специальными картриджами, похожими на 3.5" флоппи-диски, которые содержат в себе 100 Мб данных. На самом деле на диске есть 96 цилиндров по 2048 секторов по 512 байт каждый. Вообще-то, это 96 мегабайт.

Внешний дисковод бывает трех типов:

Для параллельного порта

SCSI

Plus

Внутренний дисковод бывает одним следующих типов:

SCSI

IDE

ATAPI

Внутренние версии могут быть встроены в стандартные слоты 3.5- или 5.25-дюймовых дисководов. Внешние версии представляют из себя небольшую синюю коробочку с внешним блоком питания.

У всех дисководов на передней панели есть большая кнопка. Она используется для выброса диска. Linux запрещает извлечение диска при работе, но, если вы нажмете эту кнопку, то дисковод это запомнит, и выбросит диск после того, как это разрешит программа.



Fdisk, mke2fs, mount, и т.п.


Теперь, когда вы знаете имя устройства ZIP, которое вы установили. С помощью команд управления вы можете работать с этим устройством, как с нормальным диском. fdisk (или cfdisk) используется для управления разделами на диске. mke2fs может использоваться для форматирования раздела под файловую систему ext2 - наиболее часто используемая в Linux. mount - для подсоединения форматированного раздела к вашему дереву каталогов.

Вы можете изучить страницы руководства (man) по этим утилитам, если вы не достаточно знакомы с ними. Предупреждаю, что сейчас существуют несколько версий программы fdisk - будьте внимательны.



Использование ZIP-дисковода


Если в ваше ядро встроены все требуемые компоненты, то оно должно распознать ваш адаптер и устройство во время загрузки. Если вы используете загружаемый модуль для вашего драйвера, то обращение к нему происходит когда он загружен.

В общем случае, SCSI версии и версии устройства ZIP для параллельного порта ведут себя одинаково, за исключением того, что версия для параллельного порта работает медленнее.



Мини-HOWTO: Zip-дисковод


Kyle Dansie
dansie@ibm.net
Перевод: Станислав Рогин, ASPLinux

В этом документе описывается, как настроить и использовать в Linux дисковод Iomegа ZIP.



Могу ли я использовать дисковод, подключенный к параллельному порту, как настоящий SCSI?


Адаптер PPA-3 parallel -> SCSI - выполнен, как единый ASIC чип, который Iomega называет VPI0. Он встроен в контроллер ZIP. Это фактически SCSI шина, но от этого мало толку.

Хотя я не пробовал сравнивать эти две платы, логически кажется, что VPI0 заменяет обычные электрические схемы буферизации, которые требовались бы если SCSI шина была вне пакета.



Могу ли я использовать принтер, подключив его к дисководу ZIP?


Да, но. В настоящее время, вы не можете иметь оба драйвера (lp и ppa) активными на одном параллельном порту. Совместно используемый протокол был разработан и находится на ранней стадии использования, но он не будет доступен до того, как будет выпущен Linux 2.0.

Если вы хотите иметь такую вещь, получите ядро версии 2.1.x и вы получите возможность совместного использования порта. См. http://www.cyberelk.demon.co.uk/parport.html

Проще иметь 2 параллельных порта. Я купил мой второй относительно дешево (15 $) и все работает превосходно. Вы можете использовать один для печати, другой для ZIP. Только соберите ядро с обоими драйверами lp и ppa в качестве модулей. Я использую более новую (1.41) версию ppa, т.о. я только загружаю ppa первым (insmod ppa). Тогда он находит zip на первом порту. Затем загружается lp (insmod lp) и назначает принтеру второй порт. Если вы используете версию 0.26, тогда обновите ее до 1.41 или до более новой. Единственное, что можно сказать относительно этого драйвера - обновите его.



Могу ли я загрузить Linux с ZIP-дисковода?


Это уже сделано и т.о. можно сделать большой диск для аварийного восстановления или использовать его для проверки установки.

http://metalab.unc.edu/LDP/HOWTO/mini/ZIP-Install.html



Могу ли я загрузиться с ZIP-дисковода?


Это зависит от того, что вы используете в качестве главного контроллера. Если ваш контроллер есть в BIOS, тогда да, вы можете загружаться с устройства SCSI ZIP. Вы не можете загружаться с устройства для параллельного порта.

Если у вас есть DOS на основном диске и вы хотите загружать Linux с ZIP диска, вы можете использовать для этого загрузчик LOADLIN. Ваше ядро должно находится где-то на DOS диске, но остальная часть системы может находиться на ZIP. Убедитесь, что ядро которое вы используете имеет корректные встроенные драйверы.

Насколько я знаю, нет никаких установочных загрузочных дискет любых популярных дистрибутивов, которые содержат драйверы ZIP для параллельного порта.



Может ли ZIP-диск быть подключен в процессе загрузки системы?


Все, что вы должны сделать - добавить строку в файл /etc/fstab. Например, если вы всегда держите диск DOS в устройстве, когда загружаетесь, вы должны поместить строку



Можно ли использовать PPA с стриммерами Iomega, подключенными к параллельному порту?


Нет. Это ленточные накопители. Нет никаких SCSI устройств.

Некоторые люди попробовали определить протокол и разрабатывают драйвер для этих устройств. Неплохо бы получить DOS драйвер работающий под DOSemu. Но я еще не слышал, чтобы кто-нибудь добился этого.



Настройка поддержки дисководов ZIP в ядре


Для того, чтобы использовать ZIP-дисковод в Linux, ваше ядро должно поддерживать SCSI, SCSI-диски, и SCSI-контроллер, который вы используете. Если вы не знакомы с процессом пересборки ядра, то читайте HOWTO: Ядро Linux.

Процесс сборки ядра начинается с конфигурирования. В нем вы указываете те функции ядра, которые вам необходимы. Сначала зайдите в каталог cd /usr/src/linux. Существует несколько разных способов конфигурирования ядра. В X windows я использую make xconfig. Также существуют make menuconfig

или make config в командной строке. Самый простой - xconfig.

В разделе SCSI Support (Поддержка SCSI) установите SCSI support(Поддержка SCSI) = Y. Также установите SCSI disk support (Поддержка SCSI-дисков) = Y.

В разделе SCSI low-level drivers (драйверы SCSI) установите IOMEGA Parallel Port ZIP drive SCSI support (Поддержка дисковода IOMEGA ZIP для параллельного порта) = M. M означает "модуль".

В разделе Character Devices (символьные устройства) найдите и установите Parallell Printer support (Поддержка принтера на параллельном порту) = M.

Если вы не очень уверены в чем то из вышеописанного, используйте опцию zdisk при запуске make. В результате этого, новое ядро после сборки будет записано на флоппи-диск. Если вы что-то напутаете, то вы все еще сможете запустить систему с жесткого диска.

Теперь соберите ядро при помощи следующих команд:

make dep

make clean

make zImage или zlilo или zdisk

make modules

make mdoules_install

Подсказка: если вы хотите, чтобы сообщения команды make zImage были записаны в журнал, используйте команду



Переформатирование диска в формате Linux


Если вы хотите создать на диске файловую систему Linux native. Вы должны использовать fdisk:



Почему IOMega использует раздел номер 4?


Это один из самых популярных вопросов, но я не думаю, что кто-то знает определенный ответ на него. Может это просто им в голову пришло, а возможно просто нет никакой причины.



SCSI-версия


Если в вашей системе уже есть SCSI-диск, и вы подключаете ZIP-дисковод к тому же контроллеру, то вам не требуется перенастраивать ядро. Однако, вам все таки лучше это сделать.

Если вы собираете ядро с поддержкой SCSI -версии ZIP-дисковода, то вы должны включить в ядро поддержку SCSI и SCSI-дисков. Вы также должны включить в него поддержку контроллера, который вы будете использовать. Если у вас ZIP Zoom, то выберите драйвер aha152x.

Обязательно прочитайте документацию по вашему адаптеру в SCSI HOWTO, а также все файлы README в каталоге drivers/scsi исходных текстов ядра. Обратите внимание на возможные аргументы запуска модуля. Они могут помочь ядру инициализировать ваш адаптер.

Например, если у вас карта ZIP Zoom, то вам надо добавить что-то типа

aha152x=0x340,11,7,1

в команду загрузки ядра (или добавить это в файл /etc/lilo.conf file). Здесь драйверу карты указываются номера портов ввода-вывода и IRQ карты - убедитесь в том, что эти числа соответствуют положению переключателей на вашей карте.

Вы также можете прочитать BOOTPROMPT HOWTO (автор Paul Gortmaker) для того, чтобы найти более подробную информацию о настройке ядра при помощи LILO или LOADLIN.



Строки файла fstab


Файл /etc/fstab позволяет вам конфигурировать команду mount. Мне нравиться чтобы монтирование и запись на диск мог осуществлять любой пользователь в системе. Я добавил 2 строки в конец файла fstab.

/dev/sda1 /zip ext2 noauto,rw,user,nosuid,sync /dev/sda4 /zipdos vfat noauto,rw,user,nosuid,sync,mode=0777

Эти записи предполагают, что вы имеете директории /zip и a /zipdos. Если вы хотите, чтобы все пользователи могли писать и читать с диска, установите соответствующие права. Например, chmod 666 /zip . Исполняйте chmod под root. Записи в файле fstab также предполагают, что ваш dos диск имеет номер 4 (sda4 в моем случае), и ext2(linux) диск имеет номер 1 (sda1). Вы можете узнать больше об опциях fstab из руководства man mount.

Используя описанные выше записи файла fstab вы можете монтировать диск с файловой системой dos, используя mount /zipdos . Если вы используете linux ext2 диск, тогда применяйте команду mount /zip .



Существующий диск, отформатированный под DOS


Если на вашем ZIP диске файловая система DOS, созданная с помощью утилит фирмы Iomega, то у вас будет только один раздел, /dev/sda4.

Создайте каталог /zip, и присоедините устройство как файловую систему MS-DOS:



Версия ATAPI


Этот дисковод описан на веб-странице по адресу http://www.iomega.com/product/zip/zipatapi.html

Некоторое время производилась IDE-версия этого дисковода. Я думаю, что в большинстве своем, она уже заменена на ATAPI-версию.

Donald Stidwell прислал нам эти советы по использованию ATAPI-версии. Спасибо, Don.

Я использую ATAPI Zip-дисковод, и он работает и с ядром 2.0.32, и с 2.0.33. Я использовал его как в RH 5.0, так и в OpenLinux 1.2 (она сейчас установлена у меня). Для того, чтобы дисковод работал в OpenLinux, я просто включил в ядре поддержку ATAPI флоппи-дисков (ATAPI floppy support). По умолчанию такая поддержка не включена в OpenLinux.

Никаких других драйверов не требуется. Он подключается, как расширенный раздел на 4-ом основном разделе. То есть, у меня это hdb4. Я подключаю его к /mnt/zip без автоподключения. Я не думаю, что у вас могут возникнуть проблемы с автоподключением, просто я думаю о извлечении диска.. Я всегда отключаю подключенные разделы перед тем, как извлечь диск.

Более подробные инструкции по установке ATAPI ZIP читайте в майском (1998 г.) выпуске Linux Gazette. См. раздел "2-центовые советы".



Версия IDE


Я не использовал IDE-версию. Эти советы прислал Eric Backus. Спасибо, Eric.

У меня есть один из этих дисководов. Он входил в комплект поставки моего компьютера Gateway 2000, который я приобрел около года назад. Я думаю, что большинство таких дисководов поставлялись большим OEM-компаниям, таким как Gateway, до того, как появились ATAPI-версии.

Хорошие новости: для работы с эти дисководом не требуется никаких дополнительных модулей, ни каких либо исправлений в ядре. Ядро воспринимает его, как обычные IDE-диск. Он работал в моей системе без проблем, с ядрами 2.0.31 и 2.0.32.

Плохие новости: этот дисковод не использует ATAPI, поэтому вы не можете использовать эмуляцию SCSI-ATAPI - это означает, что вы не можете использовать mtools для установки защиты от записи (или например для извлечения диска).



Версия USB


Этот дисковод описан на веб-странице по адресу http://www.iomega.com/product/zip/imac.html

Эти дисководы выглядят очень красиво, также как и интерфейс USB. Единственная проблема состоит в том, что поддержка интерфейса USB в Linux все еще находится на стадии начальной разработки. Поэтому, к сожалению, этот дисковод в Linux использовать нельзя. Об обновлениях читайте по адресу:

http://peloncho.fis.ucm.es/~inaky/USB/news.html



Я только что его приобрел


Этот дисковод описан на веб-странице по адресу http://www.iomega.com/product/zip/zip250.html

Этот дисковод впервые появился в Январе 1999 года. Я только что его приобрел и он прекрасно работает в Linux. Он работает с драйвером IMM, который есть по адресу http://www.torque.net/~campbell/imm.tar.gz

Настройте драйвер также, как это надо делать с zip plus. Просто загрузите драйвер, распакуйте его, и запустите make. Затем скопируйте файл imm.o в каталог модулей. Это будет /lib/modules/версия_ядра/scsi (вместо версия_ядра подставьте версию вашего ядра). Если вы не знаете номера версии ядра, то вы можете узнать его командой uname -r.


Внешняя SCSI-версия


Этот дисковод описан на веб-странице по адресу http://www.iomega.com/product/zip/zipscsi.html

У внешнего SCSI ZIP-дисковода есть два коннектора DB25F, и два переключателя. Первый переключатель задает SCSI-адрес дисковода. Выбор ограничен адресами 5 и 6. Второй переключатель включает внутренний терминатор, на тот случай, если дисковод - последний в цепи SCSI-устройств. 25-контактные SCSI-коннекторы используют раскладку типа Macintosh. Дисковод поставляется с кабелем, похожим на SCSI-кабели Macintosh, но стандартные кабели и переходники (Centronics, или уплотненные) тоже достаточно просто найти.

Я сам лично не видел внутреннего SCSI-дисковода, но я предполагаю, что на нем будет стандартный 50-контактный DIP SCSI-коннектор и аналогичные переключатели.

Убедитесь в том, что SCSI-адрес, который вы выделите ZIP-дисководу, не конфликтует с другими SCSI-устройствами на той же шине. Также убедитесь в том, что на _физически_ последнем устройстве SCSI-цепи, включен встроенный терминатор, или за ним в цепи включен внешний терминатор.

Если у вас есть внутренний SCSI-диск или CD-ROM, и вы подключаете ваш ZIP-дисковод к существующему адаптеру, то вы должны убрать или отключить все терминаторы, которые есть на карте или устройствах. Терминаторы должны быть только на двух оконечных устройствах SCSI-цепи. Если ваша шина наполовину внутренняя и наполовину внешняя, то терминаторы должны стоять по одному на последних SCSI-устройствах внешней и внутренней половины цепи, а на самой карте терминатора не должно быть.

Проверьте жесткость и правильность подключения всех кабелей.

Конфигурация ядра аналогична тому, что требуется для внутренней реализации SCSI-ZIP-дисковода. См. следующую главу "Встроенная SCSI-версия", в которой приведен пример конфигурации ядра.


Адаптер ZIP ZOOM

Iomega продает SCSI-адаптер, называемый ZIP Zoom. Это один из представителей семейства адаптеров Adaptec AHA1520. У него есть внешний DB25F-коннектор типа Macintosh, совместимый с кабелем, поставляемым с ZIP-дисководом.

Linux поддерживает этот адаптер при помощи драйвера aha152x.



Встроенная SCSI-версия


Установите карту в соответствии с "Руководством по Установке", запоминая номера SCSI ID, IRQ и портов ввода-вывода. (Вам они понадобятся.) Все будет значительно проще, если дисковод и карта используют разные SCSI ID.

Внимание Карта zip zoom всегда использует scsi ID, равное 7. "scsi id" в командах, приведенных ниже, относятся к карте, а не к дисководу. Карта и дисковод должны использовать разные номера scsi id. Например, если карта использует 7, то дисковод должен использовать 5 или что-то другое, отличное от 7.

Пересоберите ядро, включив в него поддержку 'SCSI', 'SCSI disk' и 'AHA152X/2825'. УСТАНОВИТЕ НОВОЕ ЯДРО :-(

Строка, передаваемая ядру при запуске, должна иметь следующий вид:

aha152x=[I/O Port][,IRQ][,SCSI ID][,RECONNECT][,PARITY]

Например:

aha152x=0x140,10,7,1

Если вы используете LILO, то добавьте необходимую строку в командную строку ядра в файле lilo.conf при помощи опции append.

(например: append = "aha152x=0x140,10,7,1")

Если вы используете LOADLIN, то добавьте эту строку в команду загрузки ядра:

(например: loadlin c:\vmlinuz root=/dev/hda3 aha152x=0x140,10,5,1 ro)



ZIP Plus - драйвер IMM


Этот дисковод описан на веб-странице по адресу http://www.iomega.com/product/zip/zipplus.html

Это - самая новая версия внешнего Zip-дисковода. Для работы Zip Plus не используется драйвер ppa, вместо него применяется драйвер imm . Philippe Andersson

прислал нам эти советы по использованию драйвера imm вместе с Zip Plus. Большое спасибо, Philippe.

Во-первых вам надо пересобрать ядро, включив в него следующее:

Поддержку модулей (modules support)

Поддержку SCSI (SCSI support)

Поддержку SCSI дисков (SCSI Disk support)

Драйвер lp должен быть собран в виде модуля (если он вам вообще нужен)

Заметьте, что мы не включаем поддержку какого-то конкретного SCSI-адаптера. Это правильно -- она будет отдельно построена позже.

Затем вам понадобятся исходные тексты драйвера с домашней страницы Dave Campbell (http://www.torque.net/~campbell/imm.tar.gz). На момент написания этого документа (Август 1998 года) текущей является версия 0.18. Разархивируйте этот файл (например в каталог /usr/src). Затем просто дайте команду make. Вы получите необходимый вам модуль (imm.o). Скопируйте его в каталог /lib/modules/$(uname -r)/scsi.

Если у вас был загружен модуль lp, (проверьте это при помощи команды lsmod(1)), то вам надо его выгрузить (rmmod lp), затем загрузить imm.o (insmod imm) и у вас практически все настроено.

Если ZIP-дисковод не был подключен и включен в сеть при загрузке модуля, то вы получите сообщение "init_module: Device or resource busy (Устройство или ресурс заняты)", и модуль не загрузится. (Кстати, оказывается, что для подключения ZIP-дисковода не надо отключать компьютер -- просто убедитесь в том, что модуль не загружен в память и дисковод отключен от сети, затем подключите дисковод к компьютеру, включите его и загрузите модуль.)

Если дисковод был подключен и включен, но в нем не было диска, то модуль загрузится, но выдаст сообщение о том, что он не может прочитать таблицу разделов. Это нормально - таблица разделов загрузится автоматически, когда вы вставите диск.

Если в дисководе был диск, то на экран будет выдана подробная информация, включая данные о разделах на диске, и статус Защиты от Записи. В этом случае он выдаст на экран примерно следующее:

vger:~# insmod imm imm: Version 0.18 imm: Probing port 03bc imm: Probing port 0378 imm: SPP port present imm: ECP with a 16 byte FIFO present imm: PS/2 bidirectional port present imm: Passed Intel bug check. imm: Probing port 0278 scsi0 : Iomega ZIP Plus drive scsi : 1 host. Vendor: IOMEGA Model: ZIP 100 PLUS Rev: J.66 Type: Direct-Access ANSI SCSI revision: 02 Detected scsi removable disk sda at scsi0, channel 0, id 6, lun 0 SCSI device sda: hdwr sector= 512 bytes. Sectors= 196608 [96 MB] [0.1 GB] sda: Write Protect is off sda: sda1 vger:~#

И, напоследок, маленькое замечание: эта версия драйвера блокирует дверцу дисковода на период работы с диском. Если в этом случае нажать кнопку выброса диска, то ничего не произойдет, однако дисковод "запомнит", что вы нажали эту кнопку и выбросит диск сразу после того, как вы отключите все подключенные с него разделы.



Zip100 - версия для параллельного порта


Этот дисковод описан на веб-странице по адресу http://www.iomega.com/product/zip/zippp.html

Его драйвер для Linux существует в нескольких версиях. Версия 0.26 программы ppa.c поставляется в комплекте ядер 2.0.x. Если вше ядро старее, чем 2.0.35, то у вас СТАРАЯ

версия программы.

Зайдите на веб-страницу David Campbell

для того, чтобы получить свежую версию программы. На настоящий момент это версия 1.42.

В нее встроены очень удобные функции автонастройки. Вы НЕ должны сообщать программе базовый адрес ввода-вывода параллельного порта. Программа сама проверит стандартные порты ввода-вывода параллельных портов, и подключит дисковод, если найдет его.

Самая распространенная ошибка, приводящая к проблемам - это загрузка модуля принтера lp до загрузки ppa. Программа ppa должны быть загружена ДО загрузки модуля lp. Модуль lp заблокирует порты, необходимые zip-дисководу, поэтому ppa должна быть загружена первой.

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

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

VFS: Mounted root (ext2 filesystem) readonly. Adding Swap: 102528k swap-space (priority -1) ppa: Version 1.42 ppa: Probing port 03bc ppa: Probing port 0378 ppa: SPP port present ppa: EPP 1.9 with hardware direction protocol ppa: Found device at ID 6, Attempting to use EPP 32 bit ppa: Communication established with ID 6 using EPP 32 bit ppa: Probing port 0278 ppa: SPP port present scsi0 : Iomega parport ZIP drive scsi : 1 host. Vendor: IOMEGA Model: ZIP 100 Rev: D.09 Type: Direct-Access ANSI SCSI revision: 02 Detected scsi removable disk sda at scsi0, channel 0, id 6, lun 0 SCSI device sda: hdwr sector= 512 bytes. Sectors= 196608 [96 MB] [0.1 GB] sda: Write Protect is off sda: sda4 lp2 at 0x0278, (polling)

Вы можете также просмотреть эти сообщения при помощи команды dmesg | more. Вы можете записать эти сообщения в файл командой dmesg > dmesg.txt. Это бывает необходимо при отладке процедуры загрузки системы.

Также вы можете прочесть об этом в разделе Более подробная информация



Что нового


В конце концов я нашел время (хотя я должен был готовиться к экзамену по социологии...) для обновления этого документа. Спасибо всем, кто послал мне комментарии по электронной почте.

Новое в этом документе:

Дистрибутив Debian

LILO на флоппи диске

Новая версия Red Hat (4.2 Biltmore)

Сетевая конфигурация (Для Red Hat; не проверена)



Что ставить


Самая сложная часть - определение того, что вам нужно, а что нет. Обязательно понадобиться часть 'A' (около 8 мб), остальное на ваше усмотрение.

Я постарался обрезать дистрибутив Slackware до приемлемого размера в 70 мб. При этом в него вошли gcc/g++, perl, X11R6 (НЕ ПОЛНОСТЬЮ!), sendmail, документация (без руководства по разработке программ, но со всеми howto), и набор других нужных мне вещей. На файлы пользователей осталось около 10 мб. YMMV



Что требуется


Я использовал:

Ядро 2.0.30

Дисковод Iomega, подключаемый к параллельному порту

Red Hat 4.2



Форматирование и подключение ZIP диска


После выхода из fdisk создайте файловую систему на новом разделе:

==> mke2fs -c /dev/sda1

Затем подготовьте раздел подкачки (число блоков (15360) берется из fdisk-а):

==> mkswap -c /dev/sda2 15360

Ну и наконец, подключите ZIP диск:

==> mount /dev/sda1 /iomega -t ext2



Мысли вслух.


Уффф. После того как я записал 31 ZIP диск и ZIP дисковод полностью посадил батарейки, я решил: следующее, что я попытаюсь сделать - заставить работать pcmcia на моем лэптопе.



Настройте базовую часть системы и закончите установку.


После перезагрузки вы получите работающую (хоть и медленно) с ZIP диска базовую часть системы Debian. Продолжайте установку, как обычно. Я ставил все стандартные утилиты UNIX, документацию, make, gcc, библиотеки, и различные полезные утилиты для работы с файлами. В результате я получал мощную систему аварийной загрузки, с помощью которой мог восстанавливать любые системы в нашем отделе.



Обновления


Любые обновления можно посмотреть на: http://comp.uark.edu/~jwiggins/linuxZIP/



Обзор


После нескольких часов сражения с dpkg я решил, что будет проще изменить "аварийный" ("Rescue") диск Debian так, чтобы он понимал ZIP дисковод. Это оказалось очень просто. Далее вы можете использовать этот диск для установки базовой части Debian. После окончания установки базовой части можно запустить систему с загрузочного диска и закончить установку с помощью dselect. Для того, чтобы воспользоваться этим способом, вам понадобится два ядра - одно с поддержкой параллельного порта и RAM диска, второе без поддержки RAM диска.

Если пожелаете, можете пропустить раздел 2 и дать программе установки Debian отформатировать ZIP диск.



Перезагрузите систему.


Вставьте загрузочный диск в дисковод и выберите пункт 'Reboot' (перезагрузка) в меню программы установки.



Подготовка ZIP диска


(Общая для дистрибутивов RedHat и Slackware.) Перед началом убедитесь, что у вас есть доступ к ZIP дисководу; должна иметься поддержка ppa или в ядре, или загруженным модулем. Простой способ убедиться в этом - команда dmesg:

==> dmesg

Возможно придется использовать more, так как dmesg может быть очень длинным. Вот вырезка из моего:



Проблемы после установки пакетов


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


Случай отсутствия /etc/ld.so.cache и libc.so.5

Если вы пытались загрузиться, то получали две ошибки, первую об отсутствии файла /etc/ld.so.cache, вторую об отстутстуии libc.so.5.

/etc/ld.so.cache

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

==> chroot /iomega /sbin/ldconfig

Благодарю Javier Rodriguez за это решение.

libc.so.5

Для решения проблемы отсутствия библиотеки вам нужно создать символьную ссылку (symlink), которая была бы создана автоматически при выполнении установочных скриптов.

==> cd /iomega/lib; ln -s libc.so.5.3.12 libc.so.5

Благодарю Darcy Boese за это решение.


Установка пароля root

Точно так же, как был запущен ldconfig, вы можете запустить passwd для смены пароля root в новой системе:

==> chroot /iomega passwd root


Что создает программа установки

ПРИМЕЧАНИЕ: Это очень краткая настройка, которую я не имел возможности проверить. Теоретически она должна работать, но не жалуйтесь, пожалуйста, если она не работает.

Исследуя свой компакт-диск с Red Had 4.2 CD-ROM, я нашел кое-что интересное - исходные тексты программы установки. Они лежали в каталоге /midc/src/install. Один из файлов назывался net.c и в нем я обнаружил, какие файлы создаются при работе программы установки. Большиство этих файлов необходимо для работы в сети, но даже если у вас нет сетевой карты, можно использовать localhost для поддержки сети (плюс apache будет ругаться, что он не может определить имя хоста.) Список файлов:

/etc/hosts /etc/HOSTNAME /etc/resolv.conf /etc/sysconfig/network /etc/sysconfig/network-scripts/ifcfg-eth0 (or any other network device you may have.)



Настройка сети

При создании этого документа я хотел получить поддержку для моей сетевой карты 3Com 3c595 (которая последние семь месяцев стоит на другой машине.)

Во-первых, мне нужно было имя, и, так как у меня работает свой собственный сервер имен (name server) (но это уже другая история), я придумал себе имя: dash-dot.wig.org (мне нравится как это звучит). Имя без IP адреса бесполезно, и я взял адрес из подсети 192.168.10.0, зарезервированной для использования вне сети Internet, и поддерживаемой моим сервером имен. Хотя имя машины (hostname) обычно лежит в /etc/HOSTNAME, Red Hat также проверяет /etc/sysconfig/network, так что давайте начнем отсюда. Пример моего /etc/sysconfig/network:

NETWORKING=yes HOSTNAME=dash-dot DOMAINNAME=wig.org GATEWAY= GATEWAYDEV=eth0 NS1=192.168.10.7


Затем, в общем случае, копируем ту же информацию в /etc/HOSTNAME, /etc/resolv.conf и /etc/hosts:

/etc/HOSTNAME:

dash-dot.wig.org


/etc/resolv.conf:

search wig.org nameserver ns.wig.org


/etc/hosts:

127.0.0.1 localhost 192.168.10.99 dash-dot.wig.org dash-dot 192.168.10.7 ns.wig.org ns


Red Hat настраивает все сетевые устройства с помощью скриптов, лежащих в /etc/sysconfig/network-scripts. Настройка скриптов обычно производится программой установки, поэтому мне придется делать все это вручную. Все они начинаются с ifcfg-XXX, где XXX - сетевой интерфейс, поднимаемый ifconfig; например ppp0, eth0 и т.п. В частности я создал файл ifcfg-eth0 со следующим содержимым:

DEVICE=eth0 ONBOOT=yes BOOTPROTO=none BROADCAST=192.168.10.255 NETWORK=192.168.10.0 NETMASK=255.255.255.0 IPADDR=192.168.10.99


И последнее. Чтобы проверить правильность настройки, пока мы находимся в каталоге /etc/sysconfig/network-scripts, запустите:

==> ./ifup ifcfg-eth0 boot

Эта команда выполняет скрипт, поднимающий сетевой интерфейс, настроенный на запуск при загрузке системы.

Для дополнительной информации смотрите документ NET-3-HOWTO.


Соглашения


Обозначает, что следующий текст это команды:

==>

Обозначает примечание:



Создайте загрузочный диск


Создание загрузочного диска описано в пунктах 3.3.1 и 3.3.2. Если хотите, можете просто выбрать пункт "Create Boot Disk" ("Создать загрузочный диск") во время установки Debian. Мне больше нравится второй способ, так как в этом случае я получаю еще один SYSLINUX диск. Я могу добавить параметры загрузки ядра и изменить приветствие (greeting message), описав в нем, что это за диск. Можно даже назначить функциональные клавиши для просмотра справки. Позже вы можете пересобрать ядро и убрать поддержку RAM-диска, изменив диск вручную. Выбор за вами.



Создание /etc/fstab


(Общая для дистрибутивов Red Hat и Slackware)

Последнее, что нужно сделать до перезагрузки - создать файл fstab. Вот что по минимуму должно быть в /iomega/etc/fstab:

/dev/sda1 / ext2 defaults 1 1 /dev/sda2 none swap sw none /proc proc defaults 1 1

Сохраните файл, презагрузитесь с созданного загрузочного диска и наслаждайтесь!

(Особо благодарю Mike за напоминание об этой очень важной части - John)



Создание исправленного аварийного диска


Аварийный диск Debian - это загрузочный диск типа SYSLINUX. Он создается на отформатированном в формате MS-DOS флоппи диске со специальным загрузчиком, предотвращающим загрузку MS-DOS. Такой диск очень легко править для создания своей собственной конфигурации загрузки. Пакет 'boot-floppies' Debian содержит набор скриптов для облегчения создания загрузочных дисков. Впрочем, создать диск настолько просто, что я предпочел сделать все вручную. Это немного расходится с философией Debian, но я выше этого :). Краткие указания вы можете найти в файле 'readme.txt' на аварийном диске.


Воспользуйтесь dd (или RAWRITE под DOS) для создания аварийного диска.

Если вы забыли, как это делается, загляните в документацию по установке Debian.


Соберите новое ядро с поддержкой ZIP дисковода, подключаемого к параллельному порту

Включите поддержку ZIP дисковода, подключаемого к параллельному порту (см. пункт 3.3.1), поддержкой RAM диска и загрузочного RAM диска (initial RAM). Кроме того требуется поддержка файловых систем msdos, fat, minix, ext2fs и procfs.

Настройте модули, которые вы желаете видеть в системе, устанавливаемой на ZIP диск.

Соберите ядро:

==> make dep; make clean

==> make bzImage

Соберите модули:

==> make modules

Установим их попозже.



Создание разделов на ZIP диске


Для создания разделов на ZIP диске запустите fdisk:

==> fdisk /dev/sda/

Ниже таблица разделов, созданная мной:



Создание загрузочного диска


h2>Настройка корневого раздела и свопа на флоппи

ПРИМЕЧАНИЕ: Этот пункт не относится к установке LILO.

Как только ядро окажется на флоппи-диске, вам понадобится указать, что корневой раздел находится на ZIP диске: ==> rdev /dev/fd0 /dev/sda1

Я не уверен, что следующая команда нужна, но я все равно ее выполнял. Для указания местонахождения раздела подкачки:

==> rdev -s /dev/fd0 /dev/sda2



Ссылки


Installation-HOWTO

SCSI-HOWTO

NET-3-HOWTO (для раздела 4.3.3)

ZIP-Drive (mini-HOWTO)

Патч ядра ParPort kernel patch (дает доступ к сквозному порту принтера) http://www.cyberelk.demon.co.uk/parport/


Благодарности

Раздел Slackware 2.2 создан, благодаря помощи Michael Littlejohn mike@mesa7.mesa.colorado.edu

Раздел Debian 1.2 создан, благодаря помощи John D. Blair jdblair@uab.edu

Информация по LILO и многим другим вещам внесена, благодаря помощи Darcy Boese possum@niagara.com

и Javier Rodriguez jrodrigu@nextgeninter.net.mx



Требования


ZIP диск и дисковод (естественно)

Ядро с поддержкой ZIP

ZIP Howto (рекомендуется)

Форматированный 1.44" HD флоппи диск

1 - 2 часа свободного времени


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

2 чистых 1.44 флоппи диска

Полный набор установочных дисков Debian. (загляните в документацию по установке Debian, если забыли? как это сделать)

Несколько часов свободного времени



Установите базовую часть Debian на ZIP диск.


Загрузитесь с исправленного аварийного диска. Если все пойдет как надо, то вы окажетесь в меню программы установки Debian. Единственное отличие будет в том, что вы будете работать с ZIP диском. Продолжайте установку, как если бы ставили систему на жесткий диск, только подключите в качстве корневой файловой системы /dev/sda1, а в качестве раздела подкачки - /dev/sda2.

Есть еще одно отклонение от стандартного процесса установки - не устанавливайте и/или не настраивайте подгружаемые модули. Они будут установлены позже (пункт 7.3.2).



Установка


Итак, сначала самая веселая часть: определение списка файлов, необходимых для системного диска и пакетов, которые вы хотите установить (если влезут) на ZIP диск.

Я решил, что простейший способ - это установить Slackware непостредственно на ZIP диск. Я решил воспользоваться этим подходом в основном из-за того, что дистрибутив Slackware меньше размером, чем Red Hat, и мне проще будет отсечь то, что не нужно. И тот факт, что я пользуюсь дистрибутивом Slackware, сделал этот выбор явным.

Установка Slackware на ZIP дис довольно проста - запустите root-ом программу установки, выберите в качестве цели установки раздел /iomega, а в качестве источника - местоположение дистрибутива Slackware (cdrom, жесткий диск и т.п.), и следуйте указаниям.



Установка Linux на ZIP диск с помощью ZIP дисковода, подключаемого к параллельному порту


John Wiggins
jwiggins@comp.uark.edu
Перевод: Денис Дементьев, ASPLinux

Этот документ полезен тем, у кого есть ZIP дисковод, подключаемый к порту принтера, и кто желает иметь резервную или переносимую копию Linux на ZIP диске.



Установка модулей, собранных в пункте 7.3.2.


Если вы установили make, то можете подключить раздел жесткого диска с собранным ядром, перейти в нужный каталог и выполнить команду 'make modules_install'. Пример:

==> mount /dev/hda2 /mnt

==> cd /mnt/usr/src/linux

==> make modules_install

ПРИМЕЧАНИЕ: Вам не нужно править /etc/fstab (как в пункте 5). Программа установки Debian уже позаботилась об этом.



Установка пакетов


Когда я впервые решил попробовать установить Red Hat на ZIP диск, я обнаружил, что намного проще использовать загрузочный диск Red Hat. Потом я очнулся. Тщательно разобрался с созданием загрузочного диска, спрашивал об этом даже у разных ребят с Red Hat, но в конце концов начал сдаваться, и в этот момент обнаружил ключ --root утилиты rpm.


Какие пакеты нужны

Я определил, какие пакеты нужны для инсталляции, посмотрев файл, найденный на одном из зеркал Red Hat. Он может быть найден на любом зеркале в



х месяцев, то оно может


Если что-то, связанное с компьютерами, старше 3- х месяцев, то оно может считаться устаревшим и требует обновления. Так как у меня вряд ли найдется свободное время на обновление этого документа с каждой новой версией RedHat, то я постараюсь обновлять его, хотя бы через версию. Что касается остальных дистрибутивов, то, если авторы не вышлют мне обновления, то все останется как есть.


Этот документ состоит из четырех


Этот документ состоит из четырех основных частей, каждая из которых описывает, как установить базовую часть системы Linux на 100МБ ZIP диск, используя дисковод, подключаемый к порту принтера. Первая часть описывает, как подготовить ZIP диск, и является общей для дистрибутивов Red Hat и Slackware. Вторая, третья и четвертая части описывают, как установить Red Hat 4.2, Slackware 2.2 и Debian 1.2 соответственно на ZIP диск.
Примечание: Я знаю, что RedHat 5.0 вышел, но между занятиями и работой я, скорее всего, смогу поработать с ним только в конце мая. Надеюсь, что я также смогу протестировать другие дистрибутивы.