"Программное обеспечение словно секс: лучше, когда это бесплатно!" Линус Торвальдс

Что же такое Gentoo ???

это дистрибутив Linux, который ни чего не хочет делать сам.
Повышает Ваш IQ , в замен требуя кучу времени на то, чтобы разобраться, как это работает и почему не всё получается.
Он не становится с первого раза.., вот зараза, легко заставит рвать на себе волосы и проклинать того, кто подсунул эту гадость.
Не раз может возникнуть желание послать всё к чёртовой матери.
Но пройдя через огонь, воду и медные трубы, настроив систему по своему усмотрению, вытираем пот со лба, больше не придется этим заниматься.
Однажды установив Gentoo, можно годами использовать его, и это всегда будет свежая версия дистрибутива, которая больше всего подходит именно Вам.

Только Gentoo!

"за другое будем бить по попе"

chroot chroot

"Я вчера много пил...
Пришёл домой, не мог зайти в инет,
чё то сделал и зашёл.
Когда с утра увидел что у меня стоит
Gentoo, вместо macOC...||||||||| Windы...
Я бросил пить."
"Доктор, у меня глюки.
А какая у Вас
операционная система? -
macOC...|||||||| Windows.
Могу посоветовать перейти на Gentoo.
Но предупреждаю,
глюки должны исчезнуть,
но получите геморрой".
"Гентушник без терминала
не может даже пукнуть".
"Ставил Gentoo - поломал 2 бубна."

Загружаем образ Live CD Gentoo.
(На 20 апреля 2017г. официальный минимальный CD не способен загрузится в UEFI - режиме.)
Для загрузки в UEFI режиме загружаем последний Hybrid ISO (LiveDVD) или "System Rescue CD" или Live CD поддерживающий UEFI, (например "Linux Mint").
Определяем нашу флешку:

ls -l /dev/disk/by-id/

(например /dev/sdb) и записываем образ на неё:

dd if=./livedvd-amd64-multilib-XXXXXXXX.iso of=/dev/sdb

Запуск установочного носителя:
Запускаем livedvd-amd64-multilib-XXXXXXXX.iso с флешки и начинаем установку Gentoo.
Проверка доступности сетевой платы:

ifconfig

(удачная):

