установка gentoo
CPU: 2 * 2.0Hhz Xeon
Net: 2 мережеві карти в різних віртуальних Свіча
Запускаємо віртуальну машину з СД, на запрошення boot пишемо gentoo. Після продовження завантаження і вибору опцій за замовчуванням отримуємо запрошення командного рядка
Вводимо пароль рута. Необхідно захиститися. В процесі установки віртуальна машина буде доступна з поза
New password: (Enter the new password)
Re-enter password: (Re-enter the password)
запуск ssh
Необхідно для віддаленого підключення у віртуальній машині, так як продовжувати установку з консолі vmware sphere не зовсім зручно
У /etc/resolv.conf вказуємо сторонній ДНС-сервер, поки немає свого
Пробуємо попінгать кого-небудь, наприклад ping gmail.com
Якщо відповіді є, то мережу і ДНС налаштовані і працюють. Тепер з робочого комп'ютера можна з'єднається з ssh і продовжити установку
розбивка диска
GNU Parted 3.2
Using / dev / sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(Parted)
Використовуємо розмітку gpt
створення розділів
Зробимо чотири розділи:
- / Dev / sda1 BIOS boot розділ - рекомендовано створювати в будь-якому випадку
- / Dev / sda2 Boot розділ
- / Dev / sda3 Swap розділ
- / Dev / sda4 Root розділ
За бажанням можна створити ще окремо / dev / sda5 для / home, але я цього не робив. Якщо мені подребуется / home виходить за межі розміру поточного диска, то я просто створю додатковий віртуальний диск і підключу його до віртуальної машини
При створенні розділів (mkpart) розмір розділів неявно вказаний в мегабайтах
-1 означає від 10-го гігабайти і до кінця диска. В результаті після виконання print отримуємо наступну картину

форматування розділів
Я дотримуюся правил офіційного мана, тому роблю завантажувальний розділ (/ dev / sda2) в ext2 і кореневий розділ (/ dev / sda4) в ext4
Активація і ініціалізація розділу підкачки
монтування розділів
Установка з архіву stage3 amd64
В результаті ми отримали встановлену систему. Так, у так просто. Але це ще не все. Попереду ще конфігурація системи, компіляція ядра, установка завантажувача
Завдання параметрів компіляції свіжовстановленому системи
Мій make.conf містить наступне
Інформацію про CPU_FLAGS_X86 можемо отримати встановивши пакет app-portage / cpuid2cpuflags або командою cat / proc / cpuinfo
Копіюємо інформацію про ДНС
Підготовка до переходу в нове оточення. монтування
Файлові системи, які повинні бути доступні:
- / Proc / - псевдо-файлова система (вона виглядає як звичайні файли, але насправді генерується на льоту) з якої ядро Linux надає інформацію для оточення
- / Sys / - псевдо-файлова система, як і / proc /, яку вона одного разу замінить, також вона більш структурована, ніж / proc /
- / Dev / - звичайна файлова система, частково керована менеджером пристроїв Linux (зазвичай udev), яка містить усі файли пристроїв
Каталог / proc / монтується в / mnt / gentoo / proc /, а решта два каталогу через bind-mounted. Подальше означає, що, наприклад, / mnt / gentoo / sys / насправді буде / sys / (це просто друга точка входу в ту ж файлову систему), тоді як / mnt / gentoo / proc / є новою точкою монтування (так би мовити , примірником) файлової системи
Перехід до нового оточення
В результаті ми отримали структуру папок і файлів таку, як будь-то би сервер вже проінсталірован і ми на нього залягання
Установка portages і синхронізація до актуальної версії
Вибір чистого 64-бітного оточення, без 32-бітних додатків і бібліотек здійснюється через вибір потрібного профілю. Повний список профілів можна подивитися командою:

