Блог gentoo

Регистрация

gentoo

some abt gentoo

<<< HOWTO Gtk1 with UTF8
Thunderbird < - > Firefox>>>

Ещё раз о главном - жизнь после установки

Пост навеян аськой (да, я гентушник, и я не пользуюсь джаббером)), а точнее до боли знакомой фразой "привет! я читал твой блог! Есть вопрос!")) Нет, я совсем не против новых знакомств, у самого когда-то была туча вопросов, и спасибо всем тем, кто терпеливо отвечал и помогал мне в своё время во всём разобраться ;) Но на одних подсказках далеко не уедешь, нужно (нужно!) читать хендбук (благо он на русском) и другие материалы. Хотя по себе знаю, что решения возникшей проблемы всегда хочется "здесь и сейчас", а стоит открыть хендбук и увидеть СКОЛЬКО много там букв, как уже всякое желание читать пропадает)) Напишу здесь ещё несколько советов, которые могут помочь сориентироваться новичкам, может где-то повторюсь, неважно.

Итак, предположим, вы удачно установили систему и загрузились в неё. Может быть вы уже обновили дерево портежей (по emerge --sync), и может быть пересобрали все пакеты системы (по emerge -epv world). Вобщем готовы двигаться дальше, ставить Х'сы, биться с дровами за direct rendering, компилировать свой любимый DE/WM. Но стоп. Если вы смутно представляете, зачем нужны use-флаги, что такое eix, elogv, как обновлять мир, то вам сначала под кат =)

Совет: Не стоит выбирать профиль "desktop", который включает в себя несколько десятков use-флагов, предположительно подходящих для любой desktop-системы. Все необходимые флаги в любом случае пропишем постепенно в процессе установок пакетов, а добавление на начальном этапе этой кучи флагов из профиля desktop приведёт к большим зависимостям, и вы просто замучаетесь просматривать сто пакетов (и их use-флаги), потянувшихся по зависимостям за установкой всего одного-единственного необходимого вам пакета.

Совет: Перед установкой любого пакета, запускать команду emerge сначала с дополнительными ключами "pv" (или "av" - кому как больше нравится). Это даст возможность оценить предстоящий процесс установки, проверить и по необходимости включить (отключить) интересующие USE-флаги устанавливаемых пакетов.

Полезные пакеты и команды:
# emerge emerge-delta-webrsync - теперь обновлять дерево портежей будет гораздо быстрее (за счёт экономии трафика), минус - дерево портежей после обновления будет актуально на вчерашний день включительно (изменения за сегодня вы получите только завтра).

# emerge eix - с помощью этого пакета гораздо удобнее (и быстрее) работать с поиском по дереву портежей.

# eix-sync -Wv - этой командой удобно обновлять дерево портежей, она сделает emerge-delta-webrsync && update-eix и выведет в конце список изменений в дереве portage (что добавилось, что исчезло, что готово проапгрейдиться).

# emerge -uDNvp world (или -uDNva) - предлагаю эту команду для обновления мира (если не придумаете свою, более удобную). Совсем не обязательно обновляться как только хотя бы один пакет появится в выводе этой команды. Я, например, обновляю лишь некоторые пакеты, выборочно и достаточно редко.

# emerge elogv - позволит просматривать информационные сообщения всех устанавливаемых пакетов после их установки, но сначала необходимо его настроить. Как настроить - читаем в строках после установки, у меня настроено так (/etc/make.conf):
PORTAGE_ELOG_CLASSES="warn error log qa"
PORTAGE_ELOG_SYSTEM="save"
А если также добавить строку:
PORT_LOGDIR=/var/log/portage
то вся информация выводимая на экран во время компиляции пакета будет помещаться в указанный каталог (на случай, если вас не устроит elogv).

