Page 1 of 1

Установка Gentoo Linux amd64

Posted: 14 Oct 2017, 16:06
by Hellfireson
В данном гайде я буду устанавливать Linux Gentoo на архитектуру amd64.

До установки необходимо скачать образ "установочного" диска нужной архитектуры с одного из зеркал, например http://mirror.yandex.ru/, для примера я использую образ http://mirror.yandex.ru/gentoo-distfile ... 100729.iso.
Записать его на диск или флешку. Ознакамливаться с системными требованиями думаю нужны нету, главное чтобы процессор поддерживал выбранную архитектуру.

Для начала нам нужен работающий интернет. Самый идеальный вариант если у вас интернет настроен через SOHO-роутер с автоматической раздачей адресов, тогда просто проверьте его, для примера ping yandex.ru. Если нет, то придёться воспользоваться скриптом net-setup eth0, если у вас ethernet или pppoe-setup, а потом pppoe-start, если у вас ADSL. Про подключение по WiFi напишу позже.

Далее следует подготовить жесткий диск для установки: разбить, отформатировать и смонтировать. Для разбивки диска лучше всего воспользоваться утилитой fdisk, например fdisk /dev/sda. Советую создать отдельные разделы для /boot, swap, /, /usr, /var и /home. Размеры следует выбирать в зависимости от поставленных задач, могу лишь продемонстрировать сколько у меня какие разделы занимают:

/dev/sda1 -- /boot = 32Mb (Делать лучше 128Mb или 256Mb)
/dev/sda2 -- swap = 12Gb (Выбирается в зависимости от количество оперативной памяти, total memory*2)
/dev/sda3 -- / = 3,3Gb (Этот раздел вряд ли будет сильно увеличиваться после установки ОС, поэтому его следует сделать с небольшим запасом и всё, например 4,5-5Gb)
/dev/sda4 -- Расширенный раздел.
/dev/sda5 -- /var = 452Mb (В этом разделе хранятся почти все логи (/var/log) имейте это ввиду, чтобы не допустить переполнения. Я бы сделал 2-3Gb)
/dev/sda6 -- /usr = 17Gb (Сюда лучше отдать всё остальное, что конечно на усмотрение пользователя)
/dev/sdb1 -- /home = ххTb (Домашний раздел на своё усмотрение, тут будут хранится все пользовательские файлы и настройки)

Далее выбор предстоит форматировать все созданные разделы. Про выбор файловой системы напишу позже, скажу лишь то, что я отдал свой выбор Ext4 для всех разделов. Например mkfs.ext4 /dev/sda1 и т.д. При создании swap-раздела следует указать тип раздела "82" и потом активировать его следующими командами: mkswap /dev/sda2 и swapon /dev/sda2.

Монтируем разделы командой mount, например mount /dev/sda6 /mnt/gentoo, далее создаём там необходимые директории mkdir /mnt/gentoo/boot и монтируем остальные разделы mount /dev/sda1 /mnt/gentoo/boot.

Качаем stage3 в /mnt/gentoo. cd /mnt/gentoo потом links http://mirror.yandex.ru/gentoo-distfile ... nt-stage3/ выбираем и жмём "D", после скачки "Q" для выхода. Далее распаковываем tar xvjpf stage3-*.tar.bz2.

Далее устанавливаем древо портежей. Качаем http://mirror.yandex.ru/gentoo-distfile ... st.tar.bz2 распаковываем tar xvjf /mnt/gentoo/portage-latest.tar.bz2 -C /mnt/gentoo/usr.

Настраиваем главный конфиг: nano -w /mnt/gentoo/etc/make.conf. Приведу пример своего конфига с небольшими комментариями:

Code: Select all

CFLAGS="-march=core2 -O2 -pipe"  #Указывается тип процессора и флаги оптимизации сборки.
CXXFLAGS="${CFLAGS}"  #Тут указываем тоже самое что и в предыдущем случае.
CHOST="x86_64-pc-linux-gnu"  #Не трогать.
AUTOCLEAN="YES"
MAKEOPTS="-j9" #Количество параллельных процессов компиляции, обычно число ядер+1.
FEATURES="candy parallel-fetch prelink sandbox"
INPUT_DEVICES="keyboard mouse evdev"
VIDEO_CARDS="nvidia vesa fbdev"
ALSA_CARDS="hda-intel CA0106"
LINGUAS="ru"
USE="-cups handbook midi smp id3tag gmp -aqua samba -3dfx -32bit -3dnow -3dnowext -bluetooth -ibm ieee1394 -ipod -ipv6 -qt3 qt4 qt3support -gnome kde -gtk -v4l -v4l2 
    -upnp -pcmcia -jack -wifi apache2 djvu dv dvdr encode gsm joystick -lirc matroska mozilla mp4 nls glibc-omitfp threads openmp qymmx mmxext mmx sse sse2 ssse3 ipv4 ftp 
    userlocales unicode utf8 truetype slang cairo cdr usb acpi hal dbus lm_sensors alsa X xcomposite extensions opengl sdl spell jpeg jpeg2k gif tiff png svg mng tga dga 
    libsamplerate sndfile ffmpeg mp3 mp3rtp vorbis vorbis-psy flac speex a52 aac dts dvd mad amd64codecs musepack real theora vcd wavpack lame xcb radio shout openal 
    openexr gstreamer vidix xanim xv xvmc logitech-mouse tar gzip bzip2 pdf xulrunner custom-optimization branding oss xinerama -pulseaudio mpeg ogg php python quicktime 
    raw szip ssl tcl x264 xvid mysql semantic-desktop java pic cdda cddb dvb sse3 css xattr mplayer -consolekit cue idn udev alisp"