Мені потрібен профіль 11, я його вибираю наступною командою
Використання USE прапорів
USE-прапори задають опції збірки програм включаючи або вимикаючи потрібне. На відміну від FreeBSD, де опції збірки потрібно вибирати по ходу установки залежностей встановлюваної програми (Наприклад: Ви бажаєте зібрати postfix з підтримкою tls і mysql. В папці порту postfix ви запускаєте команду make. Postfix НЕ буде зібраний поки не будуть зібрані і встановлені його залежності , в даном випадку mysql і openssl, кожна з яких має свій конфигуратор. тобто після make з / usr / ports / mail / postfix автоматично буде запущений конфигуратор openssl, де потрібно проставити прапори збірки (або погодиться на що, що є) і чекати поки буде зібраний і встановлений цей пакет, по сле чого установник перейде до наступної залежності, в даному випадку до mysql, в конфігураторі якого також потрібно зробити вибір. Таким чином адміністратор повинен повністю контролювати процес) gentoo пропонує більш зручний механізм-задати опції відразу. Частина з них я вже вказав раніше в /etc/portage/make.conf
Повний опис всіх доступних USE прапорів можна знайти в файлі /usr/portage/profiles/use.desc
У файлі /etc/portage/make.conf можна додавати, прибирати USE-прапори. Якщо це сталося, то необхідно перебудувати світ за допомогою такої команди
Надалі мені потрібно vim / vi, тому я відразу встановлюю його. Можна і не встановлювати і користуватися діфолтним nano
Часовий пояс і дата
Список часових поясів Європи
Створюємо свою Таймзона
На підставі запису в / etc / timezone сгенерируем / etc / localtime. Таким чином час на сервері буде з нашої географічної тимчасової зони
Налаштування локалі
Локаль вказує не тільки мову, який використовується при взаємодії з системою, але і правила для сортування рядків, формат виведення дати і часу, і т.д.
Згенеруємо свої локалі
Тепер locale -a покаже тільки наші локалі, а команда
покаже нумерування список локалей з яких вибираємо свою en_US.utf8
установка ядра
Зібрати ядро можна або вручну, або за допомогою програми genkernel. Я віддаю перевагу її
Для поточної розмітки створимо файл / etc / fstab, в якому будуть наступні записи
збираємо ядро
Так як у мене є готовий конфіг ядра на іншому сервері, то я візьму його і покладу в / etc / kernels і потім дам команду збірки ядра. Якщо готовий конфіг взяти ніде, то genkernel запустить конфігуратор, де є можливість вибрати потрібні опції (головне не заплутатися). Збережено конфиг-файл .config буде знаходиться в папці / usr / src / linux. Після закінчення компіляції genkernel скопіює його в / etc / kernels з ім'ям kernel-config-x86_64-4.4.26-gentoo, де 4.4.26 поточна, пролінкованая версія ядра (див. В / usr / src /)
В середньому компіляція виконується хвилин 20-40
Налаштування мережі майбутнього сервера
В папці /etc/conf.d лежать конфігураційні файли. Деякі з них потрібно змінити
Підключення до мережі при завантаженні забезпечується Лінкування потрібних інтерфейсів
і постановкою їх у автозапуск
Звертаю увагу на те, що назви наших інтерфейсів enp2s0 і enp2s1. А сконфігуровані у нас інтерфейси з іменами eth0 і eth1. Якщо не вирішити цей конфлікт, то після перевантаження сервер виявиться без мережі, що явно погано. Для вирішення проблеми в файлі / etc / default / grub для параметра GRUB_CMDLINE_LINUX потрібно додати net.ifnames = 0. Для нашого прикладу це виглядає так
Потрібно запам'ятати цей момент і пізніше, коли буде встановлено програма grub, але до інсталяції на бутовий розділ внести зміни в файл / etc / default / grub
установка пароля
Для користувача root
Так як під рутом працювати не прийнято, то заведемо для себе учетку і встановимо пароль
Віддалений доступ по ssh
Ssh-сервер повинен стартанути після перевантаження віртуальної машини. Це забезпечується за допомогою такої команди
Встановлювати чи налаштовувати завантажувача GRUB
Тепер внесемо зміни в файл / etc / default / grub, про що я писав вище і встановимо завантажувач на розділ / dev / sda
Вихід з chroot, Демонтується файлових систем, перевантаження
І на завершення даю ряд утиліт, необхідних для початкової роботи сервера
У чому * принципова * різниця між
mount -types proc none / mnt / gentoo / proc
mount -options bind / dev / mnt / gentoo / dev
mount -types sysfs none / mnt / gentoo / sys
mount -types proc proc / mnt / gentoo / proc
mount -rbind / dev / mnt / gentoo / dev
mount -make-rslave / mnt / gentoo / dev
mount -rbind / sys / mnt / gentoo / sys
mount -make-rslave / mnt / gentoo / sys
Чесно кажучи навіть не замислювався. Так як офіційний ман по установці використовує команди зазначені в пості, то і я не мудрував. Вважаю і Ваш варіант також хороший, тим більше, що в ньому менше рядків. При наступній установці Гент спробую його