В начало → Описание альтернативных способов установки Gentoo Linux → Установка Gentoo из существующей Linux-системы |
Что необходимо
Для установки Gentoo из существующей системы Linux вам должна быть доступна команда chroot, а также копия установочного tarball-а Gentoo, либо его ISO-образ. Не помешает доступ в сеть, если вы не хотите ограничиваться тем, что есть в вашем tarball-е. (к слову, tarball — это просто файл, заканчивающийся на .tbz иди .tar.gz). Автор (ориг.текста) использовал RedHat Linux 7.3 как "базовую" ОС, хотя это не так уж важно. Итак, приступим!
Обзор
Сначала надо отвести раздел для Gentoo, изменив размер существующего раздела Linux, смонтировать его, разархивировать tarball, chroot внутрь нашей псевдо-системы, и начинаем строительство. После настройки загрузчика немного поработаем напильником, просто для того, чтобы система была способна загрузиться самостоятельно, перезагружаемся и пользуемся Gentoo.
Как отвести место для Gentoo?
Корневой раздел — это файловая система, примонтированная к /
. Запущенная команда mount показывает, о чем я веду речь. Еще мы можем выполнить df (disk free), чтобы посмотреть, сколько свободного места у нас есть. Прошу заметить — совсем не обязательно кромсать ваш root
раздел! Вы можете отрезать в любом другом месте, доступном вашей программе редактирования разделов жесткого диска, но мы поговорим
об этом чуть позже.
Листинг 22. Информация о файловых системах
#
mount
/dev/hdb2 on / type ext3 (rw) none on /proc type proc (rw) none on /dev/pts type devpts (rw,gid=5,mode=620) none on /dev/shm type tmpfs (rw,nodev,nosuid,noexec) # df -h Filesystem Size Used Avail Use% Mounted on /dev/hdb2 4.0G 1.9G 2.4G 82% / none 38M 0 38M 0% /dev/shm
Как видите, раздел, смонтированный как /, носит имя /dev/hdb2 и на нем еще свободно 2.4 гигабайта. В моем случае, думаю, 400 МБ свободного пространства хватит с головой, следовательно, под Gentoo отводим 2 ГБ. Совсем неплохо, учитывая, что большинству пользователей хватит и одного гигабайта. Приступим!
Сборка parted для переразбивки разделов
Parted — утилита, поддерживаемая GNU foundation, старым, респектабельным, безразмерным проектом, софтом которого мы в данный момент и собираемся воспользоваться. Всего одним инструментом, который вполне нам подходит. Называется он parted, partition editor, загрузить его можно из http://www.gnu.org/software/parted/
Конечно, существуют и другие инструменты для работы с разделами, но автор не уверен/не интересуется, сможет ли PartitionMagic(tm) или любая другая программа сделать то, что нам нужно. Проверить — это забота читателя.
Взгляните на ту страницу руководства parted, где речь идет о типе файловой системы, размер которой вы собираетесь изменять,
и узнайте, сможет ли parted это сделать. Если нет, что ж, вам не повезло. Придется убить какой-нибудь раздел и создать по-новому,
чтобы было место для Gentoo. Вперед, качаем программу, устанавливаем. Возникает проблема. Мы хотим изменить размер корневого
раздела, следовательно нам нужно загрузить с дискеты минимальную linux-систему и использовать предварительно скомпилированный
parted для редактирования /
. Если в вашем случае можно отмонтировать выбранный раздел, оставаясь в Linux, вам везёт и нет необходимости делать то, что
описано ниже. Просто соберите parted и запустите его на разделе, который хотите урезать. А вот то, что я сделал в своей системе.
Убедитесь, что действия, которые вы собираетесь проделать с разделом, поддерживаются parted!
Скачайте загрузочный/корневой диск mininux (бесплатный мини-дистрибутив Linux c ядром 2.4 на дискете) с http://mininux.free.fr/uk/, создайте дискету, как описано в прилагающейся документации, вставьте еще одну чистую дискету в дисковод и перейдите к следующему шагу.
Опять замечу, что Linux — синоним понятия "Этот путь не единственный". Наша цель — запустить parted на отмонтированном разделе жесткого диска и это можно сделать не только описанным способом. Вы можете использовать любой другой набор boot/root дискет, не только mininux. Вы можете вообще не выполнять данный шаг, главное, что нужно — отмонтировать файловую систему, которую вы собираетесь использовать под Gentoo, и перекроить ее, используя parted.
Листинг 23. Создание вспомогательной дискеты
#
mkfs.minix /dev/fd0
480 inodes 1440 blocks Firstdatazone=19 (19) Zonesize=1024 Maxsize=268966912
Продолжим со сборкой parted. Если он еще не закачан и не распакован, сделайте это. А затем перейдите в каталог, куда вы его распаковали. И здесь выполните следующий набор команд для сборки утилиты и записи ее на дискету.
Листинг 24. Подготовка вспомогательной дискеты
#
mkdir /floppy; mount -t minix /dev/fd0 /floppy && export CFLAGS="-O3 -pipe -fomit-frame-pointer -static" && ./configure && make && cp parted/parted /floppy && umount /floppy
Поздравляю, вы готовы перезагрузиться и изменять выбранный раздел. Только делайте это после хотя бы беглого просмотра документации
к parted на GNU website. Наберитесь терпения — изменение размера может занять больше получаса на больших дисках. Загрузитесь
с дискеты mininux, а после этого замените загрузочную дискету на вспомогательную, которую мы только что создали. Введите mount /dev/fd0 /floppy и parted будет доступен в папке /floppy
. Нам туда. Запускаете parted и перекраиваете нужный раздел жесткого диска. Когда этот бесконечный процесс наконец завершится,
все будет готово для того, чтобы получить истинное наслаждение, устанавливая Gentoo. Диск, с которым мы работаем — это тот,
на котором находится раздел, размер которого мы меняем. К примеру, если мы хотим изменить /dev/hda3
, то диск, соответственно, будет называться /dev/hda
.
Листинг 25. Команды, которые следует выполнить, загрузившись с mininux
#
mount /dev/fd0 /floppy
#
cd /floppy; ./parted
(parted) print Disk geometry for /dev/hdb: 0.000-9787.148 megabytes Disk label type: msdos Minor Start End Type Filesystem Flags 1 0.031 2953.125 primary ntfs 3 2953.125 3133.265 primary linux-swap 2 3133.266 5633.085 primary ext3 4 5633.086 9787.148 extended 5 5633.117 6633.210 logical 6 6633.242 9787.148 logical ext3 (parted) help resize resize MINOR START END resize filesystem on partition MINOR MINOR is the partition number used by Linux. On msdos disk labels, the primary partitions number from 1-4, and logical partitions are 5 onwards. START and END are in megabytes (parted) resize 2 3133.266 4000.000[диск, с которым мы работаем]
Наберитесь терпения! Компьютер работает! Посмотрите на индикатор обращения к жесткому диску (находится на корпусе), чтобы убедиться, что это так. Процесс может занять от 2 до 30 минут.
Когда процесс завершится, перезагрузитесь в вашу старую linux-систему. После этого откройте документ Настольная книга Gentoo: подготовка дисков и следуйте инструкциям. Дойдя до chroot, используйте следующую команду чтобы очистить переменные окружения:
Листинг 26. Обновление среды при chroot
#
env -i HOME=$HOME TERM=$TERM chroot /mnt/gentoo /bin/bash
#
/usr/sbin/env-update
#
source /etc/profile
Удачи!
В начало → Описание альтернативных способов установки Gentoo Linux → Установка Gentoo из существующей Linux-системы |