Что лучше deb или rpm

Что необходимо

Нам понадобятся как минимум программы, устанавливаемые командой

sudo apt-get install autoconf automake libtool autotools-dev dpkg-dev fakeroot

Можно так же — это документация по утилитам , , и . Ну и конечно то, что требуют сами исходные коды для корректной сборки.

Создание ключа шифрования

Этот шаг не обязателен, его можно пропустить.

Чтобы создать ключ, зайдите в Приложения → Стандартные → Пароли и ключи шифрования. В открывшемся окне, в меню Ключ → Новый ключ, выбираем ключ pgp. Заполняем поля Полное имя и Электронный адрес.

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

Поэтому отнеситесь к созданию ключа очень ответственно.

Никто вас не заставляет вписывать сюда реальные имя и фамилию, или ещё какие-нибудь личные данные, но если вас не разыскивает интерпол — думаю указать фамилию и имя будет верным решением, хотя можно и просто свой ник В общем, решайте сами. А вот почтовый адрес укажите реальный, и который вы не поменяете.

Можно завести ящик, если ещё нет, на каком-нибудь популярном почтовом сервере: например, gmail.com или yandex.ru .

Это позволит в будущем легко связаться с вами человеку, который вас не знает, но по той или иной причине встретил «вещь», подписанную вами.

Далее вас спросят ввести пароль, как дополнительную защиту. Он может быть полезен, если вы будете использовать закрытый ключ на машинах, которым вы не можете на 100% доверять. Обратная сторона — вам придётся вводить пароль каждый раз, как только вы будете что-то подписывать.

Хотя последняя версия программы seahorse имеет демон, который автоматически запускается в сеансе GNOME, и умеет «запоминать пароль» на время сеанса, но пока не все программы умеют с ней работать.

Итак, вы создали ключ — теперь его можно будет использовать при создании пакетов.

Для этого, в файл ~/.bashrc, или в другой стартовый скрипт, вашего любимого шелла (для zsh ~/.zshrc), нужно вписать переменные

export DEBEMAIL=ваш@имейл
dch -i

Дебианизация недоступна

Итак, у нас есть только gcoolprog-0.5.3.tar.gz
.

Обычно я выполняю следующие действия:

Предварительно подготавливаю рабочую директорию

«http://»
#можно конечно и просто через браузер скачать но обычно так быстрее

Получаем файл gcoolprog-0.5.3.tar.gz
. Распакуем его перейдем в полученный каталог:

Для корректной сборки нужно, чтобы корневая директория содержала не только название, но и версию!

Если команда выполнилась успешно, то осталось только дебианизировать.

Дебианизация

Ничего страшного в этом нет, как я уже говорил есть скрипты, которые сильно упрощают этот процесс.
Вообще смысл всей этой процедуры — создать директорию debian в корне исходников, с нужными файлами конфигурации и скриптом(ами).
Для этого, в корне исходных текстов, выполним

Dh_make —createorig

На что мы должны получить следующий диалог

Тут мы указываем сформировать пакет, для одиночного бинарного файла.

Но мы с вами молодцы и всё у нас прошло без ошибок — появился каталог debian в корне исходников, посмотрев его содержимое, Вы увидите кучу файлов (расширение.ex) с примерами на все случаи жизни.

Description:

Вместо и (без угловых кавычек) нужно вписать описание, что это за программа.
Именно эти сведения увидит пользователь, когда посмотрит описание пакета.
Второй момент — это поправить файл debian/rules

