Установка Linux на "слабые" машины

Об установке современного дистрибутива Linux на компьютеры классом ниже "пентиума"

[Александр Куприн, ru_classic@mail.ru]

Эта статья описывает мой опыт установки ASPLinux 7.1 на ПК с процессором AMD-5x86-133 и объемом ОЗУ 16Мб. На других параметрах "железа" можно не заострять внимания, т.к. при установке именно эти два были наиболее критичными. Если же вам интересна полная конфигурация ПК, то она приведена в конце статьи. Цель была такова - нужно было настроить шлюз для выхода в Интернет для локальной сети. Единственным "бесхозным" компьютером оказалась "четверка" и единственным дистрибутивом, который мог быть установлен на такой компьютер - был ASPLinux 7.1 Standart Edition (4 CD).

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

Итак, причина отказа фирменной программы установки ASPLinux в том, что она не использует swap-разделы в процессе установки. Неважно где устанавливается ASPLinux на "четверке" или на P-III - проверил - ни гу-гу. Команда swapon -s показывает, что ни один из разделов для свопинга не подмонтирован. Даже, если вы создадите программой установки swap-раздел или у вас будет диск содержать такой раздел - это не поможет. Он не монтируется автоматически. Ему нужно помочь. Как это сделать? Нужно выбрать текстовый режим установки и после появления окна с приветствием и возможностью выбора языка установки нажать Alt+F2. Вы попадете в консоль, где сможете найти все необходимое для создания и монтирования swap-раздела. Все. 8)

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

Т.к. BIOS на этом компьютере 1995 года, то загрузку с CD-ROM он не поддерживает. Поэтому создаем загрузочную дискету. Образы загрузочных дискет лежат на первом компакт-диске дистрибутива в подкаталоге images. У меня установлен Linux-Mandrake RE, поэтому образ я создал командой
cp boot.img /dev/fd0

Если у вас нет ПК с установленным Linux-ом, то дискету можно создать в среде MSDOS/Windows при помощи утилит, расположенных в подкаталоге dosutils первого компакт-диска дистрибутива.

Грузимся с дискеты. Загрузчик предлагает нажать <ESC> для перехода в меню выбора внешнего вида инсталляции - графическая или текстовая. Выбираем текстовую. Ждем несколько минут. Загружается окно приветствия с возможностью выбора языка программы инсталляции (English/Russian). Выбор языка на ваше усмотрение - кому что больше нравиться. Теперь самое интересное. В этот момент программа установки создала в оперативной памяти виртуальный диск, к которому подмонтировала CD-ROM и на который скопировала программы, которые необходимы инсталлятору. Как к ним добраться? Нажмите Alt+F2. Вы попадете в консоль из которой сможете сделать то, что нужно, а именно, создать swap-раздел и подмонтировать его.

Шаг первый. Создаем swap-раздел. Запускаем программу создания разделов диска:
fdisk /dev/hda

Пути можно не указывать, т.к. в переменной среды PATH они есть. В моем случае жесткий диск был не размечен и подключен к первому контроллеру как мастер (hda). Нажимаю клавишу m и получаю список команд. Выбираю команду p - просмотреть таблицу разделов (print the partition table). Список пуст. Теперь создаю раздел. Команда n. fdisk спрашивает какого типа должен быть раздел логический или первичный:

 l logical (5 or over)
 p primary (1-4)

Выбираю второе (p) - primary, т.к. я собираюсь создать всего два раздела swap и /, поэтому нет необходимости создавать логические разделы (количество primary-разделов ограничено 4-я записями в MBR - master boor record - главной загрузочной записи). Следующий вопрос предлагает выбрать номер записи в MBR, где будет записана информация о swap-разделе:

Partition number (1-4):

Выбираю 1. Следующий вопрос предлагает ввести размер раздела:

Last cylinder or +size or +sizeM or +sizeK (1-153, default 153):

Пишу +32M. Размер раздела 32Мб. На цифры в скобках не обращайте внимания - у вас они будут свои. Нажимаю p. Вижу список из одной записи:

 Device Boot Start End Blocks Id System
/dev/hda1 1 5 40131 83 Linux

Итак, есть раздел созданный по умолчанию с идентификатором Linux native. Нужно его поменять. Жму t, потом 1 (порядковый номер раздела, id которого нужно поменять). Затем 82 - это код swap-раздела под Linux. Готово. Теперь нужно записать изменения на диск - w. Форматирую раздел командой:
mkswap /dev/hda1

И монтирую его:
swapon /dev/hda1

Все! Нажимаю Alt+F1 и возвращаюсь к программе инсталляции. Теперь программа инсталляции будет работать в 5-6 раз быстрее и не будет вылетать в самый неподходящий момент. Полтора часа ожидания и ASPLinux 7.1 встал на "четверку".

Обратите внимание на следующий неприятный факт. У вас он может и не случиться, но!.. После установки я заметил, что жесткий диск очень активно работает. Посмотрев файл /etc/fstab я обнаружил, что в нем не прописано монтирование swap-раздела. Поэтому я добавил в него следующую строчку:
/dev/hda1 swap swap defaults 0 0
А чтобы сделать активным swap-раздел без перезагрузки ПК:
swapon /dev/hda1

Все! Можно настраивать компьютер. Удачи.

Полная конфигурация ПК:

 процессор - 5x86-133
 ОЗУ - 16Мб
 HDD - 2Gb Seagate
 видео - S3Trio64+ 1Mb
 CD-ROM - Teac 40x (после инсталляции снят)
 сетевая карта - Combo Realtek 8029
 FDD - 3.5"
 монитор - SVGA 14"

P.S. И еще одна странная особенность, которую я обнаружил позднее, - оказалось, что в lilo.conf была прописана ссылка на образ ядра для многопроцессорных машин - имя образа ядра содержало суффикс smp. Поэтому, пришлось отредактировать lilo.conf так, чтобы в нем был указан образ для однопроцессорных машин. И не забудьте запустить lilo для записи конфигурации...

"Softerra"

[ опубликовано 08/01/2002 ]

Александр Куприн, ru_classic@mail.ru - Установка Linux на "слабые" машины   Версия для печати