Библиотека сайта rus-linux.net
Установка Linux на ZIP диск с помощью ZIP дисковода, подключаемого к параллельному порту
версия 0.7, 26 января 1998
- Содержание
- 1. Ответственность
- 2. Введение
- 2.1. Что нового
- 2.2. Соглашения
- 2.3. Обновления
- 2.4. Ссылки
- 2.4.1. Благодарности
- 3. Подготовка ZIP диска
- 4. Установка Red Hat 4.2
- 5. Установка Slackware 2.2
- 5.1. Требования
- 5.2. Установка
- 5.3. Что ставить
- 6. Создание /etc/fstab
- 7. Установка в Debian 1.2
- 7.1. Требования
- 7.2. Обзор
- 7.3. Создание исправленного аварийного диска
- 7.3.1. Воспользуйтесь dd (или RAWRITE под DOS) для создания аварийного диска.
- 7.3.2. Соберите новое ядро с поддержкой ZIP дисковода, подключаемого к параллельному порту
- 7.3.3. Подключите новый аварийный диск.
- 7.3.4. Скопируйте ядро
- 7.3.5. Редактирование скрипта 'rdev.sh'
- 7.3.6. Запустите исправленный 'rdev.sh'.
- 7.4. Установите базовую часть Debian на ZIP диск.
- 7.5. Создайте загрузочный диск
- 7.6. Перезагрузите систему.
- 7.7. Настройте базовую часть системы и закончите установку.
- 7.8. Установка модулей, собранных в пункте 7.3.2.
- 8. Мысли вслух.
- 9. Авторские права
1. Ответственность
ВНИМАНИЕ: Я не знаю, работает ли IDE дисковод так же, как и подключаемый к порту принтера, поскольку у меня его нет, поэтому не спрашивайте об этом.
Часть об инсталляции Debian была просто скопирована автором с незначительными изменениями. Поэтому возможно некоторое дублирование указаний.
Этот документ предполагает следующее:
У вас есть ZIP дисковод с интерфейсом для подключения к порту принтера.
У вас уже есть установленный и работающий Linux; этот документ не предназначен для начальной установки Linux.
В ядре имеется поддержка ppa, или загружен модуль, осуществляющий эту поддержку.
Точка монтирования ZIP диска - каталог /iomega.
2. Введение
Этот документ состоит из четырех основных частей, каждая из которых описывает, как установить базовую часть системы Linux на 100МБ ZIP диск, используя дисковод, подключаемый к порту принтера. Первая часть описывает, как подготовить ZIP диск, и является общей для дистрибутивов Red Hat и Slackware. Вторая, третья и четвертая части описывают, как установить Red Hat 4.2, Slackware 2.2 и Debian 1.2 соответственно на ZIP диск.
Примечание: Я знаю, что RedHat 5.0 вышел, но между занятиями и работой я, скорее всего, смогу поработать с ним только в конце мая. Надеюсь, что я также смогу протестировать другие дистрибутивы.
2.1. Что нового
В конце концов я нашел время (хотя я должен был готовиться к экзамену по социологии...) для обновления этого документа. Спасибо всем, кто послал мне комментарии по электронной почте.
Новое в этом документе:
Дистрибутив Debian
LILO на флоппи диске
Новая версия Red Hat (4.2 Biltmore)
Сетевая конфигурация (Для Red Hat; не проверена)
2.2. Соглашения
Обозначает, что следующий текст это команды:
ПРИМЕЧАНИЕ:Обозначает образ экрана:
Текст.
2.4. Ссылки
Installation-HOWTO
SCSI-HOWTO
NET-3-HOWTO (для раздела 4.3.3)
ZIP-Drive (mini-HOWTO)
Патч ядра ParPort kernel patch (дает доступ к сквозному порту принтера) http://www.cyberelk.demon.co.uk/parport/
2.4.1. Благодарности
Раздел 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
3. Подготовка ZIP диска
(Общая для дистрибутивов RedHat и Slackware.) Перед началом убедитесь, что у вас есть доступ к ZIP дисководу; должна иметься поддержка ppa или в ядре, или загруженным модулем. Простой способ убедиться в этом - команда dmesg:
==> dmesg
scsi0 : PPA driver version 0.26 using 4-bit mode on port 0x3bc. scsi : 1 host. Vendor: IOMEGA Model: ZIP 100 Rev: D.08 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 sda2
scsi : 0 hosts. scsi : detected total.то у вас есть поддержка SCSI, но ZIP не был найден.
3.1. Создание разделов на ZIP диске
Для создания разделов на ZIP диске запустите fdisk:
==> fdisk /dev/sda/
Disk /dev/sda: 64 heads, 32 sectors, 96 cylinders Units = cylinders of 2048 * 512 bytes Device Boot Begin Start End Blocks Id System /dev/sda1 1 1 81 82928 83 Linux native /dev/sda2 82 82 96 15360 82 Linux swapЯ создал раздел подкачки, так как хотел иметь возможность использовать этот диск на любой машине.
3.2. Форматирование и подключение ZIP диска
После выхода из fdisk создайте файловую систему на новом разделе:
==> mke2fs -c /dev/sda1
Затем подготовьте раздел подкачки (число блоков (15360) берется из fdisk-а):
==> mkswap -c /dev/sda2 15360
Ну и наконец, подключите ZIP диск:
==> mount /dev/sda1 /iomega -t ext2
3.3. Создание загрузочного диска
Из-за того, что ZIP дисковод, подключаемый к порту принтера, не является настоящим SCSI устройством, с него нельзя загрузиться. Поэтому требуется загрузочный диск, с включенной в ядро (не модулем) поддержкой ppa.
3.3.1. Конфигурация и сборка ядра
Сперва нужно настроить и собрать ядро, с включенной (не модулем) поддержкой ppa. Чтобы включить ее, включите поддержку SCSI:
SCSI support (CONFIG_SCSI) [Y/m/n/?]
Плюс поддержку SCSI дисков:
SCSI disk support (CONFIG_BLK_DEV_SD) [Y/m/n/?]
И, наконец, в SCSI low-level drivers (низкоуровнеые драйверы SCSI), поддержку ppa:
IOMEGA Parallel Port ZIP drive SCSI support (CONFIG_SCSI_PPA) [Y/m/n/?]
Повторюсь, удостоверьтесь в том, что поддержка ppa будет именно в ядре, а не модулем. Более того, без патча ядра для параллельного порта (см. п. 1.4) драйвер ppa не позволит использовать пассивный порт ZIP дисковода для подключения принтера, так что, возможно, вы пожелаете выключить поддержку принтера, подключаемого к параллельному порту:
Parallel printer support (CONFIG_PRINTER) [N/y/m/?]
ПРИМЕЧАНИЕ: Для дополнительной информации по драйверу ppa, смотрите ZIP-Drive mini-HOWTO.
После настройки ядра соберите его:
==> make dep; make clean; make zImage
Новое ядро будет лежать в arch/i386/boot/zImage.
3.3.2. Запись ядра на флоппи-диск
После того, как мне пришлось держать 4 отдельных флоппи-диска с разными ядрами, требовавшими разные параметры (плюс кучу почты, рассказывающей, как это сделать), я включил подраздел, посвященный LILO, в раздел, описывающий создание загрузочного диска.
3.3.2.1. Установка LILO
Для тех, кому нужно или хочется иметь несколько ядер на одном флоппи (на сегодняшний день мои ядра слишком большие), или хочется передавать параметры загрузки (такие как однопользовательский режим) - я перечитал кучу почты об установке LILO на флоппи.
3.3.2.1.1. Создание файловой системы ext2
Для создания файловой системы ext2 на флоппи просто дайте ту же команду, что и для ZIP диска:
==> mke2fs -t /dev/fd0
3.3.2.1.2. Копирование необходимых файлов
Далее убедитесь, что существует каталог для точки монтирования, и подмонтируйте флоппи (я использовал /mnt/floppy):
==> mount /dev/fd0 /mnt/floppy -t ext2
Для правильной загрузки вам нужны будут файлы, используемые LILO на вашей текущей инсталляции Linux.
ПРИМЕЧАНИЕ: расположение файлов ниже взято с моей машины и может не совпадать с вашим.
==> cp /boot/boot.b /mnt/floppy
==> cp /boot/map /mnt/floppy
==> cp /usr/src/linux/arch/i386/boot/zImage /mnt/floppy/vmlinuzDESK
boot=/dev/fd0 map=/mnt/floppy/map install=/mnt/floppy/boot.b prompt compact timeout=50 image=/mnt/floppy/vmlinuzLAP label=Laptop root=/dev/sda1 read-only image=/mnt/floppy/vmlinuzDESK label=Desktop root=/dev/sda1 read-only image=/mnt/floppy/vmlinuzDESK label=rescue root=/dev/hdc1 read-onlyУ меня два ядра: одно для моего 486 лэптопа, требующего эмуляцию сопроцессора в ядре, а второе для моего настольного компьютера. Третий пункт позволяет мне в крайних случаях загрузится с жесткого диска.
Наконец, не демонтируя диск, запустите LILO для его установки на флоппи командой:
==> lilo -C /mnt/floppy/lilo.conf
После успешной установки LILO на флоппи можете пропустить следующих два пункта, если вы конечно не хотите повторить то, что уже сделали :)
3.3.2.2. Установка только ядра
ПРИМЕЧАНИЕ: Этот пункт не относится к установке LILO.
Скопируйте свежесобранное ядро на флоппи-диск:
==> cp arch/i386/boot/zImage /dev/fd0
или
==> cat arch/i386/boot/zImage > /dev/fd0
Да, есть много способов скопировать ядро на флоппи-диск, но последний, мой любимый, не так очевиден. Постарайтесь не забыть >, если вы не фанат просмотра двоичных файлов :)
3.3.2.2.1. Настройка корневого раздела и свопа на флоппи
ПРИМЕЧАНИЕ: Этот пункт не относится к установке LILO.
Как только ядро окажется на флоппи-диске, вам понадобится указать, что корневой раздел находится на ZIP диске: ==> rdev /dev/fd0 /dev/sda1 Я не уверен, что следующая команда нужна, но я все равно ее выполнял. Для указания местонахождения раздела подкачки:
==> rdev -s /dev/fd0 /dev/sda2
4. Установка Red Hat 4.2
Если что-то, связанное с компьютерами, старше 3-х месяцев, то оно может считаться устаревшим и требует обновления. Так как у меня вряд ли найдется свободное время на обновление этого документа с каждой новой версией RedHat, то я постараюсь обновлять его, хотя бы через версию. Что касается остальных дистрибутивов, то, если авторы не вышлют мне обновления, то все останется как есть.
4.1. Что требуется
Я использовал:
Ядро 2.0.30
Дисковод Iomega, подключаемый к параллельному порту
Red Hat 4.2
4.2. Установка пакетов
Когда я впервые решил попробовать установить Red Hat на ZIP диск, я обнаружил, что намного проще использовать загрузочный диск Red Hat. Потом я очнулся. Тщательно разобрался с созданием загрузочного диска, спрашивал об этом даже у разных ребят с Red Hat, но в конце концов начал сдаваться, и в этот момент обнаружил ключ --root утилиты rpm.
4.2.1. Какие пакеты нужны
redhat/redhat-4.2/i386/RedHat/base/comps
Я хотел включить в эту инсталляцию поддержку сети, но из-за того, что в Red Hat настройка сети выполняется из-под X, придется настраивать вручную скрипты из каталога /etc/sysconfig/ (см. раздел 4.3.3), по крайней мере попытаться.
Я решил не устанавливать пакеты для разработки программ, так как ZIP дисковод - довольно медленная штука для компилирования. Я так же решил не устанавливать X, в основном из-за места на диске. Позже я могу попробовать подмонтировать мой жесткий диск и создать символьную ссылку (symbolic link) на /usr, чтобы проверить, могу ли я заставить X работать.
например NetKit-B-0.09-6 был обновлен на NetKit-B-0.09-8, поэтому строка будет такой: *91) NetKit-B-0.09-6 (-8)
(Список создан командой rpm --root /iomega -qa) 1) setup-1.7-2 2) pamconfig-0.51-2 3) filesystem-1.3-1 4) MAKEDEV-2.2-9 5) adduser-1.7-1 6) libc-5.3.12-18 7) SysVinit-2.64-8 8) ash-0.2-8 9) at-2.9b-2 10) libtermcap-2.0.8-4 11) bash-1.14.7-1 12) bc-1.03-6 13) bdflush-1.5-5 14) cpio-2.4.2-4 15) cracklib-dicts-2.5-1 16) tmpwatch-1.2-1 17) crontabs-1.5-1 *18) db-1.85-10 (-11) 19) dev-2.5.1-1 20) diffutils-2.7-5 21) etcskel-1.3-1 22) file-3.22-5 23) fileutils-3.16-1 24) findutils-4.1-11 25) grep-2.0-5 26) groff-1.10-8 *27) ld.so-1.7.14-4 (-5) 28) getty_ps-2.0.7h-4 29) gzip-1.2.4-7 30) mingetty-0.9.4-3 *31) initscripts-2.92-1 (93-1) 32) ed-0.2-5 33) info-3.9-1 34) ncurses-1.9.9e-4 35) libg++-2.7.1.4-5 *36) pwdb-0.54-3 (-4) 37) rootfiles-1.5-1 *38) pam-0.57-2 (-4) 39) redhat-release-4.2-1 40) less-321-3 41) mount-2.5l-2 42) zlib-1.0.4-1 43) rpm-2.3.11-1 44) e2fsprogs-1.10-0 45) sysklogd-1.3-15 46) tar-1.11.8-11 47) passwd-0.50-7 48) gawk-3.0.2-1 49) gdbm-1.7.3-8 50) gpm-1.10-8 51) hdparm-3.1-2 52) kbd-0.91-9 53) slang-0.99.37-2 54) newt-0.8-1 55) kbdconfig-1.4-1 56) ncompress-4.2.4-7 *57) sh-utils-1.16-4 (-5) 58) procinfo-0.9-1 *59) logrotate-2.3-3 (4-1) 60) lilo-0.19-1 61) losetup-2.5l-2 62) linuxthreads-0.5-1 *63) mkinitrd-1.6-1 (7-1) 64) mailcap-1.0-3 *65) man-1.4h-5 (j-1) 66) mt-st-0.4-2 67) modules-2.0.0-5 68) mailx-5.5.kw-6 69) net-tools-1.32.alpha-2 70) procmail-3.10-10 71) procps-1.01-11 72) psmisc-11-4 73) quota-1.55-4 74) readline-2.0-10 75) sed-2.05-6 76) setconsole-1.0-1 77) sendmail-8.8.5-4 78) shadow-utils-960530-6 79) stat-1.5-5 80) tcsh-6.06-10 81) termcap-9.12.6-5 82) textutils-1.22-1 83) time-1.7-1 84) timeconfig-1.8-1 85) util-linux-2.5-38 86) vim-4.5-2 87) vixie-cron-3.0.1-14 88) which-1.0-5 89) zoneinfo-96i-4 90) tcp_wrappers-7.5-1 *91) NetKit-B-0.09-6 (-8) *92) lpr-0.18-1 (19-1) *93) bind-4.9.5p1-2 (9.6-1) *94) bind-utils-4.9.5p1-2 (9.6-1) *95) wu-ftpd-2.4.2b12-6 (b15-1) 96) anonftp-2.3-3 97) zip-2.1-1 98) unzip-5.12-5 99) statserial-1.1-7 100) minicom-1.75-2 101) lrzsz-0.12.14-1 102) dip-3.3.7o-9 103) ppp-2.2.0f-3 104) portmap-4.0-3 105) perl-5.003-8 *106) traceroute-1.0.4.4bsd-2 (1.4a5-1) *107) elm-2.4.25-7 (-8) 108) lynx-2.6-2 109) ncftp-2.3.0-5 110) pine-3.95-2 111) rdate-0.960923-1 112) apache-1.1.3-3 *113) nfs-server-2.2beta16-7 *114) nfs-server-clients-2.2beta16-7 (2.2beta16-8) (2.2beta16-8)После установки вышеприведенного списка у меня осталось свободными 32 МБ!
4.2.1.1. Обновления
Как знают (надеюсь) пользователи Red Hat, некоторые пакеты могут иметь ошибки, связанные с безопасностью (security), или что-то еще может заставить выпустить новую подверсию. Для таких случаев Red Hat выпускает обновления пакетов. Я обновил те пакеты, для которых имелись обновления, они отмечены в списке. Страничка Red Hat с информацией по обновлениям пакетов:
http://www.redhat.com/support/docs/rhl/rh42-errata-general.html
ПРИМЕЧАНИЕ: Перед обновлением пакетов нужно запустить ldconfig, как описано в разделе 3.3.1.1.
4.2.2. Как устанавливать пакеты с помощью rpm; без glint
При использовании rpm для указания подмонтированных каталогов в качестве корня для установки, используйте ключ --root. Я обнаружил, что многие пакеты не устанавливаются, так их пред- или послеустановочные скрипты неправильно работали из-за смены корневого каталога, поэтому используем ключ --noscripts:
==> rpm --root /iomega -i --noscripts PACKAGE.i386.rpm
failed to open /iomega/var/lib/rpm/packages.rpm error: cannot open /iomega/var/lib/rpm/packages.rpmПросто создайте каталог var/lib/rpm :)
==> mkdir /iomega/var; mkdir /iomega/var/lib; mkdir /iomega/var/lib/rpm
4.2.3. Что было первым, pamconfig или pam?
Если кто-нибудь пробовал установить pamconfig, то он заметил, что этот пакет жалуется на отсутствие установленного pam; pam в свою очередь при попытке установки жалуется на отсутствие установленного pamconfig! Этот вопрос о яйце и курице, над которым я поломал голову некоторе время, решается с помощью ключа --nodeps - мы можем заставить pamconfig поставиться; pam зависит не только от pamconfig.
==> rpm --root /iomega -i --nodeps --noscripts pamconfig-0.51-2
4.3. Проблемы после установки пакетов
После того, как все замечательно установилось, диск все же не является рабочим. Я хочу сказать, что если вы попытаетесь загрузиться с дискеты, то далеко не уйдете. Как только init попытается запуститься, вы получите две замечательных ошибки - обе об отсутствии необходимых файлов, которые были бы найдены, если бы при установке пакетов запускались скрипты.
4.3.1. Случай отсутствия /etc/ld.so.cache и libc.so.5
Если вы пытались загрузиться, то получали две ошибки, первую об отсутствии файла /etc/ld.so.cache, вторую об отстутстуии libc.so.5.
4.3.1.1. /etc/ld.so.cache
Как указали многие читатели, мои прошлые указания не работали не совсем так, как мне хотелось. Чтобы этот файл создался, вам нужно запустить ldconfig с подмонтированным ZIP диском:
==> chroot /iomega /sbin/ldconfig
Благодарю Javier Rodriguez за это решение.
4.3.1.2. libc.so.5
Для решения проблемы отсутствия библиотеки вам нужно создать символьную ссылку (symlink), которая была бы создана автоматически при выполнении установочных скриптов.
==> cd /iomega/lib; ln -s libc.so.5.3.12 libc.so.5
Благодарю Darcy Boese за это решение.
4.3.2. Установка пароля root
Точно так же, как был запущен ldconfig, вы можете запустить passwd для смены пароля root в новой системе:
==> chroot /iomega passwd root
4.3.3. Что создает программа установки
ПРИМЕЧАНИЕ: Это очень краткая настройка, которую я не имел возможности проверить. Теоретически она должна работать, но не жалуйтесь, пожалуйста, если она не работает.
/etc/hosts /etc/HOSTNAME /etc/resolv.conf /etc/sysconfig/network /etc/sysconfig/network-scripts/ifcfg-eth0 (or any other network device you may have.)
4.3.4. Настройка сети
При создании этого документа я хотел получить поддержку для моей сетевой карты 3Com 3c595 (которая последние семь месяцев стоит на другой машине.)
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 nsRed 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.
5. Установка Slackware 2.2
ПРИМЕЧАНИЕ: Эта часть не обновлялась.
5.1. Требования
ZIP диск и дисковод (естественно)
Ядро с поддержкой ZIP
ZIP Howto (рекомендуется)
Форматированный 1.44" HD флоппи диск
1 - 2 часа свободного времени
5.2. Установка
Итак, сначала самая веселая часть: определение списка файлов, необходимых для системного диска и пакетов, которые вы хотите установить (если влезут) на ZIP диск.
Я решил, что простейший способ - это установить Slackware непостредственно на ZIP диск. Я решил воспользоваться этим подходом в основном из-за того, что дистрибутив Slackware меньше размером, чем Red Hat, и мне проще будет отсечь то, что не нужно. И тот факт, что я пользуюсь дистрибутивом Slackware, сделал этот выбор явным.
Установка Slackware на ZIP дис довольно проста - запустите root-ом программу установки, выберите в качестве цели установки раздел /iomega, а в качестве источника - местоположение дистрибутива Slackware (cdrom, жесткий диск и т.п.), и следуйте указаниям.
5.3. Что ставить
Самая сложная часть - определение того, что вам нужно, а что нет. Обязательно понадобиться часть 'A' (около 8 мб), остальное на ваше усмотрение.
Я постарался обрезать дистрибутив Slackware до приемлемого размера в 70 мб. При этом в него вошли gcc/g++, perl, X11R6 (НЕ ПОЛНОСТЬЮ!), sendmail, документация (без руководства по разработке программ, но со всеми howto), и набор других нужных мне вещей. На файлы пользователей осталось около 10 мб. YMMV
6. Создание /etc/fstab
(Общая для дистрибутивов Red Hat и Slackware)
/dev/sda1 / ext2 defaults 1 1 /dev/sda2 none swap sw none /proc proc defaults 1 1Сохраните файл, презагрузитесь с созданного загрузочного диска и наслаждайтесь!
(Особо благодарю Mike за напоминание об этой очень важной части - John)
7. Установка в Debian 1.2
ПРИМЕЧАНИЕ: Автор этой части послал мне ее в 11 июня 1997 г.
7.1. Требования
ZIP дисковод, подключаемый к параллельному порту и диск.
2 чистых 1.44 флоппи диска
Полный набор установочных дисков Debian. (загляните в документацию по установке Debian, если забыли? как это сделать)
Несколько часов свободного времени
7.2. Обзор
После нескольких часов сражения с dpkg я решил, что будет проще изменить "аварийный" ("Rescue") диск Debian так, чтобы он понимал ZIP дисковод. Это оказалось очень просто. Далее вы можете использовать этот диск для установки базовой части Debian. После окончания установки базовой части можно запустить систему с загрузочного диска и закончить установку с помощью dselect. Для того, чтобы воспользоваться этим способом, вам понадобится два ядра - одно с поддержкой параллельного порта и RAM диска, второе без поддержки RAM диска.
Если пожелаете, можете пропустить раздел 2 и дать программе установки Debian отформатировать ZIP диск.
7.3. Создание исправленного аварийного диска
Аварийный диск Debian - это загрузочный диск типа SYSLINUX. Он создается на отформатированном в формате MS-DOS флоппи диске со специальным загрузчиком, предотвращающим загрузку MS-DOS. Такой диск очень легко править для создания своей собственной конфигурации загрузки. Пакет 'boot-floppies' Debian содержит набор скриптов для облегчения создания загрузочных дисков. Впрочем, создать диск настолько просто, что я предпочел сделать все вручную. Это немного расходится с философией Debian, но я выше этого :). Краткие указания вы можете найти в файле 'readme.txt' на аварийном диске.
7.3.1. Воспользуйтесь dd (или RAWRITE под DOS) для создания аварийного диска.
Если вы забыли, как это делается, загляните в документацию по установке Debian.
7.3.2. Соберите новое ядро с поддержкой ZIP дисковода, подключаемого к параллельному порту
Включите поддержку ZIP дисковода, подключаемого к параллельному порту (см. пункт 3.3.1), поддержкой RAM диска и загрузочного RAM диска (initial RAM). Кроме того требуется поддержка файловых систем msdos, fat, minix, ext2fs и procfs.
Настройте модули, которые вы желаете видеть в системе, устанавливаемой на ZIP диск.
Соберите ядро:
==> make dep; make clean
==> make bzImage
Соберите модули:
==> make modules
Установим их попозже.
ПРИМЕЧАНИЕ: Убедитесь в том, что вы дали команду 'make bzImage', а не 'make zImage'.
7.3.3. Подключите новый аварийный диск.
==> fdmount fd0
или
==> mount /dev/fd0 /mnt
или
==> whatever :)
7.3.4. Скопируйте ядро
Скопируйте ядро (на платформах i386 оно лежит в каталоге arch/i386/boot/bzImage) в 'linux' на флоппи диске.
7.3.5. Редактирование скрипта 'rdev.sh'
'rdev /mnt/linux /dev/ram0'на:
'rdev /mnt/linux /dev/sda1'
Кроме того, везде, где встречается /mnt/linux, замените его на соответствующий путь. Например, я подключаю мои флоппи диски в /fd0, поэтому меняю /mnt/linux на /fd0/linux.
7.4. Установите базовую часть Debian на ZIP диск.
Загрузитесь с исправленного аварийного диска. Если все пойдет как надо, то вы окажетесь в меню программы установки Debian. Единственное отличие будет в том, что вы будете работать с ZIP диском. Продолжайте установку, как если бы ставили систему на жесткий диск, только подключите в качстве корневой файловой системы /dev/sda1, а в качестве раздела подкачки - /dev/sda2.
Есть еще одно отклонение от стандартного процесса установки - не устанавливайте и/или не настраивайте подгружаемые модули. Они будут установлены позже (пункт 7.3.2).
7.5. Создайте загрузочный диск
Создание загрузочного диска описано в пунктах 3.3.1 и 3.3.2. Если хотите, можете просто выбрать пункт "Create Boot Disk" ("Создать загрузочный диск") во время установки Debian. Мне больше нравится второй способ, так как в этом случае я получаю еще один SYSLINUX диск. Я могу добавить параметры загрузки ядра и изменить приветствие (greeting message), описав в нем, что это за диск. Можно даже назначить функциональные клавиши для просмотра справки. Позже вы можете пересобрать ядро и убрать поддержку RAM-диска, изменив диск вручную. Выбор за вами.
7.6. Перезагрузите систему.
Вставьте загрузочный диск в дисковод и выберите пункт 'Reboot' (перезагрузка) в меню программы установки.
7.7. Настройте базовую часть системы и закончите установку.
ПРИМЕЧАНИЕ: Для следующего пункта вам понадобится установить 'make'.
7.8. Установка модулей, собранных в пункте 7.3.2.
Если вы установили make, то можете подключить раздел жесткого диска с собранным ядром, перейти в нужный каталог и выполнить команду 'make modules_install'. Пример:
==> mount /dev/hda2 /mnt
==> cd /mnt/usr/src/linux
==> make modules_install
ПРИМЕЧАНИЕ: Вам не нужно править /etc/fstab (как в пункте 5). Программа установки Debian уже позаботилась об этом.
8. Мысли вслух.
Уффф. После того как я записал 31 ZIP диск и ZIP дисковод полностью посадил батарейки, я решил: следующее, что я попытаюсь сделать - заставить работать pcmcia на моем лэптопе.
9. Авторские права
Авторские права на русский перевод этого текста принадлежат © 2000 SWSoft Pte Ltd. Все права зарезервированы.
Этот документ является частью проекта Linux HOWTO.
Авторские права на документы Linux HOWTO принадлежат их авторам, если явно не указано иное. Документы Linux HOWTO, а также их переводы, могут быть воспроизведены и распространены полностью или частично на любом носителе, физическом или электронном, при условии сохранения этой заметки об авторских правах на всех копиях. Коммерческое распространение разрешается и поощряется; но, так или иначе, автор текста и автор перевода желали бы знать о таких дистрибутивах.
Все переводы и производные работы, выполненные по документам Linux HOWTO, должны сопровождаться этой заметкой об авторских правах. Это делается в целях предотвращения случаев наложения дополнительных ограничений на распространение документов HOWTO. Исключения могут составить случаи получения специального разрешения у координатора Linux HOWTO, с которым можно связаться по адресу приведенному ниже.
Мы бы хотели распространить эту информацию по всем возможным каналам. Но
при этом сохранить авторские права и быть уведомленными о всех планах
распространения HOWTO. Если у вас возникли вопросы, пожалуйста, обратитесь
к координатору проекта Linux HOWTO по электронной почте:
<linux-howto@metalab.unc.edu>
или к координатору русского
перевода Linux HOWTO компании SWSoft Pte Ltd. по адресу
<linux-howto@asplinux.ru>