Формат rpm: общие сведения

Как мы знаем из исторической части, изобретение формата пакетов rpm и соответствующей утилиты для управления ими оказало очень большое влияние на Linux-дистрибуцию вообще. Так что пора познакомиться с этими материями поближе. И начнём с рассмотрения формата.

За свою долгую жизнь формат rpm претерпевал различные изменения, однако в генеральной своей линии сохранял как свои характерные черты, так и обратную совместимость вплоть до настоящего времени. Текущая его версия из числа официально поддерживаемых одноимённым проектом -- 4.7.1. Она используется в бессчётном числе дистрибутивов, как прямых клонов и дериватов Red Hat, пусть даже столь отдалённых, вроде Mandriva или Altlinux, так и в системах, генетически с ним не связанных (например, во всех вариантах Suse).

Надо отметить, что параллельно генеральной версии rpm развивается и её обновлённый вариант, известный как rpm5, созданный Джеффом Джонсоном (Jeff Johnson), бывшим до того одним из основных разработчиков "обычного" rpm. Согласно его мнению, он существенно усовершенствован по сравнению со своим предком, за что, однако пришлось заплатить отсутствием совместимости между этими двумя форматами. Поэтому rpm5 официально не поддерживается и используется, насколько я знаю, только в дистрибутиве PLD. Поскольку я с этим дистрибутивом дела не имел, более об rpm5 разговора не будет -- до лучших времён его признания, буде таковое наступит.

Не смотря на то, что в перечисленных rpm-based дистрибутивах (и многих других, не перечисленных) теоретически используется один и тот же формат пакетов6 на самом деле детали их устройства отличаются. Особенно это касается пакетов исходников (о которых будет отдельный разговор). Осветить все эти детали -- задача для меня непосильная, поэтому я ограничусь рассмотрением rpm-пакетов для дистрибутива Fedora. Правда, сказанное о них будет иметь силу и для RHEL, CentOS, Scientific Linux, ASPLinux. Но, повторяю, детали устройства их для Mandriva или Suse могут существенно отличаться.


Теги: ,