stringtranslate.com

deb (формат файла)

deb — это формат и расширение имени файла формата программного пакета для дистрибутива Debian Linux и его производных .

Дизайн

GDebi устанавливает пакет .deb

Пакеты Debian — это стандартные архивы Unix ar , включающие два архива tar . Один архив содержит управляющую информацию, а другой — устанавливаемые данные. [2]

dpkg предоставляет базовую функциональность для установки и управления пакетами Debian. Обычно конечные пользователи не управляют пакетами напрямую с помощью dpkg , а вместо этого используют программное обеспечение управления пакетами APT или другие интерфейсы APT, такие как aptitude ( nCurses ) и synaptic ( GTK ). [3]

Пакеты Debian можно преобразовывать в другие форматы пакетов и наоборот с помощью alien , а также создавать из исходного кода с помощью checkinstall или Debian Package Maker. [4]

Некоторые основные пакеты Debian доступны как udeb s («микро-debs») и обычно используются только для начальной загрузки установки Debian. Хотя эти файлы используют расширение имени файла udeb , они придерживаются той же спецификации структуры, что и обычные файлы deb . Однако, в отличие от своих аналогов deb , пакеты udeb содержат только необходимые функциональные файлы. [5] В частности, файлы документации обычно опускаются. Пакеты udeb не устанавливаются в стандартной системе Debian, но используются в Debian-Installer .

Выполнение

Диаграмма, показывающая пример структуры файла .deb
Шестнадцатеричный редактор Frhed, отображающий необработанные данные пакета Debian

До Debian 0.93 пакет состоял из заголовка файла и двух объединенных архивов gzip . [6] Начиная с Debian 0.93, пакет deb реализован как архив ar . [7] Этот архив содержит три файла в определенном порядке: [8] [9]

  1. debian-binary — текстовый файл, debian-binaryсодержащий одну строку, содержащую номер версии формата пакета. ( 2.0для текущих версий Debian). [9]
  2. архив управления - архив tar с именем control.tarсодержит скрипты сопровождающего и метаинформацию пакета (имя пакета, версия, зависимости и сопровождающий). Поддерживается сжатие архива с помощью gzip или xz и zstd . Расширение файла изменяется для указания метода сжатия. [9] [2]
  3. архив данных - архив tar с именем data.tarсодержит фактические устанавливаемые файлы. Поддерживается сжатие архива с помощью gzip , bzip2 , lzma или xz и zstd . Расширение файла изменяется, чтобы указать метод сжатия. [9] [2]

Архив управления

Содержимое архива управления может включать следующие файлы:

Подписанные пакеты

Дистрибутивы на основе Debian поддерживают проверку подписи OpenPGP подписанных пакетов Debian, но у большинства (если не у всех) эта функция отключена по умолчанию. [20] Вместо этого пакеты проверяются путем подписания метаданных репозитория (т. е. Releaseфайлов). Файлы метаданных, в свою очередь, включают контрольные суммы для файлов репозитория в качестве средства проверки подлинности файлов. [21] [22] В настоящее время существует два различных способа подписи отдельных пакетов. Первый выполняется через debsigs/ debsig-verifytoolset, который поддерживается dpkg . [20] [23] Второй выполняется через dpkg-sigпрограмму, которая не поддерживается dpkg , поэтому пакеты необходимо вручную проверять с помощью dpkg-sigпрограммы. [20] [24] [25] [26] Оба формата добавляют новые разделы в архив ar для хранения информации о подписи, но форматы несовместимы друг с другом. [20] Ни одно из изменений формата пакета не указано в официальном руководстве Debian или на странице руководства о формате двоичного пакета. [27] [8]

Принятие

Смотрите также

