Linux для пользователя - Виктор Костромин
Шрифт:
Интервал:
Закладка:
Для того, чтобы иметь возможность загружать новое ядро, копию образа ядра (которая после компиляции создана в виде файла…/linux/arch/i386/boot/bzImage) необходимо поместить туда, где у вас расположены загружаемые ядра (обычно это каталог /boot).
Скопируйте в каталог /boot три файла: файлы System.map и vmlinux, появившиеся в каталоге…linux, и файл…/linux/arch/i386/boot/bzImage. Я при копировании добавил к их именам номер версии ядра, превратив их, соответственно, в System.map-2.4.2, vmlinux-2.4.2 и vmlinuz-2.4.2, чтобы не путать с теми ядрами, которые уже были в системе ранее. Переименовывать bzImage в vmlinuz в принципе не обязательно, потому что образ ядра может иметь как то, так и другое имя, и обычно располагается либо в корневом каталоге (/), либо в каталоге /boot.
Далее нам осталось только обеспечить загрузку нового ядра с помощью lilo. Для этого надо вначале подкорректировать файл /etc/lilo.conf. Ваш файл /etc/lilo.conf может иметь примерно такой вид:
boot = /dev/hda2
compact
delay = 50
root = current
image = /boot/vmlinuz-2.2.11-4bc
label = linux
read-only
other = /dev/hda1
table = /dev/hda
label = dos
Начиная со строки image, идут секции конфигурационного файла, соответствующие разным операционным системам, которые должны загружаться по выбору пользователя. В каждой такой секции имеется строка label. В этой строке записывается имя, которое вводится в ответ на приглашение LILO и служит для выбора пользователем загружаемой ОС.
Скопируйте секцию image и замените в новой секции название образа ядра и метку. Файл /etc/lilo.conf примет следующий вид:
boot = /dev/hda2
compact
delay = 50
root = current
image = /boot/vmlinuz-2.2.11-4bc
label = linux
read-only
image = /boot/vmlinuz-2.4.2
label = linux-2.4.2
read-only
other = /dev/hda1
table = /dev/hda
label = dos
После того, как вы откорректировали файл /etc/lilo.conf, необходимо выполнить команду /sbin/lilo, чтобы изменения вступили в силу. Эта команда (которая в руководстве называется map-installer) обновляет карту загрузки системы. Прежде, чем запускать /sbin/lilo для модификации загрузочных процедур, выполните эту команду с параметром -t. При этом будет выполнена вся процедура инсталляции загрузчика, кроме изменения map-файла и записи модифицированного загрузочного сектора, т. е. выполнен тест нового варианта. Если добавить еще опцию -v, это позволит убедиться в том, что сделанные Вами изменения разумны.
Не стоит полностью убирать возможность загрузки предыдущей, работающей версии ядра, тем более, что это никак не мешает загрузке нового ядра, ведь LILO обеспечивает многовариантную загрузку.
Все! После переустановки LILO командами
[root]# /sbin/lilo -t -v
[root]# /sbin/lilo
Вы можете перезагрузить компьютер и выбрать при загрузке новое ядро.
17.6. Заключение
В заключение этой главы необходимо привести несколько коротких замечаний.
Если вы уже компилировали ядро из исходных кодов, то перекачивать полный текст исходников нет необходимости, можно провести обновления ядра через так называемые патчи (patch). Но, поскольку сам я таких операций не производил, рассказать об этом способе не берусь.
В документации к ядру говорится, что команду make config пропускать ни в коем случае нельзя, даже если вы провели самые незначительные обновления в исходных кодах.
Если вы хотите провести перекомпиляцию установленного ядра с минимальными трудозатратами, то вместо make config можно воспользоваться командой make oldconfig, которая задаст вам только вопросы, касающиеся тех параметров, которые вы хотите изменить. Но, насколько я понимаю, ее можно использовать только в том случае, если вы уже проводили установку ядра из исходников в своей системе, поскольку эта команда использует существующий файл ./.config. В этом файле сохраняются все ответы на вопросы, которые были вам заданы при выполнении команды make config. При проведении повторной процедуры конфигурирования ядра командой make oldconfig используется тот ответ на каждый вопрос, который сохранен в файле ./.config. Если же в этом файле нет готового ответа (не задано значение соответствующего параметра), программа конфигурирования будет ждать ответа пользователя. А готового ответа не оказывается в этом файле в двух случаях: если устанавливается обновленная версия ядра, в которой появился новый параметр; если вы закомментировали или удалили строку, соответствующую данному параметру, из файла ./.config.
Поэтому, если вы хотите просто перекомпилировать ядро, чтобы, например, вынести какие-то драйверы в отдельные модули, удалите соответствующие строки из файла ./.config и воспользуйтесь командой make oldconfig вместо make config.
Глава 18. Виртуальный компьютер (система VMware)
Операционная система Linux приобретает все большее число сторонников и уже начинает наступление на рабочие станции и ПК [П20.1]. Существует, однако, одно большое препятствие на пути дальнейшего распространения этой ОС - привычка большинства пользователей ПК работать с Microsoft Office. Пакет этот, несмотря на то, что его часто ругают, пользуется популярностью и, надо признать, заслуженно. Поэтому, даже работая постоянно с ОС Linux, поневоле приходится сталкиваться с файлами, созданными с помощью программ из MS Office, и сохраненными в собственных форматах: DOC, XLS, MDB. Как же быть приверженцам ОС Linux? Как организовать общение с миром приверженцев ОС Windows?
Отвечая на этот вопрос можно сказать, что некоторые офисные пакеты для Linux, например, KOffice, или текстовый процессор AbiWord, умеют работать с файлами MS. Однако, пока что добиться 100%-ной совместимости в этом вопросе не удалось[27]. Можно, конечно, установить две операционные системы в разные разделы диска и перезагружаться в Windows, когда возникнет необходимость поработать с файлами от Microsoft Office [П20.2]. Но это весьма неудобно. Так же неудобны и различные программы-перекодировщики, преобразующие doc-файлы в html или другой открытый формат, доступный для программ под Linux. (С появлением пакета OpenOffice.org ситуация начинает изменяться, см. гл. 12).
Короче говоря, сообщество приверженцев Linux поставлено перед проблемой. И оно, естественно, эту проблему решает и даже несколькими способами. Их основная идея проста - создать эмулятор Windows, работающий под Linux и позволяющий запускать программы этой ОС. Но пути решения этой задачи каждый выбирает разные. Насколько мне известно, наибольших успехов в реализации идеи создания эмулятора на сегодня добились две фирмы: VMware, создавшая систему виртуальных машин VMware, и Netraverse с продуктом Win4Lin [П20.3]. Оба эти продукта фактически позволяют запускать на компьютере вторую операционную систему, одновременно с уже работающей базовой ОС Linux, под управлением которой продолжает работать физический компьютер. В этой главе мы рассмотрим систему виртуальных машин от VMware.
18.1. Что такое "виртуальный компьютер"
Виртуальный компьютер - специальная программа, запускаемая в ОС Linux и моделирующая физический компьютер на основе процессора Intel x86. Монитором виртуального компьютера является окно графической оболочки X Window, в которое производится вывод информации. На рис. 18.1 видно, как выглядит Windows NT 4.0, работающая на виртуальном компьютере, запущенном из ОС Linux.
Примечание
Надо сразу сказать, что отдельная версия системы виртуальных машин разработана фирмой VMware и для того случая, когда базовой ОС является Windows NT/2000, так что можно и Linux запускать в окне графической оболочки Windows. Однако этот вариант здесь не рассматривается.
Рис. 18.1. Windows NT 4.0, запущенная на виртуальном компьютере с базовой ОС Linux
Виртуальный компьютер "строится" из следующего набора виртуальных устройств:
• виртуальные IDE и SCSI жесткие диски;
• виртуальный CD-ROM;
• стандартный дисковод гибких дисков;
• контроллер жестких IDE-дисков Intel 82371 PCI Bus Master, поддерживающий два первичных (primary) и два вторичных (secondary) IDE-диска;
• адаптер SCSI-дисков, совместимый с BusLogic BT-958;
• стандартный PCI графический адаптер, стандартная 101/102-клавишная клавиатура, PS/2-совместимая мышь;
• сетевая карта AMD PCNET Family Ethernet adapter (PCI-ISA);
• последовательные порты COM1-COM4, параллельные порты LPT1-LPT2;
• звуковая карта, совместимая с Sound Blaster 16.
Этот набор виртуальных устройств отличается от набора устройств реального компьютера, на котором запускается виртуальная машина (за исключением некоторых устройств, например, процессора и клавиатуры), и не зависит от последнего. Если операционная система устанавливается непосредственно внутри виртуального компьютера, то в процессе установки все эти устройства определяются корректно. При "включении питания" виртуального компьютера (что делается с помощью специальной кнопки Power On/Off в меню программы-эмулятора), видно, как BIOS осуществляет тестирование "аппаратной части" и даже, как и на физическом компьютере, можно войти в программу Setup, чтобы задать или изменить настройки BIOS. На виртуальный компьютер можно установить любую операционную систему и работать с ней обычным образом.