в секции binary-arch
: нужно раскомментировать (т.е. убрать # в начале строки)

Dh_install

без этого мы получим пустой пакет.
Иногда debian/rules
содержит лишь:

Что приемлемо с использованием debhelper.
Этих настроек будет достаточно для сборки пакета с одной программой, которая не содержит разделяемых библиотек, т.е. только бинарник в /usr/bin и данные в /usr/share.

Сборка пакета

Теперь, соберём пакет:

В директории выше, т.е. в ~/src/gcoolprog/0.5.3, мы получим файлы

Gcoolprog_0.5.3-1.diff.gz
gcoolprog_0.5.3-1_i386.changes
gcoolprog_0.5.3-1_i386.deb
gcoolprog_0.5.3.orig.tar.gz

Вот теперь мы можем установить пакет

Описание

Хотя формат RPM одинаков для разных дистрибутивов Linux , подробные соглашения и рекомендации могут отличаться в зависимости от них.

Имя пакета и метка

RPM доставляется в виде одного файла, обычно с именем файла в формате:

для пакетов с исходным кодом или
для двоичных файлов.

Например, в пакете имя файла , то есть , то есть , то есть , и есть . Связанный исходный пакет будет назван

RPM с расширением не зависят от конкретной архитектуры процессора. Например, эти RPM могут содержать графику и текст для использования другими программами. Они также могут содержать сценарии оболочки или программы, написанные на других интерпретируемых языках программирования, таких как Python .

Содержимое RPM также включает этикетку пакета , которая содержит следующую информацию:

  • название программного обеспечения
  • версии программного обеспечения (версия взяты из оригинального восходящего источника программного обеспечения)
  • выпуск пакета (количество раз, когда пакет перестраивался с использованием одной и той же версии программного обеспечения). Это поле также часто используется для указания конкретного дистрибутива, для которого предназначен пакет, путем добавления таких строк, как «mdv» (ранее «mdk») ( Mandriva Linux ), «mga» ( Mageia ), «fc4» ( Fedora Core 4). , «rhl9» (Red Hat Linux 9), «suse100» ( SUSE Linux 10.0) и т. д.
  • архитектура, для которой был собран пакет (i386, i686, x86_64, ppc и т. д.)

Поля метки пакета не обязательно должны совпадать с именем файла.

Упаковка библиотеки

Библиотеки распределены в двух отдельных пакетах для каждой версии. Один содержит предварительно скомпилированный код для использования во время выполнения, а второй содержит связанные файлы разработки, такие как заголовки и т. Д. В поле имени этих пакетов добавлено «-devel». Системный администратор должен убедиться, что версии двоичного пакета и пакета разработки совпадают.

Двоичный формат

Формат двоичный и состоит из четырех разделов:

  • Лид, который идентифицирует файл как файл RPM и содержит некоторые устаревшие заголовки.
  • Подпись, которую можно использовать для обеспечения целостности и / или подлинности.
  • Заголовок, содержащий метаданные, включая имя пакета, версию, архитектуру, список файлов и т. Д.
  • Файловый архив ( полезная нагрузка ), обычно в формате cpio , сжатый с помощью gzip . Инструмент позволяет извлечение файла CPIO без необходимости установки пакета RPM.
    • Стандартная база Linux требует использования gzip, но пакеты Fedora 30 сжаты xz, а пакеты Fedora 31 могут быть сжаты zstd. Последние версии RPM также могут использовать сжатие bzip2 , lzip или lzma .
    • Формат RPM 5.0 поддерживает использование xar для архивирования.

Файл SPEC

«Рецепт» для создания пакета RPM — это файл спецификации. Файлы спецификации заканчиваются суффиксом «.spec» и содержат имя пакета, версию, номер редакции RPM, шаги по сборке, установке и очистке пакета, а также журнал изменений. При желании из одного файла спецификации RPM можно собрать несколько пакетов. Пакеты RPM создаются из файлов спецификации RPM с помощью инструмента rpmbuild.

Файлы спецификации обычно распространяются в файлах SRPM, которые содержат файл спецификации, упакованный вместе с исходным кодом.

SRPM

Типичный RPM — это предварительно скомпилированное программное обеспечение, готовое к прямой установке. Соответствующий исходный код также может распространяться. Это делается в SRPM, который также включает файл «SPEC», описывающий программное обеспечение и способ его создания. SRPM также позволяет пользователю компилировать и, возможно, изменять сам код.

Программный пакет может содержать только скрипты, не зависящие от платформы. В таком случае разработчик может предоставить только SRPM, который по-прежнему является устанавливаемым RPM.

NOSRC

Это специальная версия SRPM. Он содержит файл «SPEC» и необязательно исправления, но не включает исходные коды (обычно из-за лицензии).

8 thoughts on “ Как установить rpm пакет на Debian/Ubuntu/Linux Mint ”

alien имя_вашего_пакета.rpm File «viber.rpm» not found. Везде на всех сайтах одно и тоже под копирку и ничего толкового, копипастеры

Я перед тем как что-то публиковать — обязательно проверяю на работоспособность! Если не работает, — может что-то не так делаешь

у тебя наверняка файл скачан в cd /home или cd /root. Таким образом переходишь в корневой каталог с файлом который нужно распоковать и установить: 1. cd /home/Downloads/ 2. alien alien имя_вашего_пакета.rpm 3. dpkg -i имя_вашего_пакета.rpm

Возможно косяк в пути, попробуйте сменить директорию, потом просто писать имя пакета.

такого краткого мануала еще не видел:)