enp3s0: flags=4163 UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.0.101 netmask 255.255.255.0 broadcast 192.168.0.255
inet6 fe80::4216:7eff:fe24:dfb8 prefixlen 64 scopeid 0x20
ether 40:16:7e:24:df:b8 txqueuelen 1000 (Ethernet)
RX packets 358625 bytes 534838685 (510.0 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 275597 bytes 23854365 (22.7 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo flags= ...

Если сеть не заработает сразу, можно использовать net-setup (для обычных или беспроводных сетей), pppoe-setup (для пользователей ADSL) или pptp (для пользователей PPTP; есть на x86, amd64, alpha, ppc и ppc64).
Тестирование сети:

ping -c 3 www.gentoo.org

Разбивка диска

Использование GPT на компьютере с BIOS работает, но нельзя выполнять двойную загрузку с операционной системой Microsoft Windows.
Windows загрузится в режиме UEFI, если обнаружит метку раздела GPT. Некоторые прошивки материнской платы, настроенные для загрузки в BIOS / CSM , могут также иметь проблемы с загрузкой дисков с меткой GPT. Можно обойти проблему, добавив флаг boot / active в загрузочный раздел MBR, через fdisk -t dos чтобы заставить прочитать таблицу разделов с использованием формата MBR.

fdisk -t dos /dev/sda
Command (m for help): a
Command (m for help): w


Parted поддерживает большие разделы (более 2 ТБ).
Для оптимального выравнивания разделов:

parted -a optimal /dev/sda

Удаление X раздела:

(parted) rm X

При изменении типа раздела gpt будут удалены все разделы с диска:

(parted) mklabel gpt

Чтобы иметь диск с макетом MBR, используется mklabel msdos.
Разделы могут быть выражены в КБ, МБ, ГБ и тд.

(parted) unit kb
(parted) mkpart primary 1024 3072
(parted) name 1 grub
(parted) set 1 bios_grub on
(parted) mkpart primary 3072 134144
(parted) name 2 boot
(parted) mkpart primary 134144 4328448
(parted) name 3 swap
(parted) mkpart primary 4328448 56757248
(parted) name 4 rootfs
(parted) mkpart primary 56757248 -1
(parted) name 5 home

При использовании интерфейса UEFI для загрузки системы (вместо BIOS), отмечаем загрузочный раздел в качестве раздела EFI System

(parted) set 2 boot on

Для проссмотра конечного результата:

(parted) print

Номер Начало Конец Размер Файловая система Имя Флаги
1 1024kB 3073kB 2049kB grub bios_grub
2 3073kB 134MB 131MB fat32 boot загрузочный, esp
3 134MB 4328MB 4194MB linux-swap(v1) swap
4 4328MB 56,8GB 52,4GB ext4 rootfs
5 56,8GB 2000GB 1944GB btrfs home

(размеры показанные Parted не совпадают с размерами указанными в процессе разбивки диска)
Для выхода

(parted) q

Parted позволяет изменять размеры раздела диска командой resizepart.
Будет предложено указать номер раздела, который необходимо изменить. После этого необходимо установить новую конечную точку для этого раздела.

(parted) resizepart
Partition number? X
End? [XX.XGB]? XXXXX


Может помочь восстановить потерянный раздел между начальной и конечной точками. Если раздел найден в этом диапазоне, он попытается восстановить его.

(parted) rescue
Start? X
End? XXXXX
(parted) print


Создание файловых систем на разделах:
Первый раздел оставляем пустым.
При установке Gentoo на систему, которая использует UEFI для загрузки операционной системы (вместо BIOS), важно, чтобы был создан системный раздел EFI.
Для EFI должена быть создана файловая система FAT32 (или VFAT, как на системах Linux).

mkfs.vfat -F 32 /dev/sda2

Чтобы у раздела /dev/sda4 была файловая система ext4, требуется выполнить:

mkfs.ext4 /dev/sda4

Для других разделов выбираем свою файловую систему.
Например для /dev/sda5, файловую систему btrfs:

mkfs.btrfs -f /dev/sda5

Подключение раздела подкачки

mkswap /dev/sda3 команда, используемая для инициализации разделов подкачки
swapon /dev/sda3 для подключения раздела подкачки

Монтирование

mount /dev/sda4 /mnt/

Проверка даты и времени:

date

Fri Mar 29 16:21:18 UTC 2016

если время не соответствует, набираем команду:

date ММДДччммГГГГГ

Загрузка архива стадии:
переход к точке подключения Gentoo

cd /mnt/

загружаем файл стадии:

links http://www.gentoo.org/main/en/mirrors.xml

Выберите ближайшее зеркало. Перейдите в каталог releases/amd64/autobuilds/,
выберите файлы стадий для вашей архитектуры и нажмите D для загрузки.
По окончании нажмите Q, чтобы выйти из браузера.
Распаковка архива стадии:

tar xpf stage3-amd64-*.tar.xz

Создаём efi директорию:

mkdir -p /mnt/boot/efi
mount /dev/sda2 /mnt/boot/efi

Копирование информации о DNS:
(при устранении ошыбок в установленной ОС с Systemd, предварительно удаляем resolv.conf)

rm /mnt/etc/resolv.conf
cp -L /etc/resolv.conf /mnt/etc/

Монтирование proc, sys и dev

mount --types=proc /proc /mnt/proc
mount --rbind /sys /mnt/sys
mount --rbind /dev /mnt/dev
mount --make-rslave /mnt/sys
mount --make-rslave /mnt/dev

Операции --make-rslave необходимы для поддержки Systemd.

Изменение корневого каталога для перехода в новую среду chroot

chroot /mnt /bin/bash
source /etc/profile
export PS1="(chroot) $PS1"

Настройка Portage

Запускаем emerge-webrsync для установки образа Portage:

emerge-webrsync

Работаем с новостями Portage:

eselect news list
eselect news read 20

2019-06-05-amd64-17-1-profiles-are-now-stable
Title amd64 17.1 profiles are now stable
Author Michał Górny <mgorny@gentoo.org>
Posted 2019-06-05
Revision 3

Новый набор профилей 17.1 amd64 был добавлен в Gentoo хранилище в декабре 2017 года. Эти профили переключаются на более стандартный мультибиблиотечный макет 'no SYMLINK_LIB' и требует явной миграции как описано ниже. Они считаются стабильными на данный момент, и мы бы хотели бы попросить всех пользователей обновить свои системы. Старые профили будут объявлены устаревшими в ближайшем будущем.
В новых профилях удалена символическая ссылка совместимости lib->lib64.
64-битные библиотеки должны быть установлены непосредственно в lib64. /Lib и /usr/lib становятся настоящими каталогами, которые используются для перекрестной дуги и нативные небиблиотечные пакеты (gcc, clang) и 32-битные библиотеки в мультибиблиотечном профиле (что улучшает совместимость с готовыми x86 пакетами).
Поддерживается миграция с профилей 13.0 и 17.0. В случае из первых, рекомендовано читать новость для обновления 17.0 [1].
Миграция выполняется с помощью инструмента app-portage/unsymlink-lib.
Следующие шаги могут быть использованы для обновления вашей системы:
1. Синхронизируйте и обновите вашу систему до новейших версий пакетов чтобы уменьшить риск проблем.
2. Если вы все еще используете профиль 13.0, выберите gcc 6.4.0 или новее в качестве системного компилятора, установите исходный файл /etc/profile и переустановите libtool:

# gcc-config -l
[1] x86_64-pc-linux-gnu-5.5.0 *
[2] x86_64-pc-linux-gnu-8.3.0
# gcc-config 2
# . /etc/profile
# emerge -1v libtool


3. Install the tool:

# emerge -1v app-portage/unsymlink-lib

4. Запустите 'unsymlink-lib --analyze' и проверьте вывод на очевидные ошибки. Если вам нужно внести какие-либо изменения в систему, помните, что потом необходимо запустить 'unsymlink-lib --analyze' снова.
[после этого пункта не вызывайте emerge или не изменяйте /usr вручную]
5. Самое время, чтобы сделать резервную копию.
6. Запустите 'unsymlink-lib --migrate'. Вы можете сначала добавить '--pretend', чтобы увидеть что сейчас произайдёт.
7. Перезагрузите вашу систему. Проверьте, работают ли важные программы.
В частности, убедитесь, что, например, 'emerge --info' работает (но не работает установить что угодно). Если у вас возникли серьезные проблемы, вы можете использовать 'unsymlink-lib --rollback', чтобы отменить изменения и вернуться к пункт 4.
8. Запустите 'unsymlink-lib --finish'. Вы можете сначала добавить '--pretend', чтобы увидеть что произойдет, но обратите внимание, что вы увидите очень длинный список файлов для удаления.
9. Переключите профиль, например:

# eselect profile set default/linux/amd64/17.1/desktop

[с этого момента вы можете начать использовать emerge снова]
10. Перестройте набор инструментов:

# emerge -1v sys-devel/gcc:8.3.0

[повторите для других слотов, которые вы будете использовать]
[если вы обновляете профиль 13.0, также]:

# emerge -1v sys-devel/binutils
# emerge -1v sys-libs/glibc


11. Если вы используете мультибиблиотечный профиль, перестройте все 32-битные пакеты.
Это можно сделать с помощью:

# emerge -1v --deep /lib32 /usr/lib32 /usr/lib/llvm/*/lib32

Как вариант, если вы переключаетесь с одного из профилей 13.0 вы можете пересобрать все пакеты, как описано в новостях 17.0:

# emerge -ev @world

12. После того, как последний 32-битный пакет перестроен, ваш менеджер пакетов должен удалить потерянные символьные ссылки /lib32 и /usr/lib32. Если это не случилось, удалите их вручную:

# rm /lib32 /usr/lib32

Об известных проблемах см. Ошибка # 506276 [2]. Если у вас есть какие-либо проблемы с новыми профилями или процедурой миграции, пожалуйста, сообщите об ошибке и заставить его заблокировать трекер.
Для получения дополнительной информации о макете, пожалуйста, смотрите статью в вики на многопоточных макетах AMD64 [3].
[1] https://gentoo.org/support/news-items/2017-11-30-new-17-profiles.html
[2] https://bugs.gentoo.org/506276
[3] https://wiki.gentoo.org/wiki/Project:AMD64/Multilib_layout


Выяснение используемого профиля:

eselect profile list

Available profile symlink targets:
...
[20] default/linux/amd64/17.1/desktop (stable)
[21] default/linux/amd64/17.1/desktop/gnome (stable)
[22] default/linux/amd64/17.1/desktop/gnome/systemd (stable)
[23] default/linux/amd64/17.1/desktop/plasma (stable) *
[24] default/linux/amd64/17.1/desktop/plasma/systemd (stable)
...

Изменяем профили, например для Plasma:

eselect profile set 23

для Gnome systemd:

eselect profile set 22

Настройка переменной USE

Открытие файла /etc/portag/make.conf

nano /etc/portage/make.conf

USE="acl alsa berkdb cdr consolekit crypt cups dbus dvd gnutls ipv6 nls policykit pulseaudio sasl ssl syslog tcpd udev udisks unicode X"
VIDEO_CARDS="intel"
INPUT_DEVICES="evdev synaptics"
CFLAGS="-march=ivybridge -mno-avx -mno-aes -mno-rdrnd -O2 -pipe"
CXXFLAGS="${CFLAGS}"
MAKEOPTS="-j3"
LINGUAS="ru en"
L10N="ru en"
GRUB_PLATFORMS="efi-64" для ОС без efi GRUB_PLATFORMS="pc"
CPU_FLAGS_X86="mmx mmxext pclmul popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3"

Для включения правильных флагов CPU_FLAGS_X86 используем Python
скрипт, который генерирует правильное значение с /proc/cpuinfo

emerge app-portage/cpuid2cpuflags
cpuid2cpuflags
emerge -C app-portage/cpuid2cpuflags

Для оптимизации GCC необходимо подобрать разумные флаги CFLAGS и CXXFLAGS.
Определяем модель процессора:

grep -m1 -A3 "vendor_id" /proc/cpuinfo

Чтобы узнать необходимый CFLAGS, сопоставляем CPU с одним, из указанных на странице.
Значение MAKEOPTS устанавливается в зависимости от числа процессоров +1.
Если выбран профиль в названии с Systemd (так как все стадии Gentoo по умолчанию используют OpenRC как систему инициализации) имеет смысл обновить @world с добавлением USE - флага, systemd и отключением флага -consolekit:

emerge --ask --update --deep --newuse @world

это не является обязательным для других профилей.

Установка часового пояса:

ls /usr/share/zoneinfo
echo "Europe/Volgograd" > /etc/timezone

Переконфигурируем timezone-data:

emerge --config sys-libs/timezone-data

gentoo use

Продаются
книги

Оставить отзыв

Установи и
БУДЕШЬ СЧАСТЛИВ!

Спасибо, Господи, что взял деньгами...

Scrooge
Dollar
Ruble
Ruble
Gold