Суббота, 18.05.2024, 11:58
Приветствую Вас Гость | RSS
Поиск
Главная | Каталог статей | Регистрация | Вход
        LINUX & OpenSource
Форма входа
Меню сайта

Категории каталога
Ubuntu [38]
Mandriva [1]
OpenSUSE [2]
Gentoo [3]
OpenSolaria [0]
FreeBSD [0]
О Linux и OpenSource [10]

Друзья сайта

Наш опрос
Какоую операционную систему Вы используете
Всего ответов: 77

Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Главная » Статьи » Gentoo

Пошаговое руководство по установке и базовой настройке Gentoo Linux

Введение

Данное руководство скорее всего должно называться шпаргалкой, писалось для того чтобы в следующий раз ничего не забыть. Руководств по установке Gentoo в сети очень много, но если присмотреться - одни устарели, другие слишком по-художественному написаны, третьи - переводы с английских сайтов. Вне конкуренции находиться Handbook! Нельзя устаналивать Gentoo не прочитав пару раз как это в принципе делается. Еще хочу порекомендовать сборник рассказов о Gentoo (можно поискать в инернете, последняя версия на момент создания этой шпаргалки - 1.5). Очень много полезного и все в одном документе. В этой шпаргалке содержиться самый сок со всех этих документов. Установка разбита на секции, которые делятся на шаги. Все их желательно делать последовательно, с пониманием, ничего не пропускать и быть предельно внимательными. В конце руководства содержиться что-то вроде приложения, где собраны наиболее используемые комманды и очень полезный в наших условиях скрипт.

Подготовительные действия.

В статье описан процесс установки 32-х битной версии Gentoo 2008 на ПК с видеокартой NVidia. Для начала установки нужно кое-что предварительно скачать из интеренета, а именно:

* Архив портежей portage-20090123.tar.bz2 (34 MB)
* Архив 3-й стадии системы stage3-i686-2008.0.tar.bz2 (113 MB)
* Минимальный загрузочный CD install-x86-minimal-2008.0.iso (80 MB)

Очень удобно когда все эти файлы находятся на одном загрузочном CD диске. Со временем на него также можно будет записывать скачанные ранее файлы исходников, но пока их нет - следовательно и записывать их не будем. Пока делаем следующее: берем чистый DVD-RW диск и записываем на него инициализирующую сессию с загрузочным образом, затем дописываем файл с третьей стадией и файл с портежей.

$ growisofs -dvd-compat -Z /dev/dvd=install-x86-minimal-2008.0.iso
$ growisofs -M /dev/dvd -R -J stage3-i686-2008.0.tar.bz2 portage-20090123.tar.bz2

Ок. Теперь у нас есть загрузочный DVD диск который включает все что нужно для установки. Перезагружаем компьютер, выставляем в BIOS'e загрузку с DVD и ждем. На вопрос о выборе раскладки клавиатуры жмем Enter.

Примечание: если по каким-то причинам файл стадии и коллекция портежей находиться на другом DVD диске - то загрузку установочного диска нужно делать с ключом "docache" (копирование содержимого установочного диска в RAM).

Установка базовой системы

На этом и последующих этапах нужно будет устанавливать дополнительные пакеты, а следовательно необходимо работающее соединение с интернет. Подключение может быть любым: прямое, модем, gprs, vpn, wifi. Как настроить подключение к сети из загрузочного диска подробно расписано в HandBook'e. Внимательно почтитайте его и сделайте все, что там по этому поводу написано.

