Базова установка Gentoo Linux
Базова установка Gentoo Linux
У цій статті я опишу базову установку Gentoo Linux із stage3. Стаття розрахована на людину, знайому з Linux. Для спрощення все описуватиметься для самотньої машини з одним чистим жорстким диском і прямим доступом до мережі. Докладніша офіційна документація доступна тут: http://www.gentoo.org/doc/en/handbook/index.xml. Слід зазначити, деякі моменти там не зовсім актуальні. При знаходженні відмінностей у моїй статті та офіційній документації можна вважати мою версію більш актуальною.
Для початку вам знадобляться minimal-cd, stage3 і portage-latest.Minimal-cd – це завантажувальний iso-образ, завантажившись з якого ми будемо встановлювати систему.Stage3 - це архів, що містить базову систему з встановленими emerge (пакетний менеджер Gentoo), gcc і базовим набором утиліт, необхідних для роботи всього цього.Portage-latest – новий архів дерева пакетів. Завантажити архіви можна зі сторінки завантаження Gentoo. Перейдіть на Gentoo Mirrors і виберіть сервер, що знаходиться ближче до вас (в Україні буде логічно використовувати дзеркала Yandex або Corbina). Далі перейдіть в каталог releases//current-iso/, де необхідно завантажити install--minimal-.iso і stage3--.tar.bz2. – архітектура вашого процесора, – дата збирання образів. Тепер поверніться назад у корінь дзеркала та перейдіть до каталогу snapshots. Звідти потрібно завантажити файл portage-latest.tar.bz2. Для зручності роботи найкраще покласти файли stage3 і portage-latest всередину iso-образу, після чого записати образ на болванку.
Зауважте, що під час інсталяції знадобиться з'єднання з Інтернетом для завантаження вихідних програм.
- натискаємоn, щоб створити новий розділ,
- p, щобстворити primary розділ,
- 1, тому що ми створюємо перший розділ,
- далі просто тиснемо Enter, щоб розділ був із самого початку диска і
- нарешті вказуємо розмір розділу, наприклад+1024M.
Тепер створимо розділ для кореневої файлової системи:
- n,
- p,
- 2 (ми створюємо другий розділ),
- просто тиснемо Enter, щоб розділ йшов слідом за першим,
- просто тиснемо Enter, щоб розділ зайняв залишок жорсткого диска.
Залишилося тільки змінити тип swap-розділу:
- натискаємоt для зміни типу розділу,
- натискаємо1 для зміни типу першого розділу,
- вводимо код типу розділу82
Щоб перевірити наші зміни, натискаємоp і бачимо приблизно таке:
Якщо все гаразд, натискаємоw для запису змін на диск.
Описаний спосіб розбивки є базовим. Краще було б створити окремі розділи для /boot, /var, /usr і т.д., але це виходить за рамки статті.
Запускаємо наші розділи у роботу:
Стаття написана з розрахунком використання файлової системи ReiserFS. Звичайно ж, ви можете використовувати будь-яку іншу ФС за бажанням, наприклад ext4.
Розпаковуємо базову систему:
Тепер потрібно налаштувати з'єднання з мережею. За умовою завдання ми маємо прямий доступ до мережі, тому для налаштування достатньо запустити net-setup eth0.
Робимо chroot в нашу нову систему:
Докладніше про оптимізацію збирання ви можете почитати: Оптимізація збирання в Gentoo (make.conf).
Тепер необхідно вказати локалі, що використовуються у файлі /etc/locale.gen. Достатньо вказати основні:
Після цього потрібно запустити locale-gen.
Тепер, по тру-генту-вей , треба перезбирати system (emerge -av system) два чи навіть три рази, але це піде багато годин, а приріст продуктивності буде незначний. System - щось подібне до віртуального списку пакетів, що включає компілятор, основні системні бібліотеки та утиліти.
Базові конфігураційні файли різних сервісів перебувають у каталозі /etc/conf.d/. Підправимо деякі з них.
У/etc/conf.d/clock вкажемо:
- CLOCK="local" - щоб залізний час збігався із системним.
- TIMEZONE="Europe/Moscow" — наша тимчасова зона, варіанти можна переглянути в /usr/share/zoneinfo/.
- CLOCK_SYSTOHC="yes" — синхронізувати залізний годинник із системним. Адже ви збираєтесь регулярно оновлювати час у системі?
Зробіть cp /usr/share/zoneinfo/Europe/Moscow /etc/localtime . Замість Europe/Moscow використовуйте тимчасову зону.
У/etc/conf.d/consolefont вкажемо шрифт, який нормально відображає українські літери:
- CONSOLEFONT="Cyr_a8x16" — варіанти можна переглянути в /usr/share/consolefonts. Наприклад, зі шрифтом Cyr_a8x8 на екрані поміститься набагато більше тексту, але літери будуть плескаті.
У/etc/conf.d/hostname вкажіть ім'я своєї машини:
У/etc/conf.d/keymaps введіть такі опції:
- KEYMAP="-u ruwin_ct_sh-UTF-8" — перемикання Ctrl+Shift. Варіанти у /usr/share/keymaps.
- SET_WINDOWKEYS="yes"
- DUMPKEYS_CHARSET="koi8-r"
Для русифікації інтерфейсу створіть файл/etc/env.d/02locale із вмістом:
LC_NUMERIC="POSIX" потрібен для того, щоб у десяткових дробах використовувалася точка, а не кома.
Тепер редагуємо/etc/fstab, вказуємо наші розділи. Наразі вміст цього файлу — приклад.Видаліть рядок з /dev/BOOT, замініть ROOT на sda2, SWAP на sda1, ext3 на reiserfs. Після цього у файлі мають бути приблизно такі рядки:
Наберітьpasswd, щоб встановити пароль користувача root нової системи.
Тепер новій системі потрібне ядро. Є три варіанти - зібрати і налаштувати ядро з вихідних (переважний), зібрати ядро за допомогою genkernel, скопіювати ядро з LiveCD.
Щоб визначитися з наявним у вас обладнанням, встановіть пакети sys-apps/pciutils та sys-apps/usbutils (lspci та lsusb відповідно).
Тепер потрібно встановити завантажувач та утиліти файлової системи:
На 64-бітових системах grub тягне за собою пакет app-emulation/emul-linux-x86-baselibs, який багато важить. Містить він бінарні 32-бітові бібліотеки. Позбутися їх можна, зібравши grub з відключеним USE-прапором "ncurses". Для цього необхідно передати emerge USE="-ncurses". Просто пропишіть USE-прапори /etc/portage/package.use, як описано тут.
Якщо ви використовували genkernel:
Далі потрібно встановити завантажувач grub:
Встановимо syslog, cron та logrotate:
Наша система готова! Виходимо з chroot-оточення та розмонтуємо розділ.
Якщо планується робота в мережі, варто встановити пакети:
- bind-tools – утиліти nslookup, dig,
- iproute2 - утиліти ip, tc,
- iptables - файрволл,
- netkit-telnetd - telnet,
- mtr, traceroute – трасування.
Для моніторингу роботи системи можуть бути корисні пакети:
- htop – набагато функціональніший аналог top,
- iotop – використання i/o процесами у вигляді top,
- strace – утиліта діагностики та налагодження процесів.
І нарешті, для зручності роботи пакети:
- mc –легендарний файловий менеджер,
- screen – консольний віконний менеджер, корисний для запуску процесів на тлі.
Не забувайте регулярно оновлюватись. Робиться це просто:
- emerge - sync - оновить дерево пакетів.
- emerge -uavDN world – відобразить список пакетів, що оновлюються, версії, USE-прапори та запропонує оновити їх.