Gentoo...

09 October 2009 #gentoo

После того, как возился с ноутом отца, пытался восстановить его, все равно пришлось покупать новый компьютер. Сам выбрал, сам собрал. Пришлось выбирать операционную систему, которую установили бы на новую машину. Выбрали Windows 7.

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

Естественно, я не выдержал и снеся archlinux, установил семерку. Пришлось повозиться с драйверами звуковой (SBLive!), гугление указало на ручную установку kx drivers, установил. Вроде все заработало. Начал причесывать систему, устанавливать различные программы. Естественно захотелось попробовать работать с twitter через adobe air. Существует целый ряд программ, которые упрощают работу с тви… Установил, посмотрел и снес, ибо тормоза невероятные. Думал в винде проще будет, чем в линухе, не тут то было.

Затем столкнулся с проблемами. За несколько дней использования у меня несколько раз аварийно завершал свою работу эксплорер, винт натужно хрустел при работе торрент-клиента. И за несколько дней непрерывной работы система настолько ушла в своп, что работать стало проблематично, пришлось просто перезагружать ее. Затем под винду так и не нашел вменяемого клиента для работы с git. Нет нормального cron-менеджера. Ну и так далее, по мелочи еще. Очень сильно привык к работе на нескольких рабочих столах в линухе, ибо это есть очень удобно! В винде нативно ничего подобного не было. Подумал я, подумал… И решил вернуться на линух.

Встал вопрос, что же ставить? В последнее время очень много думал о Gentoo, так как нравилась гибкая система установки, но пугало очень долгое время установки. Можно было опять поставить Archlinux, но в тоже время не хотелось терять возможность провести эксперимент. Про убунту и сусе даже не думал. Смотреть там особо нечего. BSD не прельщают пока меня. В итоге решил рискнуть и установить генто! При этом решил экспериментировать до конца и в наконец поставить себе 64-битную систему. Ибо процессор у меня Core2Duo E8400, интересно было задействовать его полностью…. Соответственно было решено ставить именно gentoo amd64.

Скачал минимальный образ, и приступил к установке. Все документы были еще до установки семерки сохранены на внешний винт, поэтому о сохранности данных я даже не задумывался. Создал следующие разделы:

  • boot на 128 мегабайт (с избытком, но лучше больше)
  • swap на 2 гига (по размеру оперативной памяти, почти не используется, но может когда захочется поэкспериментировать со сном)
  • root на 10 гигов (на предыдущих дистрах хватало вполне)
  • home все остальное.

Данная система разбиения дисков у меня используется на домашней машине с 2006 года. Проблем никогда не возникало. Потому решено было использовать именно ее, а не ставить lvm.

С сетью так же проблем не возникло, так как интернет настроен на роутере, который уже производит раздачу интернета по машинам по локальной сети. Потому просто открыл handbook с инета и приступил к установке. Главное правило – читать долго и вдумчиво, прежде чем что-то делать. Сам процесс установки очень подробно там описан, потому даже не буду на нем останавливаться.

Для начала выбрал следующие параметры в файле /etc/make.conf:

CFLAGS="-march=nocona -O2 -pipe"
CXXFLAGS="${CFLAGS}"
USE="-kde -qt3 -qt4"
ACCEPT_KEYWORDS="amd64 ~amd64"
MAKEOPTS="-j5"

SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
GENTOO_MIRRORS="http://gentoo.kiev.ua/ftp/ "

На установку базовой системы ушло чуть меньше часа. Затем добавил строки для указания используемого драйвера в иксах:

INPUT_DEVICES="evdev"
VIDEO_CARDS="intel"

И запустил установку иксов. Время было позднее, поэтому в соседней консоли я запустил установку гнома и пошел спать. Утром обнаружил, что иксы установились полностью, а гном не до конца (4 пакета не поставились), причина в обновлении питона. Запустил python-updater, после чего перезапустил установку гнома и недостающие несколько пакетов легко встали на место.

Перед первым запуском иксов не забываем запустить демон hald. Иначе придется жестко перезагружать машину. Делаем следующее:

#/etc/init.d/hald start

После чего иксы нормально запускаются и работают. Это небольшой нюанс, на который хотелось бы обратить внимание. Все остальное хорошо прописано в документации.

Настраивал русскую раскладку с помощью средств самого гнома, меньше минуты на это ушло. Сам гном отслеживает, какая раскладка используется в каком окне. Удобно!

На настройку вида шрифтов ушло чуть больше времени. Задал во внешнем виде гнома используемый шрифт интерфейса, указал разрешение в 75 dpi, настроил сглаживание и создал файл ~/.fonts.conf по примеру с инета. Перезапустил иксы и очень удивился. На все я потратил не более 15 минут, и при этом шрифты выглядели намного лучше и приятнее, чем в семерке.

Сегодня гном у меня выглядит вот так:

Gnome

При установке одной из программ обратил внимание на то, что во флагах прописана переменная LINGUAS, в которой перечислены множество языков. Стало понятным, что в этой переменной описывается, какие языки интерфейса мы собираемся использовать. Тут же прописал в make.conf:

LINGUAS="ru en"

Примерно на второй или третий день использования gentoo столкнулся с непонятками. Свободное пространство в корневом разделе просто закончилось. Из отведенных 10 гигобайт места осталось от силы 300 мегабайт. Начал разбираться.

Оказалось, что все исходники, которые качаются с сервера, сохраняются на винте для последующего использования. В принципе оно и правильно. Через несколько дней использования Gentoo размер этих самых исходников у меня превысил 2 гигабайта. Выкачивать по 2 гига каждый раз, когда нужно пересобрать мир – довольно накладно по времени… Плюс к этому в темповой папке портеджа сохраняются пакеты, сборка которых прошла с ошибкой. Их просто удаляем и все нормально. Но еще один момент: некоторым программам, типа опеноффиса, требуется от 4 до 6 гигабайт свободного пространства под темповые файлы при сборке. А это довольно существенно!

Стало понятно, что 10 гигабайт под корень явно маловато при данной системе установки пакетов. Потому было решено перенести distfiles и tmp в раздел home, где место как раз имелось. Для этого создал /home/gentoo, в которой разместил distfiles, tmp и packages. После чего в /etc/make.conf определил переменные:

PORTAGE_TMPDIR="/home/gentoo/tmp"
DISTDIR="/home/gentoo/distfiles"

И после переноса файлов из /usr/portage/distfiles в /home/gentoo/distfiles дал команду env-update. Таким образом в корне осталась только сама система (на данный момент у меня занимает порядка 4,7 гигабайта), а хранение исходников и сборка производиться на разделе, где места всегда хватает.

По прошествии нескольких дней использования gentoo я могу сказать только одно: я удивлен! Я очень сильно удивлен!! Во-первых, я совершенно не уделял времени на оптимизацию производительности программ, указал по сути значения по умолчанию, которые рекомендуется использовать для моего процессора, и только. Но скорость работы программ выросла в несколько раз! Я не ожидал такого эффекта.

Устанавливать программы намного приятнее, чем где-либо еще, ведь можно указать, какие именно возможности мы ждем от нее, и при необходимости просто отключить не нужные зависимости. Подобной гибкости я пока нигде не встречал!

Но естественно, ничего не бывает без проблем. Так и тут. Приходиться жертвовать своим временем и вниманием на гибкость установки. Так как на сборку программ порой уходит очень много времени. А на отслеживание зависимостей и возможностей не меньше внимания. Порой не собираются некоторые программы (к примеру я до сих пор не мог собрать lm_sensors и в чем заключается проблема, пока никак не могу понять). При использовании исходников ядра с патчами от генто у меня отказалась работать встроенная сетевая Realtek, модуль r8169. Пришлось ставить дополнительную сетевую, занимаю дополнительный слот. В то время как на ванильном ядре встроенная сетевая работает великолепно! И данная ошибка тянется еще с 2006 года…

Но несмотря на все указанные проблемы (наверняка есть еще что-то, чего я пока не коснулся), gentoo мне нравиться!