У меня тоже не работает.

Поправил статью. Нужно было установить вспомогательные библиотеки:

После этого действия, все пойдет «по маслу».

Добрый день! А драйвер так пересобрать пройдет?

Часть 1: Готовим систему

Большая часть приложений, которую вы скачиваете, использует тройку команд ./configure, make и make install, а также систему Autoconf
для собственной сборки и установки. В своей основе эти инструменты
используют набор скриптов для сбора необходимой информации о
вашем дистрибутиве, чтобы приложение было правильно скомпилировано, а его файлы попали в нужные каталоги.

Примерно такой же процесс и лежит в создании Deb-файла, а
используемая вами система Linuх для создания пакетов должна быть
возможно чище, чтобы собственные или неподдерживаемые пакеты
случайно не попали в число зависимостей. Когда вы создаете пакет из
исходных текстов, результирующий двоичный файл будет скомпонован с библиотеками вашей системы. Процесс сборки не знает, оригинальные ли это версии библиотек, собранные вами или скачанные из
стороннего репозитория, поэтому необходимо собирать Deb-файлы в
системе, максимально близкой к эталонной – и виртуальные машины
являются идеальной средой для компиляции программ.

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

sudo APT-get install build-essential

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

Теперь мы добрались до группы дополнительных пакетов, которые
используются для создания Deb-файла. Первый – fakeroot, он нужен,
чтобы файлы в нашем пакете имели привилегии root. Fakeroot позволяет обычному, не суперпользователю создавать файлы, владельцем которых является root – при создании пакетов так безопаснее.

Но львиная доля работы осуществляется пакетом dh-make, инструментом, специально спроектированным для «дебианизации» архива исходного кода: он принимает кучу файлов конфигурации и выдает
двоичный пакет. Еще два пакета, debhelper и devscripts, содержат много
полезных инструментов. Наконец, последнее, что вам понадобится, это
Dpkg – в дистрибутивах на базе Debian он установлен по умолчанию, в
других же дистрибутивах вам придется самим о нем позаботиться.

RPM (Red Hat Package Manager)

Как мы уже говорили, RPM — это менеджер пакетов, используемый в операционных системах, основанных на Red Hat, это вся ветка дистрибутивов: Fedora, OpenSUSE, Red Hat, CentOS и т д. Изначально этот пакетный менеджер был разработан в компании Red Hat еще в 1997 году и только для их дистрибутива, но затем он распространился и в другие операционные системы. Вместо обычного сжатия здесь используется сжатие gzip по алгоритму cpio и особый формат файла архива, его мы рассмотрим ниже. Здесь в сравнении rpm или deb, первый кажется лучше, но не все так просто, если в системе нет нужных утилит, то вы не сможете распаковать такой пакет. Кроме cpio могут использоваться и другие алгоритмы сжатия, например, lzma или xz. В последнее время все программное обеспечение подписывается ключами для удостоверения подлинности, вот и RPM поддерживает подпись с помощью GPG и MD5. Технология PatchRPMs или DeltaRPMs позволяет грамотно обновлять RPM пакеты без больших затрат трафика.

Хоть и сказано, что файл rpm — это обычный архив, это не совсем так. Вначале файла находится заголовок, который идентифицирует файл как rpm архив, затем идет подпись, для проверки целостности и подлинности файла. Дальше идет заголовок, в котором содержаться данные о самом пакете, версия, архитектура, список файлов и т д. И только после всего этого идет сам архив с файлами пакета.

Для работы с RPM могут использоваться несколько различных пакетных менеджеров, это универсальная утилита rpm, пакетный менеджер zypper в OpenSUSE, dnf в Fedora, urpmi в Mageia, yum — во многих дистрибутивах, основанных на Fedora.

Рассмотрим основные особенности RPM:

  • Автоматическое разрешение зависимостей в большинстве случаев корректно
  • Файл архива имеет специальный формат
  • Не поддерживается реализация зависимостей с выбором зависти от пакет1 или пакет2.
  • Не поддерживаются рекомендованные пакеты
  • Позволяет настроить зависимость от файла, а не пакета
  • Все данные об установленных пакетах хранятся в базе данных поэтому при надобности можно проверить контрольные суммы
  • Поддерживаются сценарии как до, так и после установки программ
  • Поддерживается формат SRPM, который содержит в себе исходники программы все патчи с инструкции по сборке, позволяющие собрать программу из исходников на локальной машине.
  • Отличная поддержка Multilib пакетов

Deb (Debian Package Manager)

Файлы deb — это архивы, созданные с помощью утилиты ar. Они могут быть сжаты с помощью GZIP, Bzip2, lzma, или XZ. Чаще всего для управления пакетами deb в терминале используется утилита dpkg, Но могут и другие, например, gdebi, apt, aptitude и т д. Deb пакеты используются для установки программного обеспечения во многих операционных системах, основанных на Debian, это ветка Ubuntu со многими основанными на ней дистрибутивами и так далее. Поскольку Ubuntu в последнее время набирает популярность среди новичков, то пакетов для нее становится больше.

Из особенностей системы управления пакетами DEB можно назвать использование приоритетов для классификации пакетов по важности, а также поддержку рекомендованных пакетов. Это пакеты, которые не находятся в зависимостях программы, но желательны для установки вместе с ней

Рекомендованные утилиты устанавливаются автоматически в таком инструменте, как apt. Чтобы сравнить rpm vs deb рассмотрим особенности deb:

Файл пакета — обычный архив
Поддержка приоритетов для пакетов различной важности
Поддержка рекомендованных пакетов
Не поддерживаются файловые зависимости
Не поддерживается технология Delta для экономии трафика

Установка RPM пакетов в Linux

Давайте сначала рассмотрим синтаксис самой утилиты rpm:

$ rpm -режимопции пакет

Утилита может работать в одном из режимов:

  • -q, —query — запрос, получение информации;
  • -i, —install — установка;
  • -V, —verify — проверка пакетов;
  • -U, —upgrade — обновление;
  • -e, —erase — удаление.

Рассмотрим только самые интересные опции программы, которые понадобятся нам в этой статье:

  • -v — показать подробную информацию;
  • —vv — выводить отладочную информацию;
  • —quiet — выводить как можно меньше информации;
  • -h — выводить статус-бар;
  • —percent — выводить информацию в процентах о процессе распаковки;
  • —force — выполнять действие принудительно;
  • —nodeps — не проверять зависимости;
  • —replacefiles — заменять все старые файлы на новые без предупреждений;
  • -i — получить информацию о пакете;
  • -l — список файлов пакета;
  • -R — вывести пакеты, от которых зависит этот пакет;

Теперь, когда вы уже имеете представление как работать с этой утилитой, может быть рассмотрена установка rpm пакета в Linux. Самая простая команда установки будет выглядеть вот так:

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

Для того чтобы посмотреть более подробную информацию в процессе установки используйте опцию -v:

Также вы можете включить отображение статус бара в процессе установки:

Чтобы проверить установлен ли пакет, нам уже нужно использовать режим запроса:

Также сразу можно удалить пакет, если он не нужен:

Но у rpm так же как и у dpkg, есть один существенный недостаток. Программа не может разрешать зависимости. В случае отсутствия нужного пакета в системе, вы просто получите сообщение об ошибке и пакет не установится.

Для автоматической загрузки зависимостей во время выполнения установки rpm linux нужно использовать пакетный менеджер дистрибутива. Рассмотрим несколько команд для самых популярных RPM дистрибутивов. В RedHat и других дистрибутивах, использующих Yum используйте такую команду:

Первая опция отключает проверку GPG ключа, а вторая говорит, что мы будем выполнять установку локального пакета. В Fedora, с помощью dnf все делается еще проще:

Пакетный менеджер Zypper и OpenSUSE справляются не хуже:

Вот так очень просто выполняется установка rpm с зависимостями. Но не всем нравится работать в консоли, многие новые пользователи хотят использовать графический интерфейс для решения всех задач, в том числе и этой. Дальше мы рассмотрим несколько таких утилит.

RPM PBone Search

Ищете более продвинутый инструмент поиска, который поможет вам диагностировать проблемы с вашей системой? RPM PBone Search – сайт, предназначенный для более тщательного анализа системы.

Вы можете предоставить подробные параметры поиска, которые помогут вам определить зависимости RPM или что еще может отсутствовать. Вы можете найти RPM на основе журнала изменений RPM, сводки или тегов описания.

RPM PBone Search также позволяет вам контролировать размер самих репозиториев. Вы можете видеть, когда Fedora, openSUSE или другие основанные на RPM дистрибутивы добавляют RPM в свои репозитории и просматривают полный список того, что содержат эти репозитории.

Часть 4: Запуск системы

Если ваше приложение содержится только в RPM-пакете, а Deb-файлов не предоставляет, собирать его вручную
не обязательно: воспользуйтесь инструментом под названием Alien. Просто наберите alien —to-deb пакет.rpm и установите получившийся Deb-файл с помощью dpkg -i пакет.deb.

Файлы настройки отредактированы, и все готово к финальному аккорду – сборке Deb-файла. Выполните магическую команду dpkg_buildpackage -rfakeroot из каталога с исходным кодом.
Запустившись, она скомпилирует программу и свяжет вместе различные компоненты, используя файлы настройки. По окончании
ее работы вы найдете в родительском каталоге с исходным кодом
группу файлов, включая главный двоичный Deb-пакет. Это и будут
те самые файлы, которые можно установить и передавать другим
людям. Для установки нового пакета просто наберите

sudo dpkg -i ale_0.8.5-1_i386.deb.

Потом вы сможете использовать ваше приложение, а если оно вам надоест, удалить его с помощью менеджера
пакетов вашего дистрибутива.

Теперь у вас есть Debian-эквивалент информационной бомбы на
вашем жестком диске, осталось только швырнуть ее в других пользователей (сосчитав до трех). Хорошая стартовая площадка – форум вашего дистрибутива. Вы и охнуть не успеете, как легионы преданных
пользователей примутся скачивать, устанавливать и использовать
ваш пакет – забивая ваш почтовый ящик вопросами, дальнейшими
пожеланиями, жалобами, а то и шальными «спасибо».

Добро пожаловать в сообщество Open Source! LXF

Что необходимо

Полное Руководство начинающего разработчика Debian доступно .

К сожалению, на русском, информация немного устарела, свежая инструкция доступна на английском. Но принципы не изменились, поэтому если интересны детали лучше прочитать руководство от и до.

Нам понадобятся как минимум программы, устанавливаемые командой

Можно так же autobook — это документация по утилитам GNU Autoconf , Automake , и Libtool . Ну и конечно то, что требуют сами исходные коды для корректной сборки.

Создание ключа шифрования

Этот шаг не обязателен, его можно пропустить.

Чтобы создать ключ, зайдите в Приложения → Стандартные → Пароли и ключи шифрования
. В открывшемся окне, в меню Ключ → Новый ключ
, выбираем ключ pgp
. Заполняем поля Полное имя
и Электронный адрес
.

В мире свободного программного обеспечения, для предотвращения «краж» или «подделок», принято подписывать свои «ценные» вещи электронным ключом, открытая часть которого хранится на общедоступных серверах и позволяет другим пользователям легко выяснить подлинность и целостность той или иной вещи.
Поэтому отнеситесь к созданию ключа очень ответственно.
Никто вас не заставляет вписывать сюда реальные имя и фамилию, или ещё какие-нибудь личные данные, но если вас не разыскивает интерпол — думаю указать фамилию и имя будет верным решением, хотя можно и просто свой ник В общем, решайте сами. А вот почтовый адрес укажите реальный, и который вы не поменяете.

Можно завести ящик, если ещё нет, на каком-нибудь популярном почтовом сервере: например, gmail.com или yandex.ru .
Это позволит в будущем легко связаться с вами человеку, который вас не знает, но по той или иной причине встретил «вещь», подписанную вами.
Далее вас спросят ввести пароль, как дополнительную защиту. Он может быть полезен, если вы будете использовать закрытый ключ на машинах, которым вы не можете на 100% доверять. Обратная сторона — вам придётся вводить пароль каждый раз, как только вы будете что-то подписывать.

Хотя последняя версия программы seahorse
имеет демон, который автоматически запускается в сеансе GNOME , и умеет «запоминать пароль» на время сеанса, но пока не все программы умеют с ней работать.

Итак, вы создали ключ — теперь его можно будет использовать при создании пакетов.
Для этого, в файл ~/.bashrc, или в другой стартовый скрипт, вашего любимого шелла (для zsh ~/.zshrc), нужно вписать переменные

Неправильная установка

Минус данного способа заключается в том, что если вы устанавливаете напрямую через make install, то нормально удалить или обновить пакет вы, скорее всего, не сможете. Более того, установка новой версии поверх старой, скорее всего, затрёт ваши изменения в конфигах. make install делает ровно то, что ему сказано — производит установку файлов в нужные места, игнорируя тот факт, что там что-то уже есть. После этого процесса совершенно никакой информации о том, что и куда ставилось, получить в удобоваримом виде невозможно. Иногда, конечно, Makefile поддерживает действие uninstall, но это встречается не так часто, да и не факт, что корректно работает. Кроме того, вам будет необходимо хранить для деинсталяции распакованное дерево исходников и правил сборки.

Для установки необходимо выполнить

sudo make install

Для удаления пакета, установленного данным способом необходимо выполнить в корневой директории исходников программы (там где вы запускали make install).

sudo make uninstall

Необходимое программное обеспечение

Пакеты с буквами mm в конце описания — это пакеты для C++ программ. Список для bmpx, но подойдёт почти для любой GTK2/Gnome программы. Так что если не получается собрать, то посмотрите на этот список и сверьте с тем что у вас установлено.

Compile: Runtime:
X libx11-dev libx11-6
GlibMM libglibmm-2.4-dev libglibmm-2.4-1c2a
GTK+ libgtk2.0-dev,gtk-doc-tools libgtk2.0-0
GTKMM libgtkmm-2.4-dev libgtkmm-2.4-1c2a
Glade libglade2-dev libglade2-0
GladeMM libglademm-2.4-dev libglademm-2.4-1c2a
XML libxml2-dev libxml2
XML++ libxml++2.6-dev libxml++2.6c2a
DBus libdbus-1-dev,libdbus-glib-1-dev libdbus-1-2,libdbus-glib-1-2
Alsa libasound2-dev libasound2
HAL libhal-dev,libhal-storage-dev libhal1,libhal-storage1
Gamin libgamin-dev libgamin0
Neon libneon25-dev libneon25
TagLib libtagc0-dev libtagc0
Startup-Notify libstartup-notification0-dev libstartup-notification0
Boost libboost-dev,libboost-filesystem-dev libboost-filesystem1.33.1
MusicBrainz libmusicbrainz4-dev libmusicbrainz4c2a
GStreamer libgstreamer0.10-dev,libgstreamer-plugins-base0.10-dev libgstreamer0.10-0,libgstreamer-plugins-base0.10-0

Основы

С точки зрения пользователя, эти два варианта установки пакетов не имеют очень больших различий. Оба файла и Deb и Rpm – это всего лишь архивы, созданные с помощью утилиты ar. Эти архивы включают в себя файлы программ, исполняемые файлы, библиотеки, или файлы конфигурации. Кроме этого, в каждый пакет входят метаданные системы управления пакетами, именно этим и отличаются rpm и deb. Собственно файлы пакетов отличаются в основном только этим, но еще есть система управления пакетами. А там уже различий в базе данных намного больше.

Давайте рассмотрим каждую систему управления пакетами подробнее, а затем сравним что же в них особенного, и что лучше rpm или deb.

Launchpad

Launchpad от Canonical, той же компании, которая предлагает нам Ubuntu. Launchpad – это веб-сайт для разработки и поддержки программного обеспечения с открытым исходным кодом. Хотя Launchpad – это прежде всего инструмент для разработчиков, это также место, где вы можете загружать пакеты.

Большая часть программного обеспечения на Launchpad ориентирована на Ubuntu, поэтому на сайте доступно много DEB. Но вам придется искать, чтобы найти их. Многие проекты обеспечивают загрузку только в виде сжатых файлов TAR.GZ. С другой стороны, некоторые также предоставляют RPM.

Панель запуска не так широко используется, как раньше, поэтому многие проекты здесь размещены в другом месте или заброшены. Это не тот сайт, который я бы проверил первым, но все же, здесь многое можно найти.

Аналоги команд

Давайте рассмотрим аналоги команд для выполнения одних и тех же действий в этих системах управления пакетами с помощью утилит rpm и dpkg:

sudo rpm -i пакет.rpm

$ sudo dpkg -i пакет.deb

sudo rpm -i пакет.rpm

$ sudo dpkg -i пакет.deb

Удалить установленный пакет:

sudo rpm -e пакет.rpm

$ sudo dpkg -r пакет.deb

Показать список установленных пакетов:

Показать все файлы установленного пакета:

sudo rpm -ql пакет

$ sudo dpkg -L пакет

Посмотреть информацию о пакете:

sudo rpm -qi пакет

$ sudo dpkg -p пакет

Показать информацию о файле пакета:

sudo rpm -qpi файл.rpm

$ sudo dpkg -l файл.deb

Список файлов в пакете:

sudo rpm -qpl файл.rpm

$ sudo dpkg -l файл.deb

sudo rpm -V пакет

Проверить все установленные пакеты:

Проверка целостности rpm пакета

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

Первая проверка очень важна при скачивании пакетов из интернета, а вторая при подозрении на взлом компьютера.

Публичные ключи для проверки подписи автоматически устанавливаются при установке из дистрибутива, а также полуавтоматически добавляются при установке rpm пакетов для подключения репозиториев . Файлы с ключами в CentOS устанавливаются в каталог . Можно добавить ключ вручную, указав путь к локальному файлу или его url. Файл с ключем должен иметь текстовый формат ‘ASCII armored’

После инсталляции к ключам применимы те же команды, что и к установленным пакетам

– список всех ключей – информация (в том числе имя хозяина) о конкретном ключе – удаление ключа

Проверка файла пакета на целостность

Проверка установленного пакета на целостность

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

  • S – размер (Size)
  • M – тип файла или права доступа (Mode)
  • 5 – контрольная сумма (MD5)
  • D – мажор или минор устройства устройства (Device)
  • L – содержимое символической ссылки (Link)
  • U – владелец (User)
  • G – группа (Group)
  • T – время модификации (mTime)
  • P – капабилити (caPabilities)

pkgs.org

pkgs.org существует как простое место для поиска и загрузки последних версий пакетов Linux без необходимости иметь дело с всплывающими окнами или шпионским ПО. Сайт проиндексировал миллионы пакетов в более чем десяти дистрибутивах. Некоторые из этих дистрибутивов используют DEB, а другие используют RPM, так что это отличный универсальный магазин, чтобы получить и то, и другое.

pkgs.org представляет результаты выпуска дистрибутивов, поэтому вы можете искать DEB, совместимые с вашей конкретной версией Debian или Ubuntu. То же самое относится к дистрибутивам RPM, таким как Fedora и openSUSE. Arch Linux также включен, так как pkgs.org не ограничивается форматами DEB и RPM.

Deb (Debian Package Manager)

Файлы deb – это архивы, созданные с помощью утилиты ar. Они могут быть сжаты с помощью GZIP, Bzip2, lzma, или XZ. Чаще всего для управления пакетами deb в терминале используется утилита dpkg, Но могут и другие, например, gdebi, apt, aptitude и т д. Deb пакеты используются для установки программного обеспечения во многих операционных системах, основанных на Debian, это ветка Ubuntu со многими основанными на ней дистрибутивами и так далее. Поскольку Ubuntu в последнее время набирает популярность среди новичков, то пакетов для нее становится больше.

Из особенностей системы управления пакетами DEB можно назвать использование приоритетов для классификации пакетов по важности, а также поддержку рекомендованных пакетов. Это пакеты, которые не находятся в зависимостях программы, но желательны для установки вместе с ней

Рекомендованные утилиты устанавливаются автоматически в таком инструменте, как apt. Чтобы сравнить rpm vs deb рассмотрим особенности deb:

Файл пакета – обычный архив Поддержка приоритетов для пакетов различной важности Поддержка рекомендованных пакетов Не поддерживаются файловые зависимости Не поддерживается технология Delta для экономии трафика

Debian Packages Search

В дистрибутивах Linux много компьютеров, на которых установлено программное обеспечение, которое они распространяют среди других людей. Отсюда и название (или дистрибутив). Хотя мы обычно обращаемся к этому программному обеспечению с помощью магазина приложений Linux, менеджера пакетов или командной строки, вы также можете получить к ним доступ через веб-браузер.

Учитывая, что для него был создан формат DEB, Debian является крупнейшим дистрибутивом, который упаковывает DEB. Многие альтернативы в конечном итоге основаны на этом. Так что список пакетов Debian – отличное место для поиска программного обеспечения. Вы можете скачать DEB напрямую. Этот метод не рекомендуется, так как эти DEB часто требуют, чтобы у вас уже были установлены другие DEB, но этот запасной вариант здесь, если вам это нужно.

Вы не ограничены сайтом Debian. Вы также можете проверить страницу поиска пакетов Ubuntu или страницу пакетов Linux Mint. Точно так же вы можете найти RPM на странице источников пакетов Fedora.

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Мой редактор ОС
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: