~~~~~~~~~~~~~~~~~~~~ Arc.Ask3.Ru ~~~~~~~~~~~~~~~~~~~~~ 
Номер скриншота №:
✰ 263958F4C7D13B0F1584C5F917B27E22__1714186320 ✰
Заголовок документа оригинал.:
✰ RPM Package Manager - Wikipedia ✰
Заголовок документа перевод.:
✰ Менеджер пакетов RPM — Википедия ✰
Снимок документа находящегося по адресу (URL):
✰ https://en.wikipedia.org/wiki/RPM_Package_Manager ✰
Адрес хранения снимка оригинал (URL):
✰ https://arc.ask3.ru/arc/aa/26/22/263958f4c7d13b0f1584c5f917b27e22.html ✰
Адрес хранения снимка перевод (URL):
✰ https://arc.ask3.ru/arc/aa/26/22/263958f4c7d13b0f1584c5f917b27e22__translat.html ✰
Дата и время сохранения документа:
✰ 21.06.2024 13:09:09 (GMT+3, MSK) ✰
Дата и время изменения документа (по данным источника):
✰ 27 April 2024, at 05:52 (UTC). ✰ 

~~~~~~~~~~~~~~~~~~~~~~ Ask3.Ru ~~~~~~~~~~~~~~~~~~~~~~ 
Сервисы Ask3.ru: 
 Архив документов (Снимки документов, в формате HTML, PDF, PNG - подписанные ЭЦП, доказывающие существование документа в момент подписи. Перевод сохраненных документов на русский язык.)https://arc.ask3.ruОтветы на вопросы (Сервис ответов на вопросы, в основном, научной направленности)https://ask3.ru/answer2questionТоварный сопоставитель (Сервис сравнения и выбора товаров) ✰✰
✰ https://ask3.ru/product2collationПартнерыhttps://comrades.ask3.ru


Совет. Чтобы искать на странице, нажмите Ctrl+F или ⌘-F (для MacOS) и введите запрос в поле поиска.
Arc.Ask3.ru: далее начало оригинального документа

Менеджер пакетов RPM — Википедия Jump to content

Менеджер пакетов RPM

Из Википедии, бесплатной энциклопедии
Менеджер пакетов RPM (RPM)
Оригинальный автор(ы) Эрик Троан, Марк Юинг , [1] Красная Шапка
Разработчики) Сообщество и Red Hat [2] [3]
Начальная версия 1997 год ; 27 лет назад ( 1997 ) [1]
Стабильная версия
4.19.1 / 12 декабря 2023 г .; 6 месяцев назад ( 12.12.2023 )
Репозиторий
Написано в С , Перл [4]
Операционная система Linux , Unix-подобный
Доступно в 40 языков [5]
Тип Система управления пакетами
Лицензия лицензия GPL
Веб-сайт об/мин .org

Менеджер пакетов RPM ( RPM ) (первоначально Red Hat Package Manager , теперь рекурсивный акроним ) — с открытым исходным кодом бесплатная система управления пакетами . [6] Название RPM относится к .rpm формат файла и сама программа менеджера пакетов. RPM предназначался в первую очередь для дистрибутивов Linux ; формат файла — это базовый формат пакета Linux Standard Base .

Хотя он был создан для использования в Red Hat Linux , сейчас RPM используется во многих дистрибутивах Linux, таких как PCLinuxOS , Fedora , AlmaLinux , CentOS , openSUSE , OpenMandriva и Oracle Linux . Он также был портирован на некоторые другие операционные системы , такие как Novell NetWare (начиная с версии 6.5 SP3), IBM AIX (начиная с версии 4), [7] IBM я , [8] и АркаОС . [9]

Пакет RPM может содержать произвольный набор файлов. Большинство файлов RPM представляют собой «двоичные RPM» (или BRPM), содержащие скомпилированную версию некоторого программного обеспечения. Существуют также «исходные RPM» (или SRPM), содержащие исходный код , используемый для сборки двоичного пакета. Они имеют соответствующий тег в заголовке файла, который отличает их от обычных (B)RPM, поэтому при установке они извлекаются в /usr/src. Файлы SRPM обычно имеют расширение файла «.src.rpm» (.spm в файловых системах с ограничением в 3 символа расширения, например, старая DOS FAT ).