GENTOO_MIRRORS="http://mirror.yandex.ru/gentoo-distfiles" #Главное зеркало
SYNC="rsync://mirror.yandex.ru/gentoo-portage" #Откуда синхронизируется древо портежа
Копируем инфу о DNS: cp -L /etc/resolv.conf /mnt/gentoo/etc/resolv.conf.

Монтируем proc и dev: mount -t proc none /mnt/gentoo/proc и mount -o bind /dev /mnt/gentoo/dev.

==========
ВНИМАНИЕ!!!
Все команды после разбивки жестких дисков до перехода в новую среду, кроме правки make.conf:

Code: Select all

mkfs.ext4 -L Boot /dev/sda1 && mkfs.ext4 -L Root /dev/sda3 && mkfs.ext4 -L Var /dev/sda5 && mkfs.ext4 -L Usr /dev/sda6 && mkfs.ext4 -L Home /dev/sdb1 && mkswap /dev/sda2 && swapon /dev/sda2 && mount /dev/sda3 /mnt/gentoo && mkdir /mnt/gentoo/boot && mkdir /mnt/gentoo/var && mkdir /mnt/gentoo/usr && mkdir /mnt/gentoo/home && mount /dev/sda1 /mnt/gentoo/boot && mount /dev/sda5 /mnt/gentoo/var && mount /dev/sda6 /mnt/gentoo/usr && mount /dev/sdb1 /mnt/gentoo/home && cd /mnt/gentoo && wget http://mirror.yandex.ru/gentoo-distfiles/releases/amd64/current-stage3/stage3-amd64-20100617.tar.bz2 && tar xvjpf stage3-*.tar.bz2 && wget http://mirror.yandex.ru/gentoo-distfiles/snapshots/portage-latest.tar.bz2 && tar xvjf /mnt/gentoo/portage-latest.tar.bz2 -C /mnt/gentoo/usr && cp -L /etc/resolv.conf /mnt/gentoo/etc/resolv.conf && mount -t proc none /mnt/gentoo/proc && mount -o bind /dev /mnt/gentoo/dev
==========

Переход в новую среду: chroot /mnt/gentoo /bin/bash, устанавливаем пароль для учётной записи root: passwd, создание нового окружения: env-update && source /etc/profile && export PS1="(chroot) $PS1".

После перехода в новую среду необходимо обновить дерево portage командой: emerge --sync.

Региональные параметры: nano -w /etc/locale.gen

Code: Select all

ru_RU ISO-8859-5
ru_RU.UTF-8 UTF-8
ru_RU.KOI8-R KOI8-R
ru_RU.CP1251 CP1251
После запустите locale-gen.

Установка часового пояса. Для просмотра имеющихся поясов наберите ls /usr/share/zoneinfo.
Для установки оного cp /usr/share/zoneinfo/НАЗВАНИЕ /etc/localtime.

Установка Ядра.

Установить ядро можно 2мя способами: в ручную и использую genkernel. Выбор конечно за вами, скажу только что я использую genkernel.

Уставновка genkernel и исходников ядра: emerge -v genkernel gentoo-sources.
Для сборки ядра надо набрать genkernel --menuconfig all. Так же можно подпихнуть ему старый конфиг в директорию /usr/src и указать ключь --oldconfig, чтобы он его задействовал.

Конфигурирование файловых систем: nano -w /etc/fstab.

Образец:

Code: Select all

UUID=eeeecf2b-64ad-477e-9982-78714cd9f390       /boot                           ext4            noauto,noatime                                          1 2
UUID=7ae004ef-128d-4a49-9cd7-b02e83b1e16c       /                               ext4            noatime                                                 0 1
UUID=8ab3f684-77fc-4e24-917d-8dd43dd48a90       /usr                            ext4            noatime                                                 0 1
UUID=ec74a88c-353b-4ae3-a261-fce4535bf65c       /var                            ext4            noatime                                                 0 1
UUID=86d7e4f7-9567-4107-83ab-0c58321363a5       none                            swap            sw                                                      0 0
UUID=5add9846-7552-4b8e-96d1-236695724abc       /home                           ext4            noatime                                                 0 1
Чтобы узнать UUID всех разделов наберите dlkid.

Далее требуется настроить параметры сети в следующих файлах:
nano -w /etc/conf.d/hostname
nano -w /etc/conf.d/net
nano -w /etc/hosts

Отредактируйте nano -w /etc/conf.d/keymaps для настройки раскладки клавиатуры.
Так же nano -w /etc/conf.d/clock.

Установка GRUB.

Наберите emerge -v grub, для найтроки отредактируйте nano -w /boot/grub/grub.conf.
Для установки GRUB в загрузочную область одного из жестких дисков наберите grub --no-floppy, потом root (hd0,0) и setup (hd0).
Установочник должен отписаться что всё записано и всё хорошо. Для выхода наберите quit.

Чтобы после перезагрузки у нас заработала сеть потребуется уставноить DHCP: emerge -v dhcpcd.
Так же потребуется установить emerge -v syslog-ng.

Для добавления в автозапуск демонов воспользуйтесь командой: rc-update add ИМЯДЕМОНА default.


Далее первый REBOOT!

Поздравляем, вы в свежеустановленной Linux Gentoo! Далее следует установка одного из окружений рабочего стола...

+ Пишите свои замечания и поправки в эту тему.

НАДО АКТУАЛИЗИРОВАТЬ!