![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)

Как установить?
Архитектуру процессора знаете? Тогда вперед.
Переходим на страницу get gentoo, выбираем эту самую архитектуру, скачиваем и записываем на диск (или usb-flash, дело вкуса) нужный образ:
stages → current iso → install-$ARCH-minimal-*.iso.
Загрузимся с параметрами по умолчанию.
Для настройки обычного или беспроводного соединения используем команду net-setup eth0, где eth0; имя сетевого интерфейса.
# net-setup eth0
*Для настройки adsl-соединения:
# pppoe-setup
Интернет настроили, идём дальше.
Для создания разметки диска (-ов) воспользуемся cfdisk:
- / - корневой каталог
- /home - директории пользователей
- /boot - загрузочные файлы
- /usr - пользовательские приложения.
- /var - изменяемые приложения, лучше не жадничать хотя бы потому,что там будут компилироваться наши пакеты
- /opt - большой размер нужен для игрового сервера
# cfdisk /dev/sda
где sda - SCSI-диск; hda - IDE-диск. Выбираем что нужно вам.
- news - создание нового раздела
- type - выбор типа файловой системы (83 - Linux, 82 - swap)
- bootable - отметить как загрузочный (укажите для раздела,в который хотите смонтировать /boot!)
- write - записать изменения
- delete - удалить
- quit - выйти

Назначение файловой системы:
# mke2fs /dev/sda1 - создание ext2 на разделе /dev/sda1
# mkfs.ext4 /dev/sda2 - создание ext4 на разделе /dev/sda2
# mkswap /dev/sda3 - создание раздела подкачки на /dev/sda3
# swapon /dev/sda3 - и его активация
# mkfs.ext4 /dev/sda4 - создание ext4 на разделе /dev/sda4
Назначение точек монтирования:
# mount /dev/sda2 /mnt/gentoo - монтируем корень
# mkdir /mnt/gentoo/boot - раздел под загрузчик
# mkdir /mnt/gentoo/home - раздел под /home
# mount /dev/sda1 /mnt/gentoo/boot - монтирование раздела загрузчика
# mount /dev/sda4 /mnt/gentoo/home - монтирование раздела /home
В качестве источника загрузки было использовано зеркало mirror.yandex.ru
Внимательно следите за тем,чтобы загрузить подходящий скачанному вами образу архив.
В примере использован x86.
# cd /mnt/gentoo
# links http://mirror.yandex.ru/gentoo-distfiles/releases/x86/autobuilds/current-stage3--686/current-iso/
Выбираем файл stage3*.tar.bz2 и нажмимаем enter.