История [ править ]

Первоначально RPM был написан в 1997 году Эриком Троаном и Марком Юингом . [1] на основе pms, rpp, и pm опыты.

pm был написан Риком Фейтом и Дугом Хоффманом в мае 1995 года для Red Hat Software. На его дизайн и реализацию большое влияние оказали pms, систему управления пакетами, разработанную Фэйт и Кевином Мартинами осенью 1993 года для дистрибутива Bogus Linux. pm сохраняет парадигму « Нетронутые источники + исправления» pms, добавляя при этом функции и устраняя произвольные ограничения, присутствующие в реализации. pm обеспечивает значительно расширенную поддержку базы данных для отслеживания и проверки установленных пакетов. [4] [10] [11]

Особенности [ править ]

Для системного администратора , выполняющего установку и обслуживание программного обеспечения, использование управления пакетами вместо ручной сборки имеет такие преимущества, как простота, последовательность и возможность автоматизации и неинтерактивности этих процессов. используется Berkeley DB , хотя начиная с версии 4.15 в 2019 году он поддерживает сборку пакетов rpm без Berkeley DB ( В качестве внутренней базы данных –disable-bdb). [12]

К особенностям RPM относятся:

  • Пакеты RPM можно криптографически проверить с помощью GPG и MD5.
  • Оригинальный исходный архив(ы) (например, .tar.gz, .tar.bz2) включены в SRPM, что упрощает проверку.
  • Дельта-обновление : PatchRPM и DeltaRPM, RPM-эквивалент файла исправления , могут постепенно обновлять программное обеспечение, установленное в RPM.
  • Автоматическая оценка зависимостей во время сборки.

Местные операции [ править ]

Пакеты могут поступать из определенного дистрибутива (например, Red Hat Enterprise Linux ) или быть созданы для него другими сторонами (например, RPM Fusion для Fedora Linux). [13] Круговые зависимости между взаимозависимыми RPM (так называемый « ад зависимостей ») могут быть проблематичными; [14] в таких случаях необходимо указать все соответствующие пакеты в одной команде установки.

Репозитории [ править ]

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

Передние части [ править ]

Несколько интерфейсов RPM упрощают процесс получения и установки RPM из репозиториев и помогают разрешить их зависимости. К ним относятся:

Локальная база данных установки RPM [ править ]

За кулисами менеджера пакетов работает база данных RPM, хранящаяся в /var/lib/rpm. он использует Berkeley DB В качестве серверной части . Он состоит из единой базы данных ( Packages), содержащий всю метаинформацию установленных RPM. Для целей индексирования создается несколько баз данных, реплицирующих данные для ускорения запросов. База данных используется для отслеживания всех файлов, которые изменяются и создаются, когда пользователь (с помощью RPM) устанавливает пакет, что позволяет пользователю (с помощью RPM) отменить изменения и удалить пакет позже. Если база данных повреждена (что возможно в случае закрытия клиента RPM ), базы данных индексов можно воссоздать с помощью команды rpm --rebuilddb команда. [17]

Описание [ править ]

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

Имя и метка файла пакета [ править ]

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

<name>-<version>-<release>.src.rpm для исходных пакетов или
<name>-<version>-<release>.<architecture>.rpm для двоичных файлов.

Например, в имени файла пакета libgnomeuimm-2.0-2.0.0_3.i386.rpm, <name> является libgnomeuimm, <version> является 2.0, <release> является 2.0.0_3и <architecture> является i386. Связанный исходный пакет будет называться libgnomeuimm-2.0-2.0.0_3.src.rpm

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

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

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

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

Упаковка библиотеки [ править ]

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

Двоичный формат [ править ]

