Translations: English - Русский

Пакетный менеджер RPM

RPM был разработан в ?RedHat для отслеживания файлов, установленных каждой программой или пакетом, а также содержания информации о зависимостях пакетов, происхождении пакета и краткой сводки.

Следует избегать использования .rpm пакетов в системе Debian.

Имеется несколько хороших (и гораздо больше не столь хороших) записей, сравнивающих две системы управления пакетами. Их можно найти по поисковым запросам вроде rpm vs deb или rpm vs dpkg. todo add some url's for some good ones

Зачем использовать RPM пакеты в Debian?

Двоичный пакет

Если пакет предоставляется только в двоичном .rpm формате, можно использовать alien для конвертирования.

Пакет с исходным кодом

Чтобы извлечь исходники из rpm архива, может понадобится использование rpm.
Разработчик, возможно, захочет извлечь исходный код пакета, предоставляемый только вместе с архивом rpm.

переход от rpm к dpkg/apt

Это руководство может помочь людям, сменившим основанный на RPM дистрибутив вроде RedHat на дистрибутив на базе dpkg.

Быстрое сраанение аргументов командной строки команд rpm и apt/dpkg

Вывести список всех установленных пакетов:

    rpm -qa
    dpkg --list

Вывести информацию об установленном пакете:

    rpm -qi pkgname
    dpkg --status pkgname     (также выводит кучу дополнительной информации)

Вывести список файлов в установленном пакете:

    rpm -ql pkgname
    dpkg --listfiles pkgname

Вывести информацию о пакете на локальном жестком диске:

    rpm -qpi file.rpm
    dpkg --info file.deb

Вывести список файлов в пакете на локальном жестком диске:

    rpm -qpl file.rpm
    dpkg --contents file.deb

Вывести список файлов в неустановленном пакете (в зависимости от дистрибутива)

Извлечь файлы из пакета, не устанавливая его

Установить пакет из локального файла:

    rpm -i file.rpm
    dpkg --install file.deb

Удалить пакет из системы:

    rpm -E pkgname      (удаляет все)
    dpkg --purge pkgname        (вычищает все)
    dpkg --remove pkgname       (оставляет конфигурационные файлы)

Идентифицировать пакет, владеющий файлом:

    rpm -qf full-path-to file
    rpm -qf name-of-file-in-local-dir
    dpkg --search any-portion-of-file's-path (2)

Получить информацию о пакете, расположенном не на локальной машине:

    rpm -qpi <url>
    apt-cache show package

Вывести список всех нелокальных пакетов:

    (ищите на rpmfind.net или на другом сайте)
    apt-cache dumpavail

(1) спасибо Адриану Пеннингу

(2) таким образом, "dpkg --search /etc" выведет на экран все пакеты, имеющие файлы в /etc.

Взято со страницы http://www.trestle.com/linux/rpmdeb.html (ссылка сломана)

См. также:

Пакетный менеджер RedHat

Изначально RPM был разработан для того, чтобы быть единственным двоичным установщиком для GNU/Linux дистрибутивов, основанных на ?RedHat (таких как Fedora, Mandrake и SUSE). С тех пор RPM был портирован на остальные операционные системы, такие как IBM's AIX и Novell Netware.

Установка .RPM в Debian

Чтобы установить .rpm пакет в системе, основанной на Debian, вам понадобится программа Alien. Отметьте, что Alien не всегда будет давать 100%-ный результат, поскольку rpm и apt очень сильно отличаются.

См. также


CategoryPackageManagement CategoryPackageManagement