1. Разбивка диска (HDD 40 Gb)
# cfdisk /dev/sda
hda1 - primary - swap - 500 Mb (swap)
hda2 - primary - ext3 - 8.5 Gb (/)
hda3 - primary - ext3 - 2 Gb (/var)
hda5 - logical - ext3 - 30 Gb (/home)
2. Создание своп раздела
# mkswap /dev/hda1
3. Активирование своп раздела
# swapon /dev/hda1
4. Создание файловых систем на оставшихся разделах
# mkfs.ext3 /dev/hda2
# mkfs.ext3 /dev/hda3
# mkfs.ext3 /dev/hda5
5. Монтирование созданных файловых систем
Сначала корневой раздел, затем в нем создаем все точки монтирования и монтируем на них остальные разделы
# mount /dev/hda2 /mnt/gentoo
# mkdir /mnt/gentoo/{home,var}
# mount /dev/hda5 /mnt/gentoo/home
# mount /dev/hda3 /mnt/gentoo/var
6. Распаковка в примонтированные разделы содержимого 3-й стадии
# tar -C /mnt/gentoo -pxjvf /mnt/cdrom/stage3-i686-2008.0.tar.bz2
7. Распаковка дерева портежей
# tar -C /mnt/gentoo/usr -xjvf /mnt/cdrom/portage-20090123.tar.bz2
8. Копирование имеющихся исходников (если они есть)
# cp -vr /mnt/cdrom/distfiles /mnt/gentoo/usr/portage
9. Монтирование proc и привязка dev
# mount -t proc none /mnt/gentoo/proc
# mount -o bind /dev /mnt/gentoo/dev
10. Переходим в новую систему
# chroot /mnt/gentoo /bin/bash
11. Обновляем переменные окружения
# env-update
# source /etc/profile
12. Установим приглашение отличное от других консолей (для различия)
# export PS1="(chroot) $PS1"
13. Назначаем пароль root'у
# passwd root
14. Устанавливаем часовой пояс
# cp /usr/share/zoneinfo/Europe/Moscow /etc/localtime
15. В файле /etc/conf.d/clock раскоментироваем строку
с TIMEZONE и устанавливаем ей значение "Europe/Moscow"
16. Устанавливаем имя машины
В файле /etc/conf.d/hostname присваиваем параметру HOSTNAME
имя будущей системы. В моем случае это "ws".
17. Устанавливаем имя домена
В файл /etc/conf.d/net добавляем строку dns_domain_lo="home.lan", где home.lan -
имя домена.
В файл /etc/hosts между словами 127.0.0.1 и localhost вписываем следующее:
"ws.home.lan ws localhost.localdomain" (без кавычек)
18. Устанавливаем параметры сборки для нужного процессора и USE файлы
Отркываем для редактирования файл /etc/make.conf
Добавляем следующие строки:
LINGUAS="ru en"
USE="-gnome -ipv6 -cups -gpm"
USE="${USE} X qt3 opengl alsa hal mmx vim-syntax"
USE="${USE} trayicon dbus fam arts esd win32codecs pdf"
USE="${USE} lame flac wma jpeg2k jpeg djvu aac mp3 ffmpeg"

MAKEOPTS="-j2" # кол-во процессоров + 1
# Если desktop то еще две строки
VIDEO_CARDS="nvidia"
INPUT_DEVICES="keyboard mouse"

Параметры компилятора для процессора узнаются из gentoo wiki и пишутся
в строке CFLAGS.

Для AMD Sempron строки выглядят так:
CFLAGS="-march=athlon-xp -O3 -pipe -fomit-frame-pointer"
CXXFLAGS="${CFLAGS}"
CHOST="i686-pc-linux-gnu"

19. Устанавливаем, конфигурируем и собираем исходники ядра
# emerge gentoo-sources
20. Конфигурируем/собираем ядро и модули
# cd /usr/src/linux
# make menuconfig
# make
21. Устанавливаем модули и ядро
# make modules_install
# cp arch/i386/boot/bzImage /boot/
22. Устанавливаем загрузчик GRUB
# emerge grub
# grub
grub> root (hd0,1)
grub> setup (hd0)
grub> quit
23. Настраиваем заргузчик (файл menu.lst)
Создаем файл /boot/grub/menu.lst следующего содержания
timeout=5
title=Gentoo linux
root(hd0,1)
kernel /boot/bzImage root=/dev/hda2
24. Правим файл с точками монтирования
Отркываем файл /etc/fstab и заменяем в нем шаблоны названий на нужные разделы