Формат является двоичным и состоит из четырех разделов: [6]

  • Заголовок, который идентифицирует файл как файл RPM и содержит несколько устаревших заголовков.
  • Подпись, которую можно использовать для обеспечения целостности и/или подлинности.
  • Заголовок, содержащий метаданные, включая имя пакета, версию, архитектуру, список файлов и т. д.
  • Файловый архив ( полезная нагрузка ), который обычно имеет формат cpio , сжатый с помощью gzip . rpm2cpio Инструмент позволяет получить файл cpio без необходимости установки пакета RPM. [18]

SPEC-файл [ править ]

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

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

СРПМ [ править ]

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

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

НОСРК [ править ]

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

Вилки [ править ]

По состоянию на июнь 2010 г. В разработке находятся две версии RPM: одну возглавляют проект Fedora Project и Red Hat, а другую — отдельная группа, возглавляемая предыдущим сопровождающим RPM, бывшим сотрудником Red Hat.

RPM.org [ править ]

года ; Первая крупная редакция кода сообщества rpm.org состоялась в июле 2007 версия 4.8 была выпущена в январе 2010 г., версия 4.9 — в марте 2011 г., 4.10 — в мае 2012 г., 4.11 — в январе 2013 г., 4.12 — в сентябре 2014 г. и 4.13 — в июле 2015 г.

Эта версия используется такими дистрибутивами, как Fedora Linux , Red Hat Enterprise Linux и производными , openSUSE , SUSE Linux Enterprise , Unity Linux , Mageia , [22] OpenEmbedded , Tizen и OpenMandriva Lx (ранее Mandriva ).

RPM v5 (Несуществующий) [ править ]

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

Эта версия использовалась такими дистрибутивами, как Wind River Linux (до Wind River Linux 10), Rosa Linux и OpenMandriva Lx (бывшая Mandriva Linux , которая перешла на rpm5 в 2011 году). [23] ), а также проектом OpenPKG , который предоставляет пакеты для других распространенных UNIX-платформ.

OpenMandriva Lx снова переключился на rpm.org [24] для версии 4.0. [ нужно обновить ]

OpenEmbedded , последний крупный пользователь RPM5, вернулся на rpm.org из-за проблем в RPM5. [25] [26]

См. также [ править ]

  • Autopackage — «дополнительная» система управления пакетами.
  • Delta ISO — ISO-образ, содержащий файлы диспетчера пакетов RPM.
  • dpkg — система управления пакетами, используемая Debian и его производными.
  • Список дистрибутивов Linux на основе RPM
  • pkg-config — запрашивает библиотеки для компиляции программного обеспечения из исходного кода.

