Gentoo Linux
[Только зарегистрированные пользователи могут видеть ссылки Нажмите здесь, чтобы зарегистрироваться...] | [Только зарегистрированные пользователи могут видеть ссылки Нажмите здесь, чтобы зарегистрироваться...] | [Только зарегистрированные пользователи могут видеть ссылки Нажмите здесь, чтобы зарегистрироваться...] | Страница загрузки [[Только зарегистрированные пользователи могут видеть ссылки Нажмите здесь, чтобы зарегистрироваться...]] [[Только зарегистрированные пользователи могут видеть ссылки Нажмите здесь, чтобы зарегистрироваться...]]
О Gentoo
Скрытый текстЧто собственно собой представляет Gentoo Linux? Это такой Linux который вы собираете сами из исходников (source), вы скажете "А нафиг он нам нужен? Если есть Slackware, да и Debian тоже ничего". Я постараюсь ответить.
Основная идеология Gentoo не собрать Linux из исходников, вы можете также установить систему из прекомпиллированых пакетов, основной идеологией Gentoo является сборка системы только с нужными компонентами, для этого был введён флаг USE , который является, пожалуй, самым большим достоинством Gentoo в отличии от других дистрибьютивов из исходников. Ну а преимущества от Mandriva, Suse, Ubuntu и подобных дистрибьютивов можно перечислять очень долго.
Есть конечно мелкие огрехи и у Gentoo, самым серьёзным является система инициализации SysVInit, но это легко решается установкой OpenRC и распараллеливанием загрузки.
Думаю лучше за меня скажет что такое Gentoo сам разработчик, читайте дальше про философию Gentoo.
Философия Gentoo
Скрытый текстЯ начал работу над Gentoo, потому как не мог найти дистрибутива, который бы меня устраивал. Во всех Linux-дистрибутивах я заметил одну неприятную деталь - инсталляционные утилиты, управляющие установкой ПО в системе, предназначались для упрощения работы, однако на практике лишь мешали администрированию системы.
Поэтому я и создал Gentoo с её собственной системой портэжей (т.н. Portages), более совершенной, чем все системы управления ПО, существовавшие до этого. Система портэжей отличается большой гибкостью и даёт возможность пользователю успешно использовать её для решения конкретных задач независимо от поставленных целей.
Например, если вы хотите посмотреть подробности сборки пакета, вы можете посмотреть файл ebuild и получить всю необходимую информацию оттуда. Чтобы настроить параметры установки, можно воспользоваться переменной USE. Чтобы добавить новый пакет, можно просто создать новый файл ebuild для дерева портэжей. Вы также можете установить требуемый пакет командой emerge - система автоматически проследит за установкой всех необходимых пакетов, от которых зависит нужное вам приложение.
Linux-сообщество оценило новую систему портэжей, и Gentoo начал стремительно развиваться. Дистрибутив получил известность как "дистрибутив исходников", однако сутью Gentoo является вовсе не принцип "from source" (из исходников). Конечно, это важный, ключевой принцип дистрибутива, но не основной. Основным здесь является технология, позволяющая пользователю делать с системой всё что угодно, без каких либо ограничений.
Работая над этой технологией, я представлял себе произвольного пользователя ОС Linux. Что он (или она) хотел бы сделать с системой? Философия Gentoo - дистрибутив, дающий возможность делать с системой всё что угодно.
Камнем преткновения для появления Gentoo было отсутствие простого метода автоматической установки ПО из исходников, ориентированного на пользователей, с подробными инструкциями. На данный момент мы решили эту задачу практически полностью. Частично реализована поддержка прекомпилированных пакетов, хотя, с другой стороны, с момента своего появления система портэжей Gentoo поддерживала установку бинарников.
Реализация поддержки бинарных пакетов очень важна, т.к. большое количество ПО распространяется именно в бинарниках (например, в виде пакетов RPM - прим. переводчика). Если бы Gentoo не поддерживал бинарные пакеты, мы бы не смогли бы назвать его удобным дистрибутивом, позволяющим пользователю делать с системой всё, что ему придёт в голову. Впрочем, помимо "философских" причин для поддержки бинарников есть много причин практических.
Философию Gentoo можно сформулировать в нескольких предложениях. Каждый линуксоид использует компьютер для решения своих конкретных задач. Главной целью Gentoo является предоставление ПО, позволяющего пользователю выполнять свои задачи эффективно. Утилиты Gentoo должны быть удобны в использовании, должны позволить пользователю оценить по достоинству все преимущества открытого ПО вообще и Linux в частности. Такое возможно лишь при наличии огромной базы открытого ПО, отражающей все потребности современных пользователей, содержащей тысячи разнообразных программ, по возможности удобных. Если некая утилита вынуждают пользователя выполнять какие-то нестандартные действия для совершения стандартных операций - она скорее мешает работе, чем помогает. Каждый встречал подобные утилиты, неудобные в работе, лишённые ряда очевидных функций. Такое ПО противоречит философии Gentoo.
Другими словами, философия Gentoo также заключается в разработке корректного ПО. Когда утилита выполняет свои и только свои обязанности, но выполняет их в полной мере, вы можете забыть о её присутствии (что, впрочем, соответствует философии Unix вообще как таковой - прим. переводчика). Она не помешает, не попытается взаимодействовать с вами, пока вы сами не захотите этого.
В настоящее время в перспективы Gentoo входит поддержка и создание ПО, близкого к идеалу - мощных и простых в использовании утилит, способных обеспечить выполнение множества различных задач. Разве не прекрасно иметь возможности найти ПО, делающее именно то, что вы от него хотите? Разве это не вызывает чувство эстетического наслаждения? Наша задача - донести это чувство до как можно большего числа людей.
Установка
Скрытый текстТребования
Скрытый текстТеперь о требованиях Gentoo. По сути её можно установить почти на любой ПК( не просто так Gentoo на PS3 и на некоторые КПК устанавливают), но время установки напрямую зависит от производительности компьютера. Также нужно хорошее соединение с интернетом.
Подготовка к установке
Скрытый текстСистему будем ставить только из минимального установочного диска, т.к. это самый верный способ установки, при таком способе установки система будет установлена из последних доступных и признанных стабильными компонентов.
Скачиваем минимальный инсталяционный образ ftp://mirror.yandex.ru/gentoo-distfiles/releases/ Размер его будет в районе 100Mb.
И записываем этот образ на диск. Если вы не очень любите консоль, то советую выделить свободный раздел для Gentoo и раздел подкачки, любой утилитой для работы c HDD. Это, пожалуй, и вся подготовка, переходим к установке.
Установка в 2 этапа
Скрытый текстЭтап 1
Скрытый текстЗагружаемся с записанного ранее диска, появится приветствие с просьбой ввести имя ядра с каким грузится, пишем gentoo и нажимаем Enter, пошла загрузка. Ждём появления терминала. Допустим вы устанавливаете Gentoo на первый SATA диск, то он будет называться sda, второй SATA диск sdb, первый IDE диск - hda, второй - hdb,. Ещё хочу сказать на счёт логических разделов, нумерация дисков идёт в следующем порядке: на диске с MBR может быть только четыре первичных(primary) раздела 1-4, далее идут логические(logic) диски, их нумерация начинается с 5 , т.е. независимо от количества первичных разделов, нумерация логических дисков всегда начинается с 5.
Вводим команды:
Выведется список всех разделов и информация о них. Допустим устанавливаем ОС на диск, разметить его нужно следующим образом:Код:# fdisk /dev/sda fdisk> p
Создаём SWAP раздел и подключаем его:Код:sda1 - primary - ext3 - 10 Gb (/) sda2 - primary - swap - 2 Gb (swap) sda3 - primary - ntfs - 168 Gb (/mnt/Windows)
Форматируем и подключаем корневой раздел:Код:# mkswap /dev/sda2 # swapon /dev/sda2
Проверяем доступность сети, возможно что она автоматически настроилась:Код:# mkfs.ext3 /dev/sda1 # mount /dev/sda1 /mnt/gentoo
Если всё же сеть не настроена, читайте раздел по настройке сети в настольной книге Gentoo, там достаточно подробно и хорошо это расписано.Код:# /sbin/ifconfig
Переходим в корневой каталог нашей будущей системы:
Заходим в список зеркал, находим и скачиваем архив стадий:Код:# cd /mnt/gentoo
Распаковываем архив стадий:Код:# links http://www.gentoo.org/main/ru/mirrors.xml
Вновь зайдите в список зеркал и скачайте оттуда последний снимок дерева портежей и распакуйте его:Код:# tar xvjpf stage3-*.tar.bz2
После этого обязательно выполняем копирование файла resolv.conf в нашу будущую систему, для того что бы после перехода в новую среду сеть осталась рабочей:Код:# tar xvjf /mnt/gentoo/portage-latest.tar.bz2 -C /mnt/gentoo/usr
Пожалуй ключевым моментом в установке Gentoo является настройка параметров компиляции в файле make.conf, приступаем. Открываем файл make.conf в редакторе nano:Код:cp -L /etc/resolv.conf /mnt/gentoo/etc/resolv.conf
Вот пример моего make.conf:Код:nano /mnt/gentoo/etc/make.conf
По поводу СFLAGS для вашего процессора лучше почитать Wiki , насчет флагов USE нужно думать самому, у меня например система настроена для Gnome, "-" перед флагом значит что не нужно собирать пакеты с поддержкой данного элемента системы, если флаг без знака - наоборот собирать с поддержкой данного элемента. Можно сказать что сразу у вас не получится найти оптимальный набор флагов USE для вашей системы. Я могу только посоветовать:Код:CFLAGS="-O2 -march=k8-sse3 -pipe -fomit-frame-pointer" CXXFLAGS="${CFLAGS}" MAKEOPTS="-j3" CHOST="i686-pc-linux-gnu" USE="gnome -ipv6 -cups -kde -crypt -kdm -qt -qt3 -qt4 -ssse3" USE="${USE} X apm directfb opengl alsa hal acpi mmx xcb sse sse2 sse3 vim-syntax" USE="${USE} glitz cairo truetype cleartype trayicon dbus arts win32codecs pdf" USE="${USE} fam emerald png tiff lame flac wma jpeg2k svg jpeg aac mp3 ffmpeg" USE="${USE} automount policykit consolekit fbcondecor symlink gpm gdm gtk gnome " LINGUAS="ru en" VIDEO_CARDS="nvidia" INPUT_DEVICES="keyboard mouse evdev" GENTOO_MIRRORS="http://mirror.yandex.ru/gentoo-distfiles"
Остальные флаги по вашему желанию и потребностям.Код:X opengl alsa hal acpi mmx xcb sse vim-syntax glitz cairo truetype cleartype trayicon dbus arts win32codecs pdf png tiff lame flac wma jpeg2k svg jpeg aac mp3 ffmpeg
Если у вас есть тачпад то добавляем:
Запись evdev не удаляем.Код:INPUT_DEVICES="keyboard mouse synaptics evdev"
После записи параметров для сохранения файла нажимаем F2.
Перходим в новую систему, выполняем команды:
Устанавливаем часовой пояс:Код:# mount -t proc none /mnt/gentoo/proc # mount -o bind /dev /mnt/gentoo/dev # chroot /mnt/gentoo /bin/bash # env-update # source /etc/profile # export PS1="(chroot) $PS1"
Список локаций можно посмотреть командой:Код:# cp /usr/share/zoneinfo/Europe/Kiev /etc/localtime
Открываем файл /etc/conf.d/clockКод:# ls /usr/share/zoneinfo/Europe/
B присваиваем TIMEZONE значение "Europe/Kiev". Если планируем использовать Windows то еще присваиваем СLOCK значение local.Код:# nano /etc/conf.d/clock
Открываем файл /etc/conf.d/hostname
Присваиваем имя хоста допустим ws, HOSTNAME="ws"Код:# nano /etc/conf.d/hostname
Задаём имя домена:
Открываем файл hosts :Код:# echo 'dns_domain_lo="domain.ru"'>>/etc/conf.d/net
И между 127.0.0.1 и localhost вписываем ws.home.lan ws localhost.localdomain. Устанавливаем исходники ядра:Код:# nano /etc/hosts
Устанавливаем v86dКод:# emerge -av gentoo-sources
Приступаем к конфигурации и установке ядра:Код:# emerge -av sys-apps/v86d
Обязательно устанавливаем параметры:Код:# cd /usr/src/linux # make menuconfig
И что бы глаза не выпадали на клавиатуру от страшной консоли включаем фреймбуфер:Код:General setup --->[*] Initial RAM filesystem and RAM disk (iniyramfs/initrd) support (/usr/share/v86d/initramfs) Initramfs source file(s)
Если вы планируете использовать проприетарные драйвера для видеокарты nVidia не в коем случае не включайте nVidia Framebuffer Support, так как драйвера конфликтируют с этим фреймбуфером и не устанавливаются.Код:Device Drivers ---> Graphics support --->[*] Support for frame buffer devices ---> [*] Userspace VESA VGA graphics support
После конфигурации ядра компилируем его и устанавливаем:
Устанавливаем загрузчик.Код:# make # make modules_install # cp arch/i386/boot/bzImage /boot/
Конфигурируем загрузчик, открываем файл:Код:# emerge -av grub # grub grub> root (hd0,0) grub> setup (hd0) grub> quit
C учётом допущений сделаных мной выше о структуре разделов и установленных ОС приводим этот файл к следующему виду:Код:# nano /boot/grub/menu.lst
Правим файл с точками монтирования разделов, открываем fstab:Код:default 0 timeout 30 title Gentoo Linux root (hd0,0) kernel /boot/bzImage1 root=/dev/sda1 ro quiet splash video=uvesafb:1024x768-32@85 title Windows 7 rootnoverify (hd0,2) chainloader +1
И приводим его к следующему виду:Код:# nano /etc/fstab
B создаём папку /mnt/Windows иначе раздел sda3 и устанавливаем пакет ntfs-3g не будет монтироватся.Код:/dev/sda2 / ext3 noatime 1 2 /dev/sda1 none swap sw 0 0 /dev/sda3 /mnt/Windows ntfs-3g locale=ru_RU.UTF-8,user,uid=1000,gid=100,umask=0002,fmask=0113 0 0
Теперь нужно настроить сеть и установить все необходимые пакеты для её работы, сново по этому поводу читаем HandBook.Код:# mkdir /mnt/Windows # emerge -av ntfs-3g
После этого можно выходить и перезагружаться:
Теперь базовая ситема у нас есть и инсталяционный диск нам более не нужен. Переходим ко второму этапу установки.Код:# exit && cd # umount /mnt/gentoo/{dev,proc,} # reboot
Этап 2
Скрытый текстНа этом этапе мы установим базовые демоны и пакеты, Xorg сервер и рабочую среду.
Для начала сделаем русификацию. Создадим дополнительные локали:
Откроем файл /etc/conf.d/consolefont:Код:# cat /usr/share/i18n/SUPPORTED | grep -E 'ru_RU|en_US' >> /etc/locale.gen # locale-gen
И поменяем шрифт "default_8x16" на "Cyr_a8x16" и сохраним файл.Код:# nano /etc/conf.d/consolefont
Созддадим файл /etc/env.d/02locale
И добавим в него две строки:Код:# nano /etc/env.d/02locale
Обновим окружение, перезапустим службу:Код:LANG="ru_RU.UTF-8" nLC_ALL=""
Устанавливаем самые необходимые сервисы и некоторые пакеты:Код:# env-update # source /etc/profile # /etc/init.d/consolefont restart
Устанавливаем автозапуск сервисов журналирования, индексирования, консольной мышы и автомонтирования:Код:# energe -av sudo vixie-cron syslog-ng hal pmount
Переходим к установке Xorg сервера и графической среды. В основной ветке портежей находятся только проверенные пакеты, по этому для установки последних версий компонентов которые находятся в оверлеях нужно установить два пакета: PortageXS - автоматизации размаскирования пакетов и Layman для управления оверлеями. Пакеты маскируются разработчиками если они еще не протестированы толком или с ними есть проблемы. Если у пакета номер версии 9999, то это значит что пакет находится в стадии разработки. Из оверлеев можно установить много чего интересного, например из оверлея kde-testing можно сейчас установить последнюю бету KDE 4.3.Код:# rc-update add syslog-ng default # rc-update add vixie-cron default # rc-update add gpm default # rc-update add dbus default # rc-update add hald default
Приступаем к установке выше названых пакетов:
Для наглядного понимания этих утилит я сделаю допущение что мы ставим последнею версию Xorg 1.6.1 и Gnome 2.26.0, которых ещё нет в основной ветке портежей.Код:# emerge -av PortageXS layman
Приступаем к подготовке оверлеев и размаскированию пакетов. Для начала добавляем оверлей x11 в котором находится последняя версия Xorg сервера, и оверлей gnome в котором находится последняя доступная версия Gnome.
По умолчанию layman устанавливает оверлеи в /usr/portage/local/layman. После выполнения команд выше у нас в этом каталоге появятся ещё два католога /usr/portage/local/layman/x11 м /usr/portage/local/layman/gnome . Для того чтобы мы могли устанавливать пакеты из наших оверлеев путь к ним нужно прописать в make.conf. Открываем его:Код:# layman -a x11 # layman -a gnome
И добавляем следующюю строку:Код:# nano /etc/make.conf
Далее нам нужно размаскировать пакеты x11-base/xorg-server и gnome-base/gnome.Код:PORTDIR_OVERLAY="/usr/portage/local/layman/gnome /usr/portage/local/layman/x11"
Чтобы посмотреть доступные версии нужного нам пакета вводим команду:
После определения с необходимой нам версией вводим:Код:# autounmask x11-base/xorg-server
По аналогии размаскируем GnomeКод:# autounmask x11-base/xorg-server-1.6.1
По сути команда autounmask просто добавляет строки в файлы /etc/portage/package.keywords и /etc/portage/package.unmask . Размаскировывать этой командой гараздо удобней чем руками, так как она размаскировывает и замаскированые зависимости этих пакетов, бывает что их сотни.Код:# autounmask gnome-base/gnome-2.26.0
После размаскировки устанавливаем:
Автоконфигурируем Xorg:Код:# emerge -av xorg-server
Далее так как мы используем для инициализации устройств evdev, а не устаревший способ прописования устройств ввода в xorg.conf . Открываем файл /etc/X11/xorg.conf:Код:# Xorg -configure # cp /root/xorg.conf /etc/X11/xorg.conf
И удаляем все секции InputDevice и удаляем строки с текстом InputDevice. И добовляем секцию ServerFlags:Код:# nano /etc/X11/xorg.conf
Устанавливаем Gnome:Код:Section "ServerFlags" Option "AllowEmptyInput" "True" EndSection
Для установки KDE нужно вводить:Код:# emerge -av gnome-base/gnome
После установки, для автоматического запуска Gnome при старте Xorg сервера(команда startx). Создаём скрытый файл .xinitrc в папке пользователя:Код:# emerge -av kde-base/kde-meta
И добавляем в него строку:Код:# nano ~/.xinitrc
Если же нужен запуск KDE, то добавляем другую строку:Код:exec gnome-session
Для запуска Gnome Desktop Manager (GDM) при запуске системы, открываем файл /etc/conf.d/xdm :Код:exec startkde
И меняем значение перменной DISPLAYMANAGER c xdm на gdm, если же нужен запуск KDE Desktop Manager (KDM) то ставим значение этой переменной kdm.Код:# nano /etc/conf.d/xdm
Последний штрих, добовляем пользователя, т.к. работать под рутом опасно, можно напрочь убить систему.
Устонавливаем пароль для этого пользователя:Код:# useradd -m -G users,wheel,audio,video,cdrom,cdrw,usb,plugdev -s /bin/bash <пользователь>
Теперь смело перезагружаем компьютер, если все было верно сделано, то вы без проблем загрузитесь в графическую оболочкуи можете приступать к работе.Код:# passwd <пользователь> <пароль>
Нюансы, советы
Скрытый текстПервый и самый простой совет: всегда читайте внимательно сообщения на экране, тогда большинство возникших проблем вы сможете решить сами, без чьей-либо помощи.Всегда старайтесь понять что вы и зачем делаете. Бывает такое что пакет по каким-то причинам не устанавливается, попробуйте размаскировать более новую версию пакета или же попробуйте установить пакет ниже версией. Для установки пакета именно той версии которая вам нужна делаем так:
Если вам нужно замаскировать пакет ранее вами размаскированый то просто удаляем записи из файлов package.keywords и package.unmask(где они распаложенны и как их открыть описанно выше).Код:# emerge -av =gnome-base/gnome-2.24.1
Если же нужно просто замаскировать какой либо пакет, то создаем файл /etc/portage/package.mask и в него вносим полные имена с версией маскируемых пакетов. Кстати, здесь работает простейшая математическая логика, например если мы напишем такую строку =gnome-base/gnome-2.26.0 , то замаскируется пакет только указанной вами версии, если же вы введёте =>gnome-base/gnome-2.26.0 то замаскируются все пакеты версией выше и указанной вами, если же вы введёте <gnome-base/gnome-2.26.0 то замаскируются все пакеты версией ниже вами указанной. Установите пакет gentoolkit, он вам очень пригодится.
Боятся здесь нечего, если вы будете аккуратны и внимательны то с вашими данными ничего не случится.
Не забрасывайте установочный диск, вдруг вы что-то натворили он вам поможет. С помощью него вы, например, можете пересобрать ядро системы если вы даже удалили его и ваша система на жёстком диске не грузится и из других, казалось бы смертельных случаев для ОС он вам поможет выпутаться.
Если при установке пакета сборка завершается с ошибкой о отсутствии какой-то библеотеке, Попробуйте выполнить команду из пакета gentoolkit:
Если же это не поможет попробуйте поискать пакет с именем как у отсутствующей библеотеке:Код:# revdep-rebuild
# emerge -s <имя_библеотеки>
Пока больше ничего в голову не приходит. И на последок: не так страшен черт как его малюют.
Плюсы и минусы
Скрытый текстКак известно нельзя выделять положительные и отрицательные стороны просто так из ничего, только в сравнении можно выделить эти качества. Я буду сравнивать Gentoo c Ubuntu, т.к. Ubuntu, на мой взгляд, самый распрастраненный дистрибьютив.
Минусы:Плюсы:
- Сложность установки. Без комментариев.
- Устаревшая система инициализации SysVInit. Я говорил о ней в начале и это решаемо.
- Сложность управления пакетами.
- Необходим хороший доступ к сети интернет.
- Быстродействие. Мы собираем ОС только под свой компьютер без обратной совместимости со старым оборудованием и без поддержки другого оборудования, мы устанавливаем только нам необходимое и нужное.
- Нет параноидальной борьбы за свободное ПО.
- Нет лишних и ненужных нам вещей.
- Быстрое обновление.
- Полная свобода выбора, что хотим то и ставим. Испытываем беты версии, новые ядра и т.д., что душа пожелает.
- Познаем линукс, учимся с ним работать и глубже понимаем его.
Автор: Daniel Robbins изначальный разработчик Gentoo
Перевод: Логинов Игорь..........................................






Ответить с цитированием

Социальные закладки