/dev/hda2 / ext3 noatime 1 2
/dev/hda3 /var ext3 noatime 0 0
/dev/hda5 /home ext3 noatime 0 0

/dev/hda1 none swap sw 0 0
/dev/cdrom /mnt/cdrom udf,iso9660 iocharset=utf8,user,users,noauto,ro 0 0
/dev/fd0 /mnt/floppy auto noauto 0 0

shm /dev/shm tmpfs nodev,nosuid,noexec 0 0

25. Выходим из системы
exit
26. Отмонтируем каталог /mnt/gentoo
umount /mnt/gentoo/dev
umount /mnt/gentoo/proc
umount /mnt/gentoo/{home,var}
umount /mnt/genoo
27. Перезагружаем ПК
reboot

Автоматическая сборка и установка ядра

Если нужно собрать ядро на неизвестной машине и не хочется долго вникать
во все подробности установленного железа - можно поручить конфигурирование
ядра специальной утилите genkernel. Она создает ядро которое способно
загружаться на большинстве ПК. Ядро для установочного LiveCD Gentoo сделано
как раз именно этим пакетом.

1. Правим /etc/fstab под свои разделы
2. Устанавливаем grub (см. пункт 22)
3. Устанавливаем автоматический конфигуратор ядра
# emerge -av genkernel
4. Конфигурируем и собираем ядро при помощи genkernel
# genkernel all --no-splash --menuconfig
5. Файл ядра и initrd сейчас появились в /boot/.
Присваиваем им более короткие названия и прописываем в /boot/grub/menu.lst
Например: initramfs-genkernel-x86-2.6.27-gentoo-r8 в initrd, а
kernel-genkernel-x86-2.6.27-gentoo-r8 в bzImage
Файл menu.lst должен выглядеть примерно так:

timeout=5
title=Gentoo Linux
root(hd0,1)
kernel bzImage root=/dev/hda2 real_root=/dev/hda2
initrd /boot/initrd

Русификация (после установки базовой системы и перезагрузки ПК)

1. Создаем дополнительные локали
# cat /usr/share/i18n/SUPPORTED | grep -E 'ru_RU|en_US' >> /etc/locale.gen && locale-gen
2. В файле /etc/conf.d/consolefont меняем шрифт "default_8x16" на "Cyr_a8x16".
3. Создаем файл /etc/env.d/02locale со следующим содержимым
LANG="ru_RU.UTF-8"
LC_ALL=""
4. В файле /etc/conf.d/keymaps меняем раскладку "en" на "ru4", а параметру DUMPKEYS_CHARSET
устанавливаем значение "koi8-r"

5. Обновляем окружение, перезагружаем службы
# env-update
# source /etc/profile
# /etc/init.d/consolefont restart
# /etc/init.d/keymaps restart

Базовая настройка

1. Если есть время - то сейчас очень желательно обновить всю систему
до актуального состояния. Займет это приблизительно пару часов.

# emerge -auvDN world

Могут быть проблемы. Когда я писал это руководство - была взаимная
блокировка ss, err_com и e2fsprogs. Для ее разрешения нужно проделать
следующие шаги:

# emerge --fetchonly e2fsprogs-libs
# emerge --unmerge ss com_err e2fsprogs
# emerge e2fsprogs-libs

и продолжить пересборку мира
# emerge -auvDN world