Совет: не пренебрегайте этой командой, после установки крупных вещей (Х'сы, Gnome, KDE) обязательно запустите elogv и внимательно просмотрите сообщения всех пакетов, что устанавливались. В выводе некоторых могут встречаться важные инструкции, которые необходимо будет выполнить.
Удалить текущую запись из журнала elogv - dd, помощь - F1.

# emerge gentoolkit - сюда входят eclean, equery, eread, euse, glsa-check, а главное - revdep-rebuild. Must have.


Обновление конфигов.

При обновлении некоторых пакетов может потребоваться вручную обновить их конфиги. Если после установки какого-либо пакета вы видите на экране такое сообщение:
 * IMPORTANT: 2 config files in '...' need updating.
значит некоторые конфиги ждут своего обновления. Обновить их можно либо с помощью etc-update, либо с помощью dispatch-conf. Рекомендуется использовать вторую команду, как более мощную, а при соответствующей настройке, умеющую сохранять историю изменений. В любом случае здесь рекомендуется включать мозг и внимательно изучать, какие строчки будут удалены, а какие - добавлены. Если обновляется какой-либо конфиг, где вы вносили свои корректировки, они могут быть предложены к удалению - поэтому нужно быть внимательным (сам по-первости попался - обновил конфиги не глядя, а потом удивлялся, почему настройки, которые я терпеливо прописывал в несколько файлов вдруг заменились на дефолтные).


USE-флаги

>с флагами я не совсем разобрался... зачем их прописывать, если проги и без них поставятся?

Предположим, ставим мы с тобой kopete (IM-клиент). Ты не включаешь никакие флаги и ставишь пакет, а я включаю "irc" и "yahoo". Так вот мой копете будет поддерживать также протоколы irc и yahoo, а твой - не будет.

>т.е. прогу надо будет заново ставить?

Да, тебе придётся прописать флаги и пересобрать пакет.
USE-флаги нужны для того, чтобы включать некоторый функционал в собираемом пакете.


>вот мы дали команду emerge gnome -pv
>там появились строки..красного, синего и желтого цвета...что это все означает?

Пример вывода emerge -uDNvp world у меня:


Жёлтым% выделены изменения в наборе флагов пакета. Флаги, больше недействительные (удалённые) для новой версии пакета будут взяты в скобки, новые (добавленные) флаги, появившиеся для новой версии, будут без скобок.
Красные - включенные флаги.
Синие - соответственно не включенные (идут по минусу).
Зелёные* - флаг был включен в системе после сборки пакета, пакет был собран без этого флага, готов к пересборке с ним.

Например, на рисунке:
[ebuild     UD] app-emulation/wine-0.9.49 [0.9.57]
предлагает понизить версию пакета wine (я ставил тестовую 0.9.57, у которой были доступны новые use-флаги "gecko" и "samba", и которых не будет, если пересобрать пакет в версию 0.9.49).
Флаг "java" я включил в системе только что, и поэтому он подсветился во всех пакетах, где он может использоваться, зелёным цветом.

USE-флаги добавляются (включаются) в системе по мере необходимости.

>ну вот я и пытаюсь узнать..как определить необходимость?

К примеру, поставил ты систему, чист твой /etc/make.conf, включено только несколько обязательных флагов (прописаны в профиле). Теперь хочешь установить Пакет_А, по-хорошему пишешь:
# emerge < Пакет_А > -pv
и смотришь use-флаги всех пакетов, что будут устанавливаться. Какие флаги тебе кажутся нужными - включаешь (прописываешь). И ещё раз перезапускаешь команду (могут появиться новые зависимости со своими флагами). Процесс повторять до полного удовлетворения =)

Если прописываешь флаги в make.conf - то они будут действовать глобально для всех пакетов, где встретятся.
Если в /etc/portage/package.use в формате:
категория/пакет флаг [флаг -флаг]
(app-misc/mc 7zip -X -gpm -ncurses slang)
то тогда эти флаги будут включены только для этого пакета.

Обычно в make.conf находится некоторое количество глобальных флагов (X, kde, gnome, alsa, etc...) и много-много строк в package.use. Так постепенно use-флаги и накапливаются. А если ты сразу пропишешь в make.conf "Х, kde, gnome, samba" и т.д. (думая, что "вот сейчас я пропишу всё что мне надо и забуду про эти флаги"), то установка какого-нибудь mc потянет за собой столько пакетов по зависимостям... что ты будешь совсем не рад =) Причём, есть вероятность, что всё зациклится и выпадет ошибка.