Ссылки

  1. ^ "Регистрация типа носителя для vnd.debian.binary-package". Internet Assigned Numbers Authority . Получено 21 мая 2014 г.
  2. ^ abc Raphaël Hertzog (17 сентября 2010 г.). «Как создавать пакеты Debian с альтернативными методами сжатия». raphaelhertzog.com . Получено 26 августа 2016 г. .
  3. ^ "Курсы Debian/Обслуживание пакетов/Управление пакетами". debian.org . 31 октября 2010 г. Получено 26 августа 2016 г.
  4. ^ "Обзор инструментов Debian Maintainer / Alien". debian.org . nd . Получено 26 августа 2016 г. .
  5. ^ "Глава 3. Компоненты DI или udebs". debian.org . nd Архивировано из оригинала 3 декабря 2011 . Получено 26 августа 2016 .
  6. ^ "страница руководства deb-old(5): старый формат двоичных пакетов Debian". manpages.debian.org . Получено 23.04.2017 .
  7. ^ Лукас Нуссбаум (16 октября 2014 г.). "Учебник по упаковке Debian" (PDF) . debian.org . Получено 26 августа 2016 г. .
  8. ^ ab "страница руководства deb(5): Формат двоичного пакета Debian". manpages.debian.org . Получено 2017-04-23 .
  9. ^ abcd "Debian Binary Package Building HOWTO/3. Структура пакета". tldp.org . nd . Получено 26 августа 2016 г. .
  10. ^ "страница руководства deb-control(5): Формат главного файла управления пакетами Debian". manpages.debian.org . Получено 23.04.2017 .
  11. ^ "Debian Policy Manual Chapter 5 - Control files and their fields". debian.org . 30 Mar 2016 . Получено 26 Aug 2016 .
  12. ^ Йосип Родин и Осаму Аоки (9 июня 2015 г.). «Руководство для новых сопровождающих Debian — Глава 4. Необходимые файлы в каталоге Debian». debian.org . Получено 26 августа 2016 г.
  13. ^ "Debian Policy Manual Ch7 - Declaring relationships between packages". debian.org . 30 марта 2016 г. . Получено 26 августа 2016 г. .
  14. ^ "The Debian Administrator's Handbook - Package Meta-Information". debian-handbook.info . nd . Получено 26 августа 2016 г. .
  15. ^ ab "Глава 7. Основы системы управления пакетами Debian". debian.org . 12 августа 2019 г. . Получено 27 мая 2021 г. .
  16. ^ "Debian Maintainer Scripts". debian.org . 11 октября 2012 г. Получено 26 августа 2016 г.
  17. ^ Джоуи Хесс (nd). "Учебник программиста Debconf - Скрипт конфигурации". fifi.org . Получено 26 августа 2016 г.
  18. ^ "dpkg-shlibdeps(1) man page". manpages.debian.org . Получено 2017-04-23 .
  19. ^ "Политика Debian - 8.6 Зависимости между библиотекой и другими пакетами". debian.org . 30 марта 2016 г. Получено 26 августа 2016 г.
  20. ^ abcd Джо Дамато (28 октября 2014 г.). "HOWTO: GPG sign and verify deb packages and APT repositories". packagecloud.io . Получено 26 августа 2016 г. .
  21. ^ "Внутреннее устройство репозитория APT". packagecloud.io . 4 августа 2015 г. Получено 26 августа 2016 г.
  22. ^ "SecureApt - Все о безопасном apt". Debian.org . 22 сентября 2015 г. Получено 26 августа 2016 г.
  23. ^ "страница руководства debsig-verify(1)". manpages.debian.org . Получено 2017-04-23 .
  24. ^ "страница руководства debsigs(1)". manpages.debian.org . Получено 2017-04-23 .
  25. ^ Андреас Барт (29 декабря 2003 г.). "Интеграция подписей в архивные файлы Debian". turmzimmer.net . Архивировано из оригинала 2006-02-22 . Получено 29 декабря 2003 г.{{cite web}}: CS1 maint: бот: исходный статус URL неизвестен ( ссылка )
  26. ^ "политика для debsigs". turmzimmer.net . 1 февраля 2004 г. Архивировано из оригинала 2006-07-14 . Получено 1 февраля 2004 г.{{cite web}}: CS1 maint: бот: исходный статус URL неизвестен ( ссылка )
  27. ^ "The Debian Administrator's Handbook - Ch5. Package System: Tools and Fundamental Principles". debian.org . nd . Получено 26 августа 2016 г. .
  28. ^ Кумар, Сарвоттам (2020-07-03). "Обзор Linux Mint 20 "Ulyana": самая полная ОС для всех". Fossbytes . Архивировано из оригинала 2024-05-15 . Получено 2024-05-15 .
  29. ^ Saive, Ravi (2022-12-12). "3 способа установки пакетов Deb в Ubuntu, Mint и Debian". www.ubuntumint.com . Архивировано из оригинала 2024-05-15 . Получено 2024-05-15 .
  30. ^ "Fink FAQ - Общие вопросы". finkproject.org . 6 июня 2015 г. Получено 26 августа 2016 г.
  31. ^ "Fink FAQ - Установка, использование и обслуживание Fink". finkproject.org . 6 июня 2015 г. . Получено 26 августа 2016 г. .
  32. Джей Фримен (nd). «Внедрение Debian APT в iPhone». saurik.com . Получено 26 августа 2016 г.
  33. ^ Эрика Садун (28 февраля 2008 г.). «Установка в стиле Debian появилась на iPhone». engadget.com . Получено 26 августа 2016 г.

Внешние ссылки