Загрузили? Распаковываем:
# tar xvjpf stage3-*.tar.bz
Теперь сделаем снимок дерева портежей.
# links http://mirror.yandex.ru/gentoo-distfiles/releases/snapshots/
Выбираем cнизу portage-latest.tar.bz2
Начнётся загрузка.
Распаковываем (из корневого каталога):
# tar xvjf /mnt/gentoo/portage-latest.tar.bz2 -C /mnt/gentoo
Настройки компиляции ядра хранятся в файле mnt/gentoo/etc/portage/make.conf. Его и открываем любимым редактором (nano, vi) Здесь используются переменные и значения.
Пример:
переменная - CHOST, её значение - i686-pc-linux-gnu - указывает на архитектуру процессора.
Флаг "-march=native" оптимизирует программы под ваше железо.
CFLAGS="-O2 -march=native -pipe"
CXXFLAGS="${CFLAGS}"
Допустимые значения:
- -s оптимизация по размеру
- -0 без оптимизации
- -1 -2 -3 - по скорости
- CXXFLAGS="${CFLAGS}" - не изменяйте её
- MAKEOPTS="-j2" - определяет сколько параллельных процессов компиляции можно запускать при установке пакета. Обычно ставят значение равное количеству ядер процессора +1. Если ваш процессор поддерживает технологию Hyper-threading, разумное значение будет: количество доступных ядер, умноженное на 2 +1. Более тонкой настройки можно пока не делать, займётесь этим позднее.
Действия в примере производятся из каталога /
Выбор зеркала загрузки
# mirrorselect -i -o >> /mnt/gentoo/etc/portage/make.conf
Выбор зеркала rsync:
# mirrorselect -i -r -o >> /mnt/gentoo/etc/portage/make.conf
Нелишним будет скопировать информацию о DNS
# cp -L /etc/resolv.conf /mnt/gentoo/etc/resolv.conf
Монтируем /proc, /sys, /dev
# mount -t proc none /mnt/gentoo/proc
# mount -o bind /dev /mnt/gentoo/dev
# mount -t sysfs none /mnt/gentoo/sys
Переходим в новую среду с помощью chroot
# chroot /mnt/gentoo /bin/bash
# env-update
# source /etc/profile
# export PS1="(chroot) $PS1"
Обновим дерево портежей:
# mkdir /usr/portage
# emerge --sync
Это может занять какое-то время:
# emerge portage - если выдаёт сообщение о новой версии портежей
Выбор профиля:
# eselect profile list
# eselect profile set 6
Приведённые действия не нуждаются в пояснении, всё ясно из названий профилей. Нужно лишь выбрать необходимый вам, исходя из ваших задач.
# nano -w /etc/locale.gen
Вы увидите список закомментированных строк с кодировками, вот сверху или же ниже его впишите:
en_US.UTF-8 UTF-8
en_US ISO-8859-1
ru_RU.UTF-8 UTF-8
ru_RU.KOI8-R KOI8-R
ru_RU.CP1251 CP1251
ru_RU ISO-8859-5
uk_UA.UTF-8 UTF-8
uk_UA.CP1251 CP1251
uk_UA ISO-8859-5
uk_UA.KOI8-U KOI8-U
сохраните изменения и выйдите: Ctrl+O, Ctrl+Q
# locale-gen
Настройка времени:
# cp /usr/share/zoneinfo/Europe/Kiev /etc/localtime
Можете скопировать любое место вашей дислокации из /usr/share/zoneinfo
Ядро
Скачаем исходники ядра:
# USE="-doc symlink" emerge gentoo-sources
Установка ядра
Способ 1 - всё и сразу
# emerge genkernel
# genkernel all
В результате получим ядро с поддержкой нужного и ненужного. Плюс этого способа - простота.
Примечание: сделаем правки в /etc/genkernel.conf, включив в нём параметры:
OLDCONFIG="yes"
MENUCONFIG="yes"
CLEAN="no"
MRPROPER="no"
В таком случае вы сможете собрать своё ядро, а genkernel сделает всё остальное. После сборки можете просто проверить название созданного ядра и initrd, а затем обратиться к дальнейшему пункту о сборке программ:
# ls /boot/kernel* /boot/initramfs*
Способ 2 - только то, что нужно
# emerge pciutils (с её помощью вы сможете посмотреть аппаратную часть своего ПК)
# cd /usr/src/linux (переход в каталог с исходниками)
# make menuconfig (вызов меню с настройками)
Здесь всё индивидуально. Используете usb-мышь или клавиатуру? Проверьте включена ли их поддержка. Хотите, чтобы система понимала NTFS? Проверьте включена ли её поддержка. Настроек хватит всем и
на всё: тип процессора, видео, звук, поддержка файловых систем, девайсов устройств, поддерживаемых кодировок. Просто пройдитесь по пунктам меню и поразбирайтесь,что вам нужно,а что нет.
Настроили? Теперь ядро нужно скомпилировать и установить:
# make && make modules_install - для тех, кто занимался ручной сборкой
И скопировать ядро в /boot:
# cp arch/x86/boot/bzImage /boot/
Пример:
# cp arch/x86/boot/bzImage /boot/3.18.12-gentoo
Если вы собрали ядро с initramfs, следует всё же установить genkernel и скомандовать:
# genkernel --install initramfs
Сборка программ, конфигурирование модулей, настройка загрузчика
# emerge udev syslog-ng vixie-cron dhcpcd
Теперь добавляем в автозагрузку:
# rc-update add udev boot
# rc-update add syslog-ng default
# rc-update add vixie-cron default
# rc-update add dhcpcd default
Смотрим наши устройства и делаем правки в /etc/fstab
# blkid /dev/sda3
# nano -w /ets/fstab
Пример:
# NOTE: If your BOOT partition is ReiserFS, add the notail option to opts.
# /dev/BOOT /boot ext2 noauto,noatime 1 2
UUID=041a5e7e-955f-4a97-b741-e4e246f04e37 /boot ext2 noatime 1 2
# /dev/ROOT / ext3 noatime 0 1
UUID=ee154f21-6b45-478b-b407-b4cfa783bfa7 / ext4 noatime 0 1
# /dev/SWAP none swap sw 0 0
UUID=f7f61982-ee21-46ae-899c-0dd7d31a89a2 none swap sw 0 0
# /dev/cdrom /mnt/cdrom auto noauto,ro 0 0
# /dev/fd0 /mnt/floppy auto noauto 0 0
UUID=b8639470-cfc2-4e5c-9130-b79cc7be67b5 /home ext4 noatime 0 0
Обратите внимание: нужно убрать параметр noauto напротив /boot (в данном примере /boot расположен на /sda1). Вообще, boot и swap-разделы создавать необязательно.
Имя хоста:
# nano -w /etc/conf.d/hostname
Указываем здесь имя своего ПК
Сеть:
# nano -w /etc/conf.d/net
дописываем:
# /etc/conf.d/net
# config_enp4s1="dhcp" # для получения динамического IP-адреса
# если адрес статичен,то впишите вместо dhcp свою информацию. Например:
config_enp4s1="192.168.0.2 netmask 255.255.255.0" # IP-адрес и адрес сети
routes_enp4s1="default via 192.168.0.1" # роутер
dns_servers_enp4s1="192.168.0.1 8.8.8.8" # DNS-адреса
Теперь следует указать gentoo на существующий интерфейс. Для этого создайте символьную ссылку на net.eth0:
# cd /etc/init.d
# ln -s net.lo net.enp4s1
Добавление сетевого интерфейса в автозагрузку:
# rc-update add net.enp4s1 default
Создание пароля для суперпользователя:
# passwd
впишем пароль для учётной записи root
# emerge terminus-font intlfonts freefonts cronyx-fonts corefonts kbd
В файле /etc/env.d/02locale:
# nano -w /etc/env.d/02locale
LC_ALL=""
LANG="ru_RU.UTF-8"
В /etc/conf.d/keymaps:
# nano -w /etc/conf.d/keymaps
keymap="ruwin_alt_sh-UTF-8"
windowkeys="NO"
extended_keymaps=""
dumpkeys_charset=""
fix_euro="NO"
В /etc/conf.d/consolefont:
# nano -w /etc/conf.d/consolefont
consolefont="cyr-sun16"
consoletranslation=""
После чего прописать consolefont в автозагрузку:
# rc-update add consolefont boot
Установка загрузчика grub2:
# nano -w /etc/portage/make.conf
GRUB_PLATFORMS="pc"
# emerge -av grub sysboot/os-prober
# grub2-install /dev/sda
# grub2-mkconfig -o /boot/grub/grub.cfg
Вот и финиш ;)
# exit
# cd
# umount /mnt/gentoo/boot /mnt/gentoo/proc /mnt/gentoo/dev /mnt/gentoo (конкретнее - последовательно отмонтируйте всё, что смонтировали в '/mnt')
# reboot
no subject
Date: Sunday, 14 June 2015 18:23 (UTC)Должна быть одна кнопка. В крайнем случае две, как одолжение (т.к. в два раза больше) - зеленая и красная.
Всё.
Next.
no subject
Date: Sunday, 14 June 2015 18:53 (UTC)