Смотреть, что означает конкретный флаг удобно в другой консоли в ufed.
Полезный пакет:
# emerge ufed - интерактивный ncurses-based редактор use-флагов. В нём флаги можно включать (отключать) и ufed будет прописывать их в /etc/make.conf. Конечно информация о флагах здесь не настолько подробная, как хотелось бы (особенно для новичка), но всё же лучше чем ничего.


>но ведь можно сделать так:
>USE="флаг" emerge < пакет >

А при обновлении мира, флаг у этого пакета потеряется, ибо нигде не прописан, то есть при пересборке (обновлении пакета) получится USE="-флаг" emerge < пакет >
и пакет потеряет часть функциональности.

>понял, а как быть, если прога тянет за собой другие, а у тех свои зависимости?

Смотришь их флаги, включаешь, а они после этого потянут ещё что-нибудь... смотришь теперь и их флаги)) пока не остановится процесс разрастания))


Если не планируется использовать deltup, можно прописать зеркало yandex в make.conf:
GENTOO_MIRRORS="http://mirror.yandex.ru/gentoo-distfiles/";
(хотя эта строка и при дельтапе не помешает).


Поддержание системы в чистоте и порядке =)

При установке пакета А, он прописывается в world (/var/lib/portage/world), все пакеты B C D, которые он потянул за собой по зависимостям никуда не прописываются, но они нужны пакету А и поэтому не болтаются в системе мёртвым грузом. Соответственно команда "# emerge -a --depclean" не сообщает ни о каких бесхозных пакетах.
Пакет А нам надоел и мы его удаляем: "# emerge -C пакет_А"
Но пакеты B C D всё ещё остаются в системе, совершенно ненужные никому. Удалить их можно лишь точно зная их имена, либо с помощью команды "# emerge -a --depclean".

Проверка целостности системы:
# revdep-rebuild - команда проверит целостность зависимостей системы, и при необходимости (найденных ошибках) переустановит (доустановит) необходимые пакеты. Рекомендуется запускать всегда после выполнения команды "emerge -a --depclean".


"Masked" пакеты.

>а еще один вопрос - хочу проставить rawstudio
>а это программа под маской
>как правильно снять маску на эту программу
>в хелпе написано, что они могут быть замаскированны несколькими путями

По умолчанию используется стабильная ветвь ПО. Большое количество пакетов (версий) могут находиться в тестовой ветви. Это не означает, что эти пакеты ужасно нестабильные, отнюдь, вполне возможно, что они будут стабильно работать у вас 364 дня в году ;) Чтобы использовать такие пакеты, есть два варианта:
1. Можно перейти полностью на тестовую ветвь и иметь всегда последние версии ПО.
2. Либо можно комбинировать стабильную ветвь с некоторыми пакетами из тестовой.

В данно случае видим:
# eix rawstu
* media-gfx/rawstudio
     Available versions:  ~0.6 ~0.7
     Homepage:            http://rawstudio.org
     Description:         a program to read and manipulate raw images from digital cameras.

Обе версии пакетов замасканы тильдой, т.е. относятся к тестовой ветви ПО. Снять такую маску можно прописав "категория/пакет ~x86" в /etc/portage/package.keywords, например:
media-gfx/rawstudio ~x86
(вместо ~x86 может быть ~amd64, либо **)

Второй случай: [M] - пакет заблокирован.
# eix kde-meta
* kde-base/kde-meta
     Available versions:
        (3.5)   3.5.8 ~3.5.9
        (kde-4) [M]~4.0.1 [M]~4.0.2

Здесь kde-4 помечен как находящийся в тестовой ветви (~), плюс к тому же заблокирован от использования (M), т.е. разработчики не рекомендуют пока его использовать - обязательно будут ошибки. Но если очень хочется... ;) то можно разблокировать, прописав "категория/пакет" в /etc/portage/package.unmask, например:
kde-base/kde-meta
(и в данном случае нужно будет также снять тильду, как описано выше).

