Издательский дом ООО "Гейм Лэнд"ЖУРНАЛ ХАКЕР #58, ОКТЯБРЬ 2003 г.

Обновление системы

Владимир Осинцев aka 0с

Xakep, номер #058, стр. 058-074-2


RPM-пакеты

Подарок от RedHat... Подробнее: http://linuxcenter.ru/?sid=S52V3I2g&good=366. Подавляющее большинство людей, работающих на системах, так или иначе основанных на RPM-пакетах (ASPLinux, ALT Linux и другие), и восхваляющих эти пакеты, сами не осознают, насколько от них зависят. Зачастую они не только не могут скомпилировать простую программку из тарбола, но и не хотят этому учиться, предпочитая засорять форумы фразами, типа: "А где можно скачать RPM-пакет с такой-то программой?" Это печально. Но вернемся к нашим RPM-пакетам. У них достаточно минусов. Во-первых, не очень сильны зависимости между RPM-пакетами. Например, при установке, пакет, в лучшем случае, попросит файл <имя_файла.lib> (но может этого и не сделать, в итоге мы получим нерабочую программу). Приходится заходить на http://rpmseek.com и искать нужную библиотеку. Вроде ничего сложного, но ведь можно поступить гораздо проще (об этом чуть позже). Во-вторых, настоятельно рекомендую пользоваться пакетами, скачанными с сайта именно твоего дистрибутива. Иногда RPM-пакеты собирают "случайные" люди, что может иметь непредсказуемый результат, поэтому лучше не рисковать.

Но неужели все так плохо? Решение есть: хорошо продуманный набор утилит APT, который используется в дистрибутиве Debian и в отечественных дистрибутивах Alt Linux Master и Alt Linux Junior.

Портежи в Gentoo

Подробнее: http://linuxcenter.ru/?sid=S52V3I2g&good=404. Находятся в /usr/portage. Порты и портежи выполняют одну и ту же функцию: устанавливают программы из исходников при минимальном участии пользователя. Они представляют собой набор скриптов и специфичных патчей, которые настраивают и компилируют исходники, проверяют зависимости, устанавливают и удаляют пакет из системы. Портежи - это частный случай портов из FreeBSD, называются они по-разному, чтобы не путать пользователей своей похожестью ;). О сходстве и различии портов и портежей мы поговорим позже. Работа c портежами происходит с помощью утилиты emerge:

#emerge <название_портежа> // установка портежа

#emerge -s <название_программы> // поиск портежа по названию

#emerge -S <ключевое_слово> // поиск портежа по ключевому слову

#emerge unmerge <название_портежа> // удаление портежа из системы

Также 'emerge' устанавливает прекомпилированные tbz-пакаджи (не надо забывать, что под понятием "прекомпилированные" скрывается платформа, для которой этот самый пакадж собран).

#emerge <tbz_пакет>

Обновление коллекции портежей происходит по протоколу sync. Для получения актуальной версии дерева портежей:

#emerge rsync

Назад на стр. 058-074-1  Содержание  Вперед на стр. 058-074-3