Що це за формати файлів і чим вони відрізняються від .msiформату в Windows? Також які плюси і мінуси цих схем управління пакетами?
Що це за формати файлів і чим вони відрізняються від .msiформату в Windows? Також які плюси і мінуси цих схем управління пакетами?
Відповіді:
Файли, такі як .debі .rpm, більше схожі на .zipфайл. Вони є деревом каталогів файлів і підкаталогів, які містять файли, пов'язані з певною програмою та / або бібліотекою файлів.
Ці .debфайли призначені для розподілу Linux , які випливають з Debian (Ubuntu, Linux Mint і т.д.). Ці .rpmфайли використовуються в першу чергу розподілами , які випливають з дистрибутивів Redhat основи (Fedora, CentOS, RHEL), а також в дистрибутиві OpenSUSE.
Ці файли мають ще одну особливу ознаку, яка відрізняє їх від .zipфайлів, оскільки вони можуть містити специфікацію, яка містить правила, які повідомляють програмне забезпечення менеджера пакунків, що працює в системі, що встановлює один з цих файлів, щоб виконувати додаткові завдання. Ці завдання включатимуть такі речі, як:
.debабо .rpmфайлі.msiФайли схожі на .deb& .rpmфайли, але, ймовірно, ще складніші. Ці .msiфайли використовуються в Windows Installer , і пропонують додаткові функції , такі як:
Я б запропонував ознайомитися з різними сторінками Вікіпедії з цих питань, якщо ви хочете більш поглиблене пояснення.
arархіви, а rpms (можливо, частково) архіви cpio. У випадку деб легко переконатися, що деб можна розпакувати ar -x. У випадку об / хв я не знаю, чи це можливо.
rpm2cpio package.rpm | cpio -idv
Інші відповіді стосуються якостей .debта .rpmподібних до них .msi. Всі вони містять програмне забезпечення у стисненому форматі, яке може робити додаткові речі. Ці додаткові речі, про які вже згадувалося, включали додавання користувачів, завдань до і після встановлення, реєстрацію програми в системі (наприклад, реєстр Windows, xdg-dirs, OpenRC / systemd init тощо).
Що відрізняє формати (і це величезний профі) - це залежності. І файли, .debі .rpmфайли можуть перелічувати імена та версії інших програм, які повинні бути встановлені як необхідне програмне забезпечення. Самі по собі це просто інформаційно, але ...
Зазвичай ви не безпосередньо взаємодієте з файлами .debта .rpmфайли так, як це робите з .msiфайлами. Насправді, як згадувалося раніше, a, .debяк правило, є лише архівом (ar або tar), стислим xz із вміщеними файлами у певній компоновці каталогу. Натомість ви використовуєте такі інструменти, як dpkgі rpmдля управління цими файлами.
dpkgі rpmвстановить вміст .debта .rpmфайли та перевірить, чи встановлено все необхідне програмне забезпечення. Запуск цих програм аналогічний натисканню на .msiфайл. Користувачі , проте, як правило , не взаємодіють з dpkgабо , rpmале замість того, щоб використовувати apt-getі yumдля установки пакетів. Ці інструменти не мають точних аналогів на windows.
Обидва apt-getі yumможуть отримувати файли з віддалених (або локальних) сховищ та використовувати інформацію про залежність, що зберігається у файлах, .debта .rpmфайли, щоб отримати та встановити будь-які попередні реквізити, не виконані. За допомогою цих інструментів мені не потрібно знати і не турбуватися про те, яке інше програмне забезпечення мені потрібно, я можу просто вказати apt-get install chromiumі знати, що apt-getпереконайтеся, що я встановив gtk +, alsa, певні бібліотеки X тощо, без того, щоб мені вручну знаходити та встановлювати ці .debта .rpmфайли.
apt-getі yumви великі два менеджери пакунків, ви також знайдете emergeі pacmanтам, які виконують ту саму роботу, хоча з різними основними механізмами.
.debщо упаковані за допомогою arутиліти. не знаю чому.
emergeменеджером пакетів, можливо, вам слід також розглянути порти BSD (хоча я про них не знаю багато, тому я не впевнений, чи є у них еквівалент менеджера пакунків у GNU / Linux).
emergeі він дуже схожий на порти. Це все на основі джерела і дуже настроюється, але якщо команда буде встановлювати / видаляти, обробляти залежності та зберігати базу даних встановлених пакетів, я називаю це менеджером пакетів. Хороші коментарі.
Він має такі самі функції, як і файл MSI під Windows:
У Linux вони також управляють залежностями між іншими пакетами.
Цей формат управління пакетами робить багато інших речей, але це основні функції.
.rpmФайли - це пакети RPM, які посилаються на тип пакунків, використовуваний Red Hat та похідними Red Hat (наприклад, Fedora, RHEL, CentOS). .debФайли - це пакети DEB, які є типом пакунків, використовуваним похідними Debian і Debian (наприклад, Debian, Ubuntu).
Після завантаження вони, як правило, встановлюються за допомогою команд відповідно rpmта dpkgвідповідно у відповідних дистрибутивах. Іншими словами, вони представляють собою файли, які встановлюються rpmі dpkgзамість того , .msiчи .exeфайли , які Виконувані , які встановлюють самі.
Пакети RPM і DEB відрізняються від MSI у багатьох напрямках.
rpmі dpkg).yumі aptitudeвідповідно - є так звані сховища, які пропонують пакети, складені для відповідної системи, і менеджер пакунків автоматично встановить усі залежності від даних у сховищах.Вони є .debі .rpmпакетами програм для дистрибутивів GNU / Linux, що містять програмне забезпечення (програма (и), додатки) тощо) та інформацію для програмного забезпечення "* інсталятор *" про саме програмне забезпечення та інструкції щодо встановлення того, що і де правильно.
.deb→ Програмний пакет Debian на дистрибутивах на основі Debian. Встановлюється, наприклад, apt/ aptitude(командний рядок) або графічно, наприклад, наприклад, " Synaptic ", " Центр програмного забезпечення Ubuntu ", " Gdebi ",….rpm→ Менеджер пакунків Red Hat : у дистрибутивах Fedora / Red Hat (на основі). Встановлюється через yum(командний рядок), або графічно через, наприклад, " yumex ".msiє → Microsoft Installer : Зовнішньо так само, як вище, для ОС Microsoft WindowsСамі інсталятори також можуть обробляти обслуговування, оновлення та / або видалення пакетів. Також: тут " інсталятор " означає програмне забезпечення для виконання цих завдань правильно - воно також надає згадану інформацію для самого користувача, звичайно, для виконання таких завдань вручну.
yumexце правильне ім'я ... дякую за підказку
.deb: Пакет Debian, який використовується для Linux на базі Debian, таких як Ubuntu, Linux Mint тощо.
.rpm: rpmінсталятор для Linux-дистрибутивів на базі Red Hat, таких як RHEL, Fedora та CentOS
.msi: Бінарний інсталятор для платформи Windows