Установка пакетов. Х'сы, DE.

Опишу свои личные соображения. Так как система будет использоваться на десктопе для повседневной работы, то обязательно понадобятся Х'сы, какое-то DE, различные кодеки и прочие приложения. Можно сказать "emerge gnome" или "emerge kde" и потом долго ковыряться в use-флагах нескольких сотен пакетов - а их будет много, ибо потянутся и Х'сы, а если повезёт, то захватятся и кодеки. Зато, если хватит сил, вся система будет установлена одной командой =)

Я же предпочитаю разбивать этот процесс на подпроцессы:
# emerge xorg-x11 - ставим только Х'сы, драйвер на видеокарту, добиваемся его работы и direct rendering'а.
# emerge ffmpeg imagemagick xine-lib mplayer - в каком порядке не особо важно, главное не одновременно (а то опять увязнете в сотне-другой зависимостей). После установки этих пакетов и всех нужных зависимостей, в системе будут стоять все необходимые видео/аудио кодеки, а также будет поддержка графических форматов. Здесь же может потянуться в зависимостях samba и cups.
И уже последним делом:
# emerge gnome (или kde-meta) - Гнум, KDE, либо что вам там нравится.

Наблюдать за процессом установки можно в другой консоли, запустив: tail -f /var/log/emerge.log


Надеюсь, эта информация помогла вам разобраться хоть в каких-то вопросах =)
Внимание! Этот пост не отменяет прочтение хендбука, так что вам теперь сюда: http://www.gentoo.org/doc/ru/handbook/


HandBook 2006.1 ru, HandBook 2007.0 en, Советы пользователям Gentoo

