Що краще deb або rpm

Установка програмного забезпечення - дуже важливий момент в роботі з операційною системою. Зараз є дві найпоширеніші системи установки програмного забезпечення. Це використовувана в Debian і всіх її похідних, в тому числі і в Ubuntu - deb, а також розроблена в RedHat і використовувана в Red Hat і всіх заснованих на ній дистрибутивів - rpm. Обидві системи і deb і rpm повнофункціональні, легкі у використанні і мають дуже велику кількість програмного забезпечення. Багатьох користувачів цікавить в чому різниця між цими двома системами. Але в інтернеті ми знаходимо тільки загальні відомості на кшталт того що вже вище написано. У цій статті ми спробуємо розібратися що краще deb або rpm. Також спробуємо вникнути в суть їх відмінностей.

основи

З точки зору користувача, ці два варіанти установки пакетів не мають дуже великих відмінностей. Обидва файли і Deb та Rpm - це всього лише архіви, створені за допомогою утиліти ar. Ці архіви містять у собі файли програм, виконувані файли, бібліотеки, або файли конфігурації. Крім цього, в кожен пакет входять метадані системи управління пакетами, саме цим і відрізняються rpm і deb. Власне файли пакетів відрізняються в основному тільки цим, але ще є система управління пакетами. А там вже відмінностей в базі даних набагато більше.

Відео: VGA, DVI, HDMI, DisplayPort - що краще і в чому різниця?

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

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 пакети без великих витрат трафіку.

Відео: Що краще для ігрового монітора: TN або IPS? ✔ Огляд ігрових моніторів ASUS MG279Q і MG278Q

Хоч і сказано, що файл 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 для економії трафіку

Відео: Meizu M5 vs Meizu M5S - ЩО КРАЩЕ? ПОРІВНЯННЯ!

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

Давайте розглянемо аналоги команд для виконання одних і тих же дій в цих системах управління пакетами за допомогою утиліт rpm та dpkg:

Установка пакета:

$ Sudo rpm -i пакет.rpm




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

Видалити встановлений пакет:

Відео: Kaby Lake і Skylake - Що краще?

$ Sudo rpm -qa

$ Sudo dpkg -l

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

$ Sudo rpm -qi пакет

$ Sudo dpkg -p пакет

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

$ Sudo rpm -qpl файл.rpm

$ Sudo dpkg -l файл.deb

Перевірити пакет:

$ Sudo rpm -Va

висновки

Незважаючи на незначні відмінності в процесі обробки пакетів і роботи з програмним забезпеченням ці системи дуже схожі і вибрати що краще deb або rpm буде дуже складно. Зрештою, вони виконують одні і ті ж функції, тільки трохи відрізняється технологія. Є й примітні особливості. Користувачам з повільним інтернетом буде дуже корисна функція дельта RPM пакетів, яка дозволяє оновлювати тільки змінену частину пакета, а новачкам буде корисна можливість автоматичної установки рекомендованих пакетів в deb. Якщо ви знаєте інші відмінності rpm і deb - напишіть в коментарях!

Поділися в соціальних мережах:

Схожі
Кращі дистрибутиви linux для новачкаКращі дистрибутиви linux для новачка
Чому лінус торвальдс не любить debianЧому лінус торвальдс не любить debian
Fedora vs ubuntu. В чому різницяFedora vs ubuntu. В чому різниця
Microsoft випустила список сумісних з windows 7 програмMicrosoft випустила список сумісних з windows 7 програм
Що краще lubuntu або xubuntuЩо краще lubuntu або xubuntu
Найстабільніші дистрибутиви linuxНайстабільніші дистрибутиви linux
Порівняння fedora vs opensuseПорівняння fedora vs opensuse
Огляд snap vs flatpack vs appimageОгляд snap vs flatpack vs appimage
Установка snap пакетів ubuntuУстановка snap пакетів ubuntu
Помилка apt-get command not foundПомилка apt-get command not found
» » Що краще deb або rpm