2. Обновляем файлы конфигурации
# dispatch-conf
Если изменения устраивают - жмем 'u', если нет - 'z'
3. Создаем пользователя
# useradd -m -G users,wheel,audio,video,cdrom,cdrw,usb -s /bin/bash
# passwd
4. Устанавливаем основные программы mc, vim, sudo...
# emerge -av mc vim htop sudo vixie-cron syslog-ng
Совет:
Чтобы после выхода из MC оставаться в том-же каталоге нужно в
файл.bashrc добавить строку вида:
alias mc='. /usr/share/mc/bin/mc-wrapper.sh'
5. Разрешаем использование sudo пользователям входящим в группу wheel
Открываем файл /etc/sudoers и раскоментируем строку
"%wheel ALL=(ALL) NOPASSWD: ALL"
6. Добавляем в автозапуск и запускаем cron и syslog
# rc-update add syslog-ng default
# rc-update add vixie-cron default
# rc
7. Настраиваем сетевую карту
7.1 Создаем интерфейс eth0
# cd /etc/init.d
# ln -s net.lo net.eth0
7.2 Правим файл /etc/conf.d/net. Добавляем строки вида:
config_eth0=( "192.168.172.16 netmask 255.255.255.0 brd 192.168.172.255" )
dns_servers_eth0="195.98.64.65 195.98.64.66"
routes_eth0=(
"195.98.64.65 via 192.168.172.1"
"195.98.64.66 via 192.168.172.1"
"195.98.64.92 via 192.168.172.1"
)

Смысл понятен по названию, примеры можно посмотреть в файле /etc/conf.d/net.example
7.3 Добавляем интерфейс в автозапуск
# rc-update add net.eth0 default
7.4 Запускаем
# /etc/init.d/net.eth0 start
8. Обновляем файлы конфигурации
# dispatch-conf

Установка KDE

1. Устанавливаем xorg сервер.
# emerge -av xorg-server
2. Составляем /etc/X11/xorg.conf и пробуем запустить X сервер.
$ startx должен появиться курсор в виде наколоненного на 45 гр. крестика.

У меня видеокарта старая GeForce FX-5700, из новых драйверов nvidia эту модель уже исключили, поэтому у меня с первого раза графика не завелась. Чтобы сообщить Gentoo о том, что не нужно ставить самые последние драйвера нужно создать файл /etc/portage/package.mask и добавить в него строку:

>=x11-drivers/nvidia-drivers-177.82
Теперь "обновим" драйвер до более старой версии
# emerge -av nvidia-drivers и после startx графика запустилась.

3. Устанавливаем базовый набор KDE
# emerge -av kdebase kde-i18n
4. Добавляем запуск kde при старте Xorg
Создаем файл ~/.xinitrc и добавляем в него строку
"exec startkde" (без кавычек)
5. Переключаем OpenGL на драйвер nvidia
# eselect opengl set nvidia
6. Правим файл /etc/X11/xorg.conf
# cp /etc/X11/xorg.conf.example /etc/X11/xorg.conf
7. Запускаем
$ startx

Для запуска KDE при загрузке компьютера
1) В xdm указываем запускемый оконный менеджер
В файле /etc/conf.d/xdm переменной DISPLAYMANAGER присваиваем значение "kdm"
2) Добавляем xdm в автозапуск
# rc-update add xdm default
3) Чтобы сразу проверить результат:
# /etc/init.d/xdm start

Установка TrueType шрифтов

1. Устанавливаем
# emerge -av corefonts
2. Перезагружаем X сервер (Ctrl+Alt+Backspace)

Настройка автомонтирования съемных устройств

# emerge -auv dbus hal pmount
# rc-update add dbus default
# rc-update add hald default
# gpasswd -a plugdev

Приложение

1. Основные утилиты для управления пакетами

gentoolkit # основные утилиты: euse, equery, eclean, quickpkg...
epm # аналог equery
eix # быстрый индексированный поиск по базе пакетов

2. Полезные утилиты и комманды

revdep-rebuild # Находит неработающие бинарники и устанавливает 
# необходимые для их работы пакеты

euses xinerama # Описание USE флага xinerama

epm -qa # список установленных пакетов

equery l # список установленных пакетов
equery list -d # дубликаты
equery l kde-base/ # список установленных пакетов из раздела kde-base
equery b /bin/ls # какому пакету принадлежит файл /bin/ls
equery uses samba # с какими флагами был установлен пакет samba
equery files mc # какие файлы принадлежат пакету mc
equery depgraph mc # показать дерево зависимостей пакета mc
equery -q d gtk+ # какие установленные пакеты зависят от gtk+
equery u mc # посмотреть значения USE флагов для mc

quickpkg mc # собрать бинарный пакет уже установленный в системе

eclean -p distfiles # какие исходные файлы устарели и не будут использоваться
eclean distfiles # удалить устаревшие исходники из /usr/portage/distfiles

emerge depclean # удалить из системы все ненужные пакеты
# может привести к удалению нужных пакетов
emerge info # вывести текущие настройки (в т.ч. USE)
emerge -s foo # поиск пакета по имени
emerge -p -v foo # какие USE флаги влияют на эту программу и
# сколько Kb еще нужно докачать исходников
emerge -p -f bar # вывод url откуда можно тянуть sources
emerge -p -e bar # показать все зависимости программы без glibc
emerge -p -u foo # показать, что будет обновляться
emerge -p depclean # вывести пакеты которых нет в world и от
# которых никто не зависит (для удаления)

emerge sync # обновление portage через rsync://
emerge -f foo # только выкачка sources без установки

emerge -p bar # вывод что нужно для установки программы
emerge -p -t foo # вывод что нужно для установки программы
# (зависимости выводятся в виде дерева)
emerge -a bar # то-же что и -p, но после вывода информации
# спрашивает продолжить ли выполнять emerge
emerge -k foo # установка прекомпилированной программы из
# /usr/portage/package/All/ __ЕСЛИ__ там есть
# нужная версия программы
emerge -K bar # как и -k, но если нужной прекомпилированной
# версии нет, то используется какая есть
emerge foo # установка программы
emerge -u bar # обновить пакет (возможно, на меньшую версию)
emerge -uDN world # полный апгрейд системы
emerge -C foo # удалить пакет (unmerge). зависимости при
# удалении __НЕ__ проверяются!!!

emerge --info # Посмотреть настройки portage

etcat -v bar # вывести все версии пакета ... в портаже
etcat -u ИМЯ # с какими настройками USE (только из влияющих
# на эту программу) была установлена программа

emerge system # Обновить всю систему
emerge -u system # Обновить всю систему

emerge -p --depclean # Показать какие неиспользуемые зависимости будут удалены

emerge -auvDN world # Пересборка всей системы после изменения USE флагов


Изменить USE флаг для одного приложения
echo "category/moo some flags" >> /etc/portage/package.use

emerge -e system # Обновить всю систему включая компилятор (новый компилятор и/или смене CHOST)

etc-update # Обновление конфигурационных файлов (история не сохраняется)
dispatch-conf # Обновление конфигурационных файлов (история изменений сохраняется)

emerge -a depclean # Удалить неиспользуемые зависимости

Полезные скрипты

1. Собрать url для всех файлов необходимых для установки указанных пакетов
исключая те, которые уже находятся в /usr/portage/distfiles

emerge -pf kde-meta 2>&1 | awk '/tp:/ { print $1 }' | \
while read f; do [ ! -s /usr/portage/distfiles/${f##*/} ] && \
echo $f; done | sort -u > need_files.txt

Затем их можно скачать на компьютере имеющим доступ в интернет и
перенести себе в distfiles для установки

Скачать можно так:

wget -c -i need_files.txt


Источник: http://linuxportal.vrn.ru/?q=node/45
Категория: Gentoo | Добавил: admin (14.03.2009)
Просмотров: 3584 | Комментарии: 1 | Рейтинг: 0.0/0 |
Всего комментариев: 0

Имя *:
Email *:
Код *:

Linux-Gai © 2024