Теги: helpdesk|portage|установка


  • evridika
    20 марта 2008|23:54|ссылка
    после всего прочитанного gentoo я точно ставить не буду...

    • Vodias
      21 марта 2008|03:19|ссылка
      Наоборот, в этом вся и прелесть, собрать все самому. Притом по Gentoo полно документации и ресурсов в инете на русском.

      • evridika
        21 марта 2008|04:09|ссылка
        Ну не знаю...после прочтения какой-то детский страх проснулся..)

    • gentoo
      21 марта 2008|05:50|ссылка
      чорт, а я наоборот хотел завербовать новобранцев )))

      • evridika
        21 марта 2008|06:00|ссылка
        ты плохо вербуешь) картиночек нету)))

        • gentoo
          21 марта 2008|06:03|ссылка
          Одна есть, и даже есть красная кнопка))

          • evridika
            21 марта 2008|06:14|ссылка
            нуу...если представить, что я это все не читала, то мож поставлю, у меня вроде был дистр. Потом напишу впечатления, с картинками)))

        • myfriend-gentoo
          21 марта 2008|15:34|ссылка
          Надо делать мувики!)

          • gentoo
            22 марта 2008|04:15|ссылка
            гг, лол

  • tboris
    21 марта 2008|02:36|ссылка
    Мощно. Величайшее спасибо тебе, парень. По твоему блогу и по ссылкам на разные вики\доки настроена и безотказно(почти) работает вся моя система.
    А если что не смог решить, читая блог, то поиск в гугле: "gentoo искомое слово\проблема" как правило в первых трёх ссылках выдаёт решение проблемы. Тоже не стоит пренебрегать, ибо гугл знает всё!

    • gentoo
      21 марта 2008|05:54|ссылка
      Рад, что был полезен ;)

  • butch
    21 марта 2008|04:52|ссылка
    повторение известных истин всегда полезно ;)

  • mithron
    21 марта 2008|04:55|ссылка
    В make.conf можно прописать дефолтные опции, которые всегда будут ставится после emerge, к примеру, так:
    EMERGE_DEFAULT_OPTS="--ask --verbose"
    Еще стоит отметить, как более правильно распределять флаги между make.conf и package.use. У меня сейчас глобальные флаги, описывающие всю мою систему, в make.conf, а более локальные - относящиеся к конкретным программам - в package.use. Так наверно более удобно. Вообще я как-то стремлюсь сократить число флагов в make.conf.

    • gentoo
      21 марта 2008|06:03|ссылка
      Гуд! Если есть, что ещё дополнить, всегда велкам ;)

    • ru-proton
      27 марта 2008|11:41|ссылка
      А отменять как?

  • Анонимно
    21 марта 2008|06:19|ссылка
    написал бы нормально про "Masked"
    а то чтото перевод сообщения системы никому ничего не дает :)
    заострить внимание на установке этих пакетов а то даже в хэндбуке
    вилами по воде

    • gentoo
      21 марта 2008|06:47|ссылка
      щаз нарисуем..

  • lxj.endofinternet.net
    21 марта 2008|14:01|ссылка
    Не могу не поделиться :)
    http://lxj.endofinternet.net/column/gentoo-tips/

  • gvard-ru
    21 марта 2008|14:13|ссылка
    В очередной раз большие спасиббы за подробные описания особенностей существования в Gentoo!
    По мере накопления собственного опыта стараюсь делать примерно тоже самое, но по большей части получается зеркалирование ;)
    gvardovich.blogspot.com

    • gentoo
      21 марта 2008|14:30|ссылка
      Знакомые всё лица ;) Всегда пожалуйста. Вчера мне видимо правильные вопросы в аське задавали, что возникло желание накатать эти 15Кб ))

  • ergil
    21 марта 2008|18:22|ссылка
    Пользуюсь Gentoo с 2003 года, о elogv не знал, спасибо :)

    • lxj.endofinternet.net
      23 марта 2008|02:41|ссылка
      А он и не так давно появился, где-то года полтора назад.

      Читайте GMN :)

  • KVetal
    14 мая 2008|06:58|ссылка
    Кратко, доступно, полезно.
    по поводу хендбука согласен на 100%

  • my-lonely-lonely.blogspot.com
    22 июля 2008|00:07|ссылка
    Спасибо большое за блог и очень ценные статьи! Сам пока живу пол года на убунте, но уже собрался ставить генту, довольно интересный дистрибутив (даже в плане изучения юникс систем), и по мере чтения блога все больше и больше хочу собрать! =)

    • gentoo
      23 июля 2008|11:30|ссылка
      А я тут недавно ставил убунту и скажу, что очень даже ничего, возможно и остался бы в ней ещё пожить, если бы она пару раз самовольно не перезагрузилась =) Но да, как кто-то говорил, если хочешь изучить линукс - ставь слаку или генту =)

  • leo90145
    27 марта 2010|09:08|ссылка
    спасибо про флаги интересно было . кратко и понятно ))) я гентушу месяца полтора пытался на винвар воркстатион поставить.. и крах.. что-то неподходило.. сегодня утром докомпилилось кде (часов 13, учитывая что постоянно по ходу добавлял кое что он просил) на голую машину.. все работает, чесно вывод, оч. сложно, но это как анегдот, парень девушке -раздевайся, та разделаь, теперь сними штаны наклонись, возми одень мне и себе противогаз и зарой шланг со стороны фильтра, та спрашивает нахрена мы задыхатся будем, на что он ответил ЛЮБЛЮ ТРУДНОСТИ )

    • xiaqinghua1989
      13 октября 2010|06:14|ссылка
      Grandmother lived in the vegetable garden outside the village. Archlord gold We are just riding a motorcycle off the road, black from the vegetable plots ran the fastest to meet us. Because we go to when they are already fast at noon, so let's eat. I finished the meal, we went out looking for black to play.thomas sabo verkauf
      When I saw the black when it's like I feel it seems hungry.world of warcraft gold I went to took a steamed bun, and then breaking off a small piece of the next, it said: "The black, if we should want to eat then." Finish, I put bread and threw the air. Black look, at once erected the whole body up. thomas sabo onlineshop
      2 small black claws on the air, and then big mouth,maple story mesos jump up, suddenly bite of the bread. I jumped up and patted its head, saying: "Well like, black, you're a hummer!" It is a large black tail Shuaile Shuai and gently biting the bite of my Yijiao that agreed. "This time you can not unilaterally!"thomas sabo ohrringe