Ссылки [ править ]

  1. ^ Перейти обратно: а б с «Хронология оборотов в минуту» . www.rpm.org . Проверено 25 июня 2020 г.
  2. ^ «RPM — планы, цели и т.д.» . Макс Спевак. Архивировано из оригинала 6 октября 2012 г. Проверено 20 января 2011 г.
  3. ^ «Часто задаваемые вопросы по RPM.org» . Архивировано из оригинала 5 ноября 2016 г. Проверено 25 августа 2013 г.
  4. ^ Перейти обратно: а б Бейли, Эдвард К. (2000). «Глава 1: Введение в управление пакетами». Максимальная частота вращения: доведение менеджера пакетов Red Hat до предела . Red Hat, Inc., стр. 22–25. ISBN  978-1888172782 . Архивировано из оригинала 10 сентября 2016 г. Проверено 13 августа 2013 г.
  5. ^ "по/ЛИНГВАС" . Гитхаб. 2022-04-23. Архивировано из оригинала 23 апреля 2022 г. Проверено 23 апреля 2022 г.
  6. ^ Перейти обратно: а б Бейли, Эдвард К. (2000). «Приложение A: Формат файла RPM». Максимальная частота вращения: доведение менеджера пакетов Red Hat до предела . Red Hat, Inc., стр. 325–336. ISBN  978-1888172782 . Архивировано из оригинала 21 апреля 2016 г. Проверено 22 ноября 2010 г.
  7. ^ «Настройка YUM и создание локальных репозиториев на IBM AIX» . 2018-10-24. Архивировано из оригинала 03.10.2020 . Проверено 3 сентября 2020 г.
  8. ^ «RPM и Yum имеют большое значение для IBM i. И вот почему» . 18 июля 2018 г. Архивировано из оригинала 29 июня 2019 г. Проверено 3 сентября 2020 г.
  9. ^ «Менеджер пакетов» . Архивировано из оригинала 25 марта 2016 г. Проверено 4 сентября 2020 г.
  10. ^ «Руководство по RPM-RPM – Цели проектирования» . Архивировано из оригинала 21 марта 2014 г. Проверено 14 апреля 2014 г.
  11. ^ «ФАЛЬШИВОЕ ОБЪЯВЛЕНИЕ» . Архивировано из оригинала 4 ноября 2013 г. Проверено 14 апреля 2014 г.
  12. ^ «rpm4 поддерживал сборку rpm без Berkeley DB (–disable-bdb)» . Форумы FreeBSD . 29.01.2020. Архивировано из оригинала 23 февраля 2024 г. Проверено 18 сентября 2023 г.
  13. ^ «РПМ Фьюжн» . www.pmfusion.org. Архивировано из оригинала 11 февраля 2019 г. Проверено 22 ноября 2010 г.
  14. ^ «Анализ отклонения при проверке RPM» (PDF) . Ассоциация ЮСЕНИКС. Архивировано (PDF) из оригинала 28 июля 2011 г. Проверено 15 марта 2011 г.
  15. ^ «Zypper — MeeGo вики» . Архивировано из оригинала 25 сентября 2013 г. Проверено 14 апреля 2014 г.
  16. ^ «Часто задаваемые вопросы: О проектах» . Официальный сайт Ark Linux. Архивировано из оригинала 11 февраля 2012 г. Проверено 14 апреля 2014 г.
  17. ^ «Безопасное восстановление базы данных RPM» . Архивировано из оригинала 6 августа 2019 г. Проверено 11 ноября 2011 г.
  18. ^ «Дополнительное программное обеспечение для упаковки» . Проект Федора. Архивировано из оригинала 10 марта 2016 г. Проверено 11 ноября 2011 г.
  19. ^ «Переключить RPM на сжатие zstd» . Проект Fedora (Вики). Архивировано из оригинала 2 июня 2019 г. Проверено 2 июня 2019 г.
  20. ^ «[ИСПРАВЛЕНИЕ] Добавить поддержку lzip» . Архивировано из оригинала 4 марта 2016 г. Проверено 24 октября 2013 г.
  21. ^ «Как упаковать проприетарное программное обеспечение» . 10 декабря 2014 г. Архивировано из оригинала 2 июля 2018 г. Проверено 2 июля 2018 г.
  22. ^ «Примечания к выпуску Mageia 3: Управление пакетами» . сайт mageia.org . 19 мая 2013 г. Архивировано из оригинала 7 февраля 2014 г. Проверено 14 апреля 2014 г.
  23. ^ Боднар, Ладислав и Смит, Джесси (22 ноября 2010 г.). «ДистроВотч Еженедельник» . ДистроВотч . Архивировано из оригинала 23 июня 2018 г. Проверено 22 ноября 2010 г.
  24. ^ "Форум: Переход на RPMv4" . Архивировано из оригинала 14 января 2022 г. Проверено 3 марта 2018 г.
  25. ^ «YP Core — Пиро 2.3» . Проект Йокто . 12 мая 2017 г. Архивировано из оригинала 5 декабря 2017 г. Проверено 4 декабря 2017 г. {{cite web}}: CS1 maint: bot: исходный статус URL неизвестен ( ссылка ) ()
  26. ^ «[Openembedded-architecture] Изменения, которые вызовет переключение с smart на dnf» . Проект Йокто . 14 февраля 2017 г. Архивировано из оригинала 05.11.2018 . Проверено 4 ноября 2018 г.

Внешние ссылки [ править ]

Arc.Ask3.Ru: конец оригинального документа.
Arc.Ask3.Ru
Номер скриншота №: 263958F4C7D13B0F1584C5F917B27E22__1714186320
URL1:https://en.wikipedia.org/wiki/RPM_Package_Manager
Заголовок, (Title) документа по адресу, URL1:
RPM Package Manager - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть, любые претензии не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, денежную единицу можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)