Внимание, эту статью я писал для личного пользования. Она не может служить заменой официальному руководству, это всего лишь заметка о моём опыте по установке Debian из Linux. Заметка позволит вам установить Debian из другой Linux-системы, но в случае вопросов сверяйтесь с официалиным руководством.
- Определяемся, по силам ли нам данное дело. И стоит ли овчинка выделки?
- Подготовка к развёртыванию базовой системы.
- Разворачиваем базовую систему в точку монтирования.
- Chroot'имся в свежеустановленную базовую систему.
- Настраиваем сетевые интерфейсы
- Настраиваем файловую систему:
- Настраиваем локали и системную(консольную) клавиатуру
- Установка ядра
- Задаём пароль root, и создаём себе пользовательский аккаунт.
- Установка загрузчика Grub2.
- Установка дополнительных пакетов
Определяемся, по силам ли нам данное дело. И стоит ли овчинка выделки?
Для начала определимся, кому такая установка вообще подходит. Если вы уже имеете какой-либо Linux(Live CD, загрузочный USB или установленный дистрибутив), и при этом занимаетесь своими делами в этой системе, и вам неохота записывать загрузочный диск, ждать пока установится новая система, и т.д. - этот способ для вас.
Плюсы данного подхода:- Вы остаётесь в своей системе, можете смотреть видео, общаться, читать книжку или создавать программу, и при этом устанавливать систему.
- Вам не нужно иметь инсталляционный носитель.
- Это очень гибкий способ установки, и вы её контролируете от начала и до загрузки готовой системы.
- Вы можете сразу установить все нужные дополнительно вам пакеты.
- Установка может занять больше времени.
- Все действия и их порядок абсолютно зависят от вас. Будьте осторожны, ведь можно накосячить:)
- Руководства по установке и настройке различных аспектов могут не соответствовать современным реалиям.
- Какая-то мелочь(при установке таким образом ArchLinux”a я всего лишь в конфигурационном файле забыл один восклицатеьный знак, в результате пол-часа не мог понять, почему не работает сеть)
Подготовка к развёртыванию базовой системы.
Итак, у вас есть компьютер с местом на винте, операционная система Linux с подключеннием к интернету и желание установить Debian из вашего Linux?
Для начала надо подготовить разделы на винте. Есть много разных способов разбиения диска. Я удалил на своём винте пару разделов, и буду использовать неразмеченное место. Так-же вы можете использовать resize2fs, parted, gparted или ntfsresize для уменьшения какого-то из ваших разделов. А неразмеченное место выделить для debian.
Один раздел мы отдаём корню файловой системы. Кроме того, желательно выделить отдельный раздел для home, и раздел для подкачки.
Как изменять и создавать разделы, я думаю известно. Для новичков очень удобен Gparted, для продвинутых юзеров консольные утилиты. Результат по любому будет тем же.
Для установки Debian, и созданных на основе данного дистрибутива дистрибутивов, используют официальное средство развёртывания базовой системы - утилиту debootstrap.
Если вы используете Debian-based дистрибутив в качестве базового дистрибутива, с которого будет производится установка, вы должны установить данную программу командой:
apt-get update apt-get install debootstrap
Кроме того можно использовать alien для конвертации deb-пакета в другие форматы пакетов, или просто распаковать данный пакет командой:
mkdir debootstrap cd debootstrap ar -x debootstrap_0.X.X_all.deb cd / zcat /full-path-to-debootstrap/debootstrap/data.tar.gz | tar xv
Создаю точку монтирования для корня файловой системы устанавливаемого Debian:
mkdir /mnt/debian
Монтируем нужный раздел в точку монтирования.
mount /dev/debianvg/debian /mnt/debian
Разворачиваем базовую систему в точку монтирования.
Начинаем разворачивание базовой системы Debian в точку монтирования. Важно обратить внимание на архитектуру, вместо amd64 может быть alpha, arm, armel, hppa, i386, ia64, m68k, mips, mipsel, powerpc, s390 или sparc. Часто это i386, реже arm, остальное вообще экзотика. Вместо squeeze может быть другая ветка, например sid(unstable), или unstable/experimental/testing.
Вместо http://ftp.us.debian.org/debian выберите наиболее быстрое зеркало из ближайших к вам в списке зеркал http://www.debian.org/mirror/list.
debootstrap --arch amd64 squeeze /mnt/debian http://ftp.us.debian.org/debianНа всякий случай стоит подмонтировать эти части рабочей файловой системы в вашу устанавливаемую систему. Но данный шаг не является обязательным, если вы не будете устанавливать Grub.
mount -t proc proc /mnt/debian/proc mount -t sysfs sys /mnt/debian/sys mount -o bind /dev /mnt/debian/dev
Chroot'имся в новую систему.
LANG=C chroot /mnt/debian /bin/bash
Настраиваем сетевые интерфейсы:
nano /etc/network/interfaces
Прописываем адресса DNS и директиву поиска.
nano /etc/resolv.conf
Настраиваем имя хоста, где HostName - имя вашего хоста.
echo HostName > /etc/hostname
И создаём файл /etc/hosts вида описывающий хосты, примерно такого вида:
127.0.0.1 localhost 127.0.1.1 HostName # The following lines are desirable for IPv6 capable hosts ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters ff02::3 ip6-allhostsГде HostName - всё тоже имя вашего хоста, остальное оставьте так, как в примере.
Настраиваем файловую систему:
nano /etc/fstab
Пример:
# файл. система точка монтир. тип параметры дамп проход /dev/debianvg/debian / ext4 defaults 0 1 /dev/disk/by-label/Seagate /mnt/Seagate ext4 defaults 0 2 /dev/debianvg/swap none swap sw 0 0 proc /proc proc defaults 0 0 /dev/debianvg/lucentcode /home ext4 rw,nosuid,nodev 0 2
Важно не забыть настроить proc, потому что иначе могут быть проблеммы с установкой и эксплуатацией системы.
Не забываем про команду mount -a, это смонтирует все файловые системы. Я как-то забыл это сделать после изменения fstab, в результате долго не мог понять что это у меня за проблеммы с установкой.
Настройка символических ссылок на CD-ROM:
cd /media mkdir cdrom0 ln -s cdrom0 cdrom cd / ln -s media/cdromНастраиваем время
Редактируем /etc/default/rcS, настраивая аппаратные часы, я обычно указываю для них UTC, а локальное время с учётом часовых поясов -забота системы.
nano /etc/default/rcS
Настраиваем часовой пояс и т.д.
dpkg-reconfigure tzdata
Настраиваем локали и системную(консольную) клавиатуру
Настраиваем локали, я использую UTF-8 для русского и английского языков. Ставьте локали для нужных вам языков, не стоит замусоривать систему поддержкой множества локалей.
aptitude install locales dpkg-reconfigure locales
Настройка консольной клавиатуры , для вашей локали. Я указываю qwerty и американский английский.
aptitude install console-data dpkg-reconfigure console-data
Установка ядра
Ищем пакет linux-image, доступной версии.
apt-cache search linux-image
Устанавливаем ядрышко. Не стоит ставить сразу несколько разных ядер, у меня это привело к ошибке, лучше потом из готовой системы установить второе ядро.
aptitude install linux-image-2.6.32-5-amd64
Ставим нужные нам пакеты, для поддержки LVM2 и создания initramfs. Это нужно мне, но если вы используете обычные разделы, вам нет смысла ставить lvm2
aptitude install initramfs-tools lvm2 dmsetup
Задаём пароль root, и создаём себе пользовательский аккаунт.
Задаём пароль для аккаунта root.
passwd root
Создаём пользователя, вместо username укажите своё имя пользователя.
adduser username
Я использую группу admin, которой указываю права, сходные с adm. Привычка, делать это не обязательно.
groupadd admin
Добавляем нашего пользователя к группе.
usermod -G admin username
Устанавливаем пакет sudo, и добавляем пользователя к группе sudo.
apt-get install sudo usermod -G sudo username
Используем команду
chown lucentcode /homeдля смены владельца директории, или
chgrp users /homeдля смены группы владельцев директории.
И, наконец устанавливаем режим доступа к директории:
chmod 777 /home
Установка загрузчика Grub2.
aptitude install grub2 grub-install --rechek /dev/вашдиск
Если у вас несколько разных дистрибутивов и вы не хотите разводить беспорядок в вашем grub.cfg, то имеет смысл устанавливать несколько различных загрузчиков, и использовать chainload. Для этого сделайте отдельный раздел для загрузчика первого уровня, и используйте команду:
grub-install --boot-directory=/mnt/grub --no-floppy --recheck /dev/disk/by-label/grub
Где /mnt/grub - это каталог, в который вы подмонтируете ваш раздел. А /dev/disk/by-label/grub - это устройство, представляющее ваш раздел в каталоге /dev.
Затем для каждго из ваших дистрибутивов используйте команду:
grub-install --rechek /dev/раздел с корнем вашей системы
Или, если вы не хотите записывать grub2 в загрузочную область раздела:
grub-install --grub-setup=/bin/true --boot-directory=/boot --no-floppy --recheck /dev/раздел с корнем вашей системы.
Тогда для загрузки вашей системы надо будет в первичном загрузчике grub2(который на отдельном разделе) в grub.cfg прописать примерно следующее:
Вариант для загрузки меню второго уровня, в случае если вы не знаете, что грузить: загрузчик второго уровня, или core.img
menuentry "Наш Linux" { set root=(ваш диск ) configfile /boot/grub/grub.cfg }
Или используя chainload:
menuentry "Наш Linux" { set root=(ваш диск ) chainloader +1 }
Используя core.img:
menuentry "Наш Linux" { set root=(ваш диск ) multiboot /boot/grub/core.img }
Установка дополнительных пакетов
Установим драйвер для нашей видеокарты:
aptitude search nvidia aptitude install nvidia-va-driver
Для установки gnome, установите его командой:
aptitude install gnome
Для установки KDE используем команду:
aptitude install kde
Как варианты, возможен выбор пакетов kde-full(его устанавливает оставленный для совместимости пакет kde), или установить kde-core. Последний вариант предпочтительней, т.к. вы получаете только основные пакеты, а затем установите только то, что вам нужно.
aptitude install xfce4
Возможно, вам больше по душе openbox, fxkb и tint2. Или другое, тоже минималистичное окружение - все они ставятся аналогично, и после перезагруки сразу будут вам доступны.
Установите остальные, нужные вам пакеты, перечисляя их через пробел.
aptitude install пакет1 пакет2 пакет3
Поздравляю, после перезагрузки у вы попадёте в простую(нет многих прикольных наворотов их сферы юзабилити, которые есть в некоторых других системах, вроде Ubuntu), но быструю и гибкую систему.
Вот моя система, после перезагрузки.
4 комментария:
Привет
Пробую повторить подвиг, но затыкаюсь на fstab
Собственно проблема в том что после chroot у меня корень не показывает что он примонтирован и потом при установке ядра ругается на это. После перезагрузки новая система не поднимается, и старая тоже(
Этот шаг вы успешно выполнили? Или были ошибки? Иногда ядро отказывается ставится, если пропустить данный этап установки.
mount -t proc proc /mnt/debian/proc
mount -t sysfs sys /mnt/debian/sys
mount -o bind /dev /mnt/debian/dev
Здравствуйте! Что думаете на счет данных, на мой взгляд полезных, советов . о Debian. Mount и Fdisk. По мне так в этом посте полностью раскрыт данный вопрос.
Для новичков в самый раз. Но есть некоторые моменты, которые не получили должного освещения. Это необходимость указывать тип ФС при монтировании(в некоторых случаях), и использование опции -o для указания кодировки(для старых разделов с древними ФС это иногда обязательно, а то вместо имён файлов увидите кракозябры). Кроме того, монтировать устройство можно и через /dev/disk/by-label и /dev/disk/by-uuid - лично я предпочитаю использовать эти методы, ведь зная метку диска, можно не лезть каждый раз в fdisk -l. А запомнить имя диска и использовать его не проверив вывод в fdisk опасно, можно не тот диск использовать. При подключении, и отключении новых жёстких дисков, расположение их в /dev/ меняется. Был раздел sdb2, может стать sdc2:)
Отправить комментарий