Расширение deb что. Установка программ. Устранение неполадок при открытии файлов DEB

Если появилась ситуация, в которой Вы не можете открыть файл DEB на своем компьютере - причин может быть несколько. Первой и одновременно самой важной (встречается чаще всего) является отсутствие соответствующей аппликации обслуживающей DEB среди установленных на Вашем компьютере.

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

В дальнейшей части этой страницы Вы найдете другие возможные причины, вызывающие проблемы с файлами DEB.

Возможные проблемы с файлами в формате DEB

Отсутствие возможности открытия и работы с файлом DEB, совсем не должен значить, что мы не имеем установленного на своем компьютере соответствующего программного обеспечения. Могут выступать другие проблемы, которые также блокируют нам возможность работы с файлом Debian Linux Package Format. Ниже находится список возможных проблем.

  • Повреждение открываемого файла DEB.
  • Ошибочные связи файла DEB в записях реестра.
  • Случайное удаление описания расширения DEB из реестра Windows
  • Некомплектная установка аппликации, обслуживающей формат DEB
  • Открываемый файл DEB инфицирован нежелательным, вредным программным обеспечением.
  • На компьютере слишком мало места, чтобы открыть файл DEB.
  • Драйверы оборудования, используемого компьютером для открытия файла DEB неактуальные.

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

The .DEB extension stands for Debian Linux Package format files, which are used for installing software on Linux based platforms. Debian packages are also used on the iOS platform for distributing software.
Each DEB file always contains two tar archives and can optionally add one more. One of the archive contains the control information and the other one contains the actual installation data. The data file is always the last file in the DEB package. The optional file included in the package defines the version of the DEB package. The program used for handling DEB files is DPKG.

Искать

Искать в нашей базе расширений файлов

Программы, открывающие файл DEB

Ища ответ на вопрос - Как открыть файл DEB?- наверняка Вы несколько раз попадали на страницы, предлагающие программное обеспечение, открывающее все расширения файлов. Не позвольте обмануть себя, нет одной программы, которая позволила бы Вам работать со всеми расширениями файлов, включая файлы DEB. Каждый содержит другие данные и Вам необходима специальная программа, чтобы правильно работать с файлом DEB. Здесь находится список программ, предназначенных для работы с файлом DEB, - не забывайте, такие аппликации могут открыть только несколько расширений файлов, предназначенных для работы с конкретным типом данных.

Проблемы, которые часто встречаются с файлом DEB

Файл DEB поврежден

Если после установки необходимой программы из списка, Вы по-прежнему не можете открыть файл с расширением DEB, поводом может быть его повреждение. Решением может быть нахождение новой копии файла DEB, который Вы собираетесь открыть

Расширение файла DEB не связано с соответствующим приложением

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

Запись, касающаяся файла DEB в "Реестре Системы Windows" удалена либо повреждена
Файл DEB инфицирован вирусом

Может случится так, что компьютерный вирус подшивается под файл DEB. В таком случае, наверняка не будет возможности открытия такого файла. Скачайте любую хорошую антивирусную программу и сканируйте файл DEB. Если антивирусная программа обнаружит опасные данные, это может обозначать индикацию файла DEB.

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

$ sudo apt-get install dh_make

Подготовка папки с исходниками

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

Папка должна называться имяпакета-версия . Т.е. если у меня есть папка Plugins с программой версии 0.1, то я создаю папку с именем plugins-0.1 .

$ ls VKSPlugins $ mv VKSPlugins/ libvksplugins-0.1 $ ls libvksplugins-0.1
Теперь нужно создать архив с этой папкой. Архив должен содержать в имени *.orig.tar.gz , т.е.:

$ tar -zcf libvksplugins_0.1.orig.tar.gz libvksplugins-0.1 $ ls libvksplugins-0.1 libvksplugins_0.1.orig.tar.gz
Последний подготовительный шаг, это создание в папке с исходниками папки debian со множеством служебных файлов. Чтобы это сделать, нужно выполнить команду:

$ cd libvksplugins-0.1/ $ dh_make Type of package: single binary, indep binary, multiple binary, library, kernel module, kernel patch? l Maintainer name: User Name Email-Address: [email protected] Date: Wed, 19 Aug 2015 14:55:53 +0300 Package Name: libvksplugins Version: 0.1 License: blank Type of Package: Single Hit to confirm: Skipping creating ../libvksplugins_0.1.orig.tar.gz because it already exists Done. Please edit the files in the debian/ subdirectory now. plugins uses a configure script, so you probably don’t have to edit the Makefiles.
В процессе выполнения этой команды будет задан вопрос о том, какой тип архива мы создаем, самый простой это single.

О типе пакета

На самом деле документация говорит, выбирать вариант только single . Т.к. я не смог понять всех требований к пакету типа library но меня вполне устраивает результат, то описание и дальше пойдет про пакет типа library .

Настройка пакета

Вся настройка пакета происходит путем редактирования файлов в каталоге debian . Рассмотрим те файлы, которые будем использовать:
  • changelog - история пакета.
  • control - главный конфиг пакета;
  • rules - аналог Makefile для пакета;
Кроме этих файлов, в папке debian будет создано много файлов *.ex которые являются примерами для конфигурации различных вещей, но мы не будем их использовать и поэтому их нужно удалить.

changelog

Данный файл содержит историю изменения пакета и текущую версию пакета. Посмотрим на его содержимое:

$ cat changelog libvksplugins (0.1-1) unstable; urgency=low * Initial release (Closes: #nnnn) -- User Name Wed, 19 Aug 2015 15:03:51 +0300
В начале идет название пакета - libvksplugins , затем его версия. Версия делиться на две части символом «-». Первая часть показывает версию программы в пакете, вторая «ревизию» пакета. Ревизия это версия пакета, т.е. если раньше такого пакета не было, то ревизия равна 1. Если же пакет с такой версией программы уже был, но в нем произошли изменения, то ревизия увеличивается.

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

Надпись urgency=low показывает срочность изменения. Т.к. срочности нет, то значение равно low . Если бы, мы делали пакет для исправления серьезной уязвимости или ошибки, то значение можно было бы установить в high .

После первой строки идет пустая строка, а за ней первая запись:

* Initial release (Closes: #nnnn)
В Debian, changelog используется для автоматического закрытия ошибок в системах отслеживания ошибок в программных продуктах. Т.к. в данном случае, я не использую такую систему, то эта строка принимает вид:

* Initial release

Замечание

При проверке пакета программой lintian , отсутствие Closes: #XXXX считается ошибкой.


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

После установки deb пакета, файл changelog устанавливается в

/usr/share/doc/<пакет>/changelog.Debian.gz

control

Файл debian/control является главным конфигом, при создании deb пакета. Вот пример такого файла:

$ cat control Source: libvksplugins Priority: optional Maintainer: User Name Build-Depends: debhelper (>= 9), cmake Standards-Version: 3.9.5 Section: libs Homepage: #Vcs-Git: git://anonscm.debian.org/collab-maint/plugins.git #Vcs-Browser: http://anonscm.debian.org/?p=collab-maint/plugins.git;a=summary Package: libvksplugins-dev Section: libdevel Architecture: any Depends: libvkspluginsBROKEN (= ${binary:Version}), ${misc:Depends} Description: Package: libvkspluginsBROKEN Architecture: any Description:
Видно, что файл разбит на секции при помощи пустых строк. Каждая секция описывает один пакет, создаваемый из папки с исходниками. Рассмотрим их по порядку:

Source Данная секция говорит о том, что нужно создать пакет исходных кодов. Параметром указано libvksplugins , это значит, что пакет исходных кодов будет называться libvksplugins .

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

Maintainer Эта секция описывает контакты человека, создающего пакет. Ее формат довольно прост и дополнительного описание не требует.

Build-Depends Одна из самых важных секций, устанавливающая зависимости пакета. Зависимости, указанные в данной секции должны быть выполнены, чтобы можно было собрать пакет. Т.е. список зависимостей для сборки и установки могут отличаться.

Видно, что в зависимостях стоят debhelper (>= 9), cmake . Зависимость debhelper (>= 9) ставиться для всех пакетов по умолчанию. Она нужна для корректной работы программ вида dh_* .

Второй элемент cmake был добавлен потому, что папка с исходниками содержала файл CMakeLists.txt , т.е. для сборки используется система сборки CMake . Для того, чтобы узнать, какие зависимости есть у программы, можно почитать ее документацию. Кроме этого, можно воспользоваться командой dpkg-depcheck . Данная команда должна запускаться так:

$ dpkg-depcheck -d ./configure
Но, т.к. при использовании CMake нет скрипта конфигурирования, то я использую ее так:

$ mkdir build && cd build $ dpkg-depcheck -d cmake ../ ..... Packages needed: libxml2:amd64 cmake libkrb5support0:amd64 language-pack-ru-base libnettle4:amd64 ..... libedit2:amd64 libtasn1-6:amd64 qt4-qmake libgssapi-krb5-2:amd64 libhcrypto4-heimdal:amd64 ..... libroken18-heimdal:amd64 libsqlite3-0:amd64 libqt4-dev libssl1.0.0:amd64 .....
Из примечательных тут можно отметить:

Cmake
qt4-qmake
libqt4-dev

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

$ apt-cache show cmake | grep Version: Version: 2.8.12.2-0ubuntu6
При этом в CMakeLists.txt указана версия cmake, которую нужно использовать:

$ cat CMakeLists.txt | grep cmake_minimum cmake_minimum_required(VERSION 2.8.4)
Я думаю, что разработчику виднее, и поэтому указываю версию из CMakeLists.txt. Для Qt 4 все понятно с номерами версий, но для очистки совести проверим и их версии:

$ apt-cache show qt4-qmake | grep Version: Version: 4:4.8.6+git49-gbc62005+dfsg-1ubuntu1.1 Version: 4:4.8.6+git49-gbc62005+dfsg-1ubuntu1 $ apt-cache show libqt4-dev | grep Version: Version: 4:4.8.6+git49-gbc62005+dfsg-1ubuntu1.1 Version: 4:4.8.6+git49-gbc62005+dfsg-1ubuntu1
Т.е. для Qt 4 указываем версию 4.8.6:

Build-Depends: debhelper (>= 9), cmake (>= 2.8.4), qt4-qmake (>= 4.8.6), libqt4-dev (>= 4.8.6)
Standards-Version Версия стандарта, в соответствии с которым создан файл. Это значение не нужно менять.

Section . Секция для пакета, т.е. группа пакетов, выполняющая одну задачу. В Политике Debian разделе 2.4 этот вопрос описан более подробно.

Homepage Домашняя страница проекта. Т.к. данный код писал я и у него нет страницы, просто удаляю эту строку.

Другие пакеты После секции файла, где описывается пакет с исходниками, идут секции, которые описывают другие пакеты, создаваемые из пакета с исходниками. Схема создания пакетов:

Из схемы видно, что из исходников программы, я хочу получить 4 пакета:

  • пакет с исходными кодами;
  • пакет с бинарником (самой библиотекой);
  • пакет для разработки (заголовочные файлы);
  • пакет с документацией.
Возникает вопрос, зачем так много пакетов? Ответов на него может быть несколько, если прочитать соответствующие обсуждения на stackoverflow.com то основная идея разбиения в том, что большинству пользователей не нужны заголовочные файлы и документация, поэтому разделение этих файлов способствует снижению нагрузки на сеть и скорости установки программ.

Мой персональный ответ на данный вопрос, заключается в том, что такое разбиение помогает структурировать программу по тому, как я хочу с ней работать. Для разработки я поставлю dev пакет, а для использования нет.

Кроме описанных выше пакетов, можно создать dbg пакет с отладочной сборкой программы. Это может пригодиться, если программа падает и у Вас есть под рукой отладчик. Однако, я так и не смог понять как это делать. Документация не дает ответа на этот вопрос. Если делать так как описано в ней, то я либо получаю пустой пакет либо получаю кучу ошибок при сборке.

Схема на рисунке выше показывает, что пакет с исходниками называется libvksplugins_source , однако, в файле control указано, что пакет с исходниками будет называться libvksplugins . На самом деле, он действительно будет называться libvksplugins , а пакет с бинарниками, будет называться libvksplugins… deb . Суть этой путаницы в том, что пакет с исходниками представляет собой tar архив и служебные файлы, тогда как пакет бинарников это архив с расширение deb.

Настройка пакета библиотеки Посмотрим внимательно на описание пакета библиотеки:

Package: libvksplugins
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: Library for creating plugins with VKS 2
This library provides a mechanism for creating plugins
to use in project VKS 2.

Параметр Architecture устанавливает архитектуру собираемого пакета. Значение any означает, что после сборки бинарников нужная архитектура будет подставлена системой сборки. Т.е. на 64х битной машине, получится пакет ..._amd64... а на 32х битной пакет ..._i386... .

Для пакетов, содержащих скрипты или тексты, нужно указывать значение как all .

Третья строка, описывает зависимости создаваемого пакета. Вот как она описана в 4й главе Руководства начинающего разработчика Debian:

Утилита dh_shlibdeps вычисляет зависимости двоичного пакета от общих библиотек. Она генерирует список исполняемых файлов ELF и общих библиотек, которые находит для каждого двоичного пакета. Этот список подставляется вместо ${shlibs:Depends} .

Утилита dh_perl вычисляет зависимости Perl. Она генерирует список зависимостей от perl или perlapi для каждого двоичного пакета. Этот список подставляется вместо ${perl:Depends} .

Некоторые команды пакета debhelper могут добавлять зависимости к вашему генерируемому пакету. Каждая команда генерирует список необходимых пакетов для каждого двоичного пакета. Этот список подставляется вместо
${misc:Depends} .

Утилита dh_gencontrol генерирует файл DEBIAN/control для каждого двоичного пакета, заменяя ${shlibs:Depends} , ${perl:Depends} , ${misc:Depends} и т.д на полученные значения.


Т.е. эта строка говорит о том, что сборщик пакета сам определит зависимости.

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

  • строка должна начинаться с пробела;
  • строка не должна быть длиннее 80 символов;
  • пустая строка должна начинаться с пробела и состоять из символа точки.
Настройка пакета заголовочных файлов Пакет с заголовочными файлами, будет называться libvksplugins-dev, вот его описание:

Package: libvksplugins-dev
Section: libdevel
Architecture: any
Depends: libvksplugins (= ${binary:Version}), ${misc:Depends}
Description: Development package for libvksplugins
This package provides development files for
library libvksplugins.
.
Also, it contains pkg-config file, to use.

В данном примере, интересна строка Depends . В ней указано, что данный пакет будет зависеть от пакета библиотеки libvksplugins , причем (= ${binary:Version} ) говорит о том, что необходимо строгое совпадение версий бинарного пакета и пакета разработчика. Это важный момент потому, что заголовочные файлы должны строго соответствовать бинарникам.

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

Package: libvksplugins-doc
Architecture: all
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: Documentation for libvksplugins
Package contains html documentation files for libvksplugins

Тут должно быть все понятно.

rules

Данный файл является аналогом Makefile для сборки пакетов. По умолчанию, он создается в таком виде:

$ cat rules #!/usr/bin/make -f # See debhelper(7) (uncomment to enable) # output every command that modifies files on the build system. #DH_VERBOSE = 1 # see EXAMPLES in dpkg-buildflags(1) and read /usr/share/dpkg/* DPKG_EXPORT_BUILDFLAGS = 1 include /usr/share/dpkg/default.mk # see FEATURE AREAS in dpkg-buildflags(1) #export DEB_BUILD_MAINT_OPTIONS = hardening=+all # see ENVIRONMENT in dpkg-buildflags(1) # package maintainers to append CFLAGS #export DEB_CFLAGS_MAINT_APPEND = -Wall -pedantic # package maintainers to append LDFLAGS #export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed # main packaging script based on dh7 syntax %: dh $@ # debmake generated override targets # This is example for Cmake (See http://bugs.debian.org/641051) #override_dh_auto_configure: # dh_auto_configure -- \ # -DCMAKE_LIBRARY_PATH=$(DEB_HOST_MULTIARCH)
Видно, что это bash скрипт с синтаксисом Makefile. Единственная интересная конструкция здесь это

%: dh $@
Это шаблон, который для всех целей вызывает dh команду с передачей аргументов ей. Для сборки пакета важно, чтобы текст dh $@ начитался с символа табуляции. Т.е. отступ это не пробелы, а табуляция.

Т.к. исходники используют систему сборки CMake, то нужно изменить эту запись следующим образом:

%: dh $@ --buildsystem=cmake

Содержимое пакетов

После того, как мы указали в debian/control какие пакеты мы хотим получить, нужно указать какие файлы в какой пакет помещать. Для этого, для каждого названия пакета из файла control , нужно создать в папке debian два файла. Первый должен называться пакет.dirs , а второй пакет.install . Суть файлов в том, что первый указывает, какие папки нужно создать для пакета, а второй, какие файлы включить в пакет.

Посмотрим на их содержимое:

$ cat libvksplugins-dev.dirs usr/lib usr/include $ cat libvksplugins-dev.install usr/include/* usr/lib/lib*.a usr/lib/lib*.so usr/lib/pkgconfig/* usr/share/pkgconfig/*
Важный момент, отсутствие начальной дроби в путях и отсутствие дроби в конце пути к папке. Проверив, куда CMake устанавливает файлы библиотеки, можно сформировать такие файлы:

$ for item in $(ls libvksplugins*); do echo "$item:"; cat $item; done libvksplugins-dev.dirs: usr/include/dep572 usr/lib/pkgconfig libvksplugins-dev.install: usr/include/dep572/plugins/* usr/lib/dep572/lib*.so usr/lib/pkgconfig/* libvksplugins.dirs: usr/lib/dep572 libvksplugins-doc.dirs: usr/share/doc/libplugins-0.1 libvksplugins-doc.install: usr/share/doc/libplugins-0.1/*.tgz libvksplugins.install: usr/lib/dep572/lib*.so.*

Завершение настройки

Т.к. исходники мои, то никаких дополнительных описаний и ограничений copyright у меня нет, поэтому я удаляю все лишние файлы из каталога debian.

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

После настройки, сборка пакетов происходит довольно просто, нужно в папке проекта (которая включает подпапку debian) выполнить команду:

$ dpkg-buildpackage -rfakeroot -us -uc
Параметры -us -uc говорят о том, что не нужно подписывать gpg ключом созданные пакеты. Их можно не использовать, если настроен ключ подписи gpg по умолчанию. Как указать ключ подписи по умолчанию, я тоже не понял. Если все прошло хорошо, то у нас поваляется набор пакетов в папке выше:

$ ls -l ../ итого 748 drwxrwxr-x 10 user user 4096 авг. 20 10:46 libvksplugins-0.1 -rw-rw-r-- 1 user user 2210 авг. 20 10:47 libvksplugins_0.1-1_amd64.changes -rw-r--r-- 1 user user 6418 авг. 20 10:47 libvksplugins_0.1-1_amd64.deb -rw-rw-r-- 1 user user 1504 авг. 20 10:46 libvksplugins_0.1-1.debian.tar.xz -rw-rw-r-- 1 user user 1008 авг. 20 10:46 libvksplugins_0.1-1.dsc -rw-rw-r-- 1 user user 36713 авг. 19 14:52 libvksplugins_0.1.orig.tar.gz -rw-r--r-- 1 user user 3262 авг. 20 10:47 libvksplugins-dev_0.1-1_amd64.deb -rw-r--r-- 1 user user 699564 авг. 20 10:47 libvksplugins-doc_0.1-1_all.deb

Заключение

Если вы дочитали до сюда - значит вы любите читать.

Этот текст является результатом моего опыта внедрения deb пакетов на работе. Опыт показал, что наличие сетевого репозитория (reprepro) и внимательное отслеживание версий, позволяют без проблем обновлять и тестировать различные версии ПО на парке из 30 машин с системами Astra Linux 1.3, 1.4 и Эльбрус ОС.

И других, использующих систему управления пакетами dpkg .

Пакет Debian (dpkg)


Иконка deb-файлов в среде GNOME
Расширение .deb или .udeb
MIME -тип application/vnd.debian.binary-package
Разработчик Debian
Тип формата Система управления пакетами
Содержит Программное обеспечение и метаданные в архивах .tar .bz2 или.tar.
Расширен из и tar

Установка deb-пакета в Gdebi

deb-old

Изначальный («старый») формат, обозначаемый в документации как deb-old, использовался до версии Debian 0.93. Его устройство следующее: две строки ASCII -текста, за которыми следуют два сцепленных архива формата tar.gz . Первая строка содержит номер версии формата, дополненный до 8 цифр (0,939000 для всех старых форматов). Вторая строка содержит десятичную строку (без начальных нулей), определяющую длину первого архива формата tar.gz. Каждая из этих строк завершается одним символом новой строки .

Современный формат

Начиная с Debian версии 0.93, deb файл представляет собой архив формата .

Обычно архив содержит 3 файла в нижеприведенной последовательности:

  • debian-binary - текстовый файл, содержащий версию формата deb-пакета (современный формат - версия 2.0);
  • control.tar - tar-архив, содержащий информацию и скрипты установки пакета, может быть сжат с помощью gzip или , тип архива отображается в имени файла (к примеру control.tar.gz).
  • data.tar - tar-архив, содержащий дерево устанавливаемых файлов пакета, может быть сжат с помощью gzip , bzip2 , lzma или , тип архива отображается в имени файла (к примеру data.tar.gz).

Архив control.tar содержит информацию о поставляемом в данном пакете программном обеспечении:

  • control - содержит краткую информацию о пакете программного обеспечения: наименование, версия, описание, целевая архитектура, зависимости от других пакетов и так далее;
  • md5sums - cодержит MD5 -суммы всех устанавливаемых файлов;
  • conffiles - список файлов пакета, являющихся конфигурационными, при обновлении файлы из этого списка не перезаписываются новыми, если это не указано отдельно;
  • preinst , postinst , prerm , postrm - необязательные сценарии оболочки, выполняемые соответственно до и после установки или удаления пакета;
  • config - сценарий для debconf - механизма конфигурации;
  • shlibs - список разделяемых библиотек пакета.

Архив data.tar содержит устанавливаемые файлы пакета и при установке разворачивается в систему относительно её корня.

Репозитории

Основной вид распространения deb-пакетов - репозитории. Для описания репозитория обычно используется строчка:

Deb http://ftp.debian.org/debian squeeze main contrib non-free

  • deb - указание типа репозитория
  • http://ftp.**** - URI корня репозитория. Может использоваться http:// ftp:// file:// и некоторые другие схемы.
  • squeeze - distribution part. Версия операционной системы.
  • main contrib *** *** - component - Компоненты операционной системы (в основном различающиеся свободой).

Репозиторий, размещенный на сетевых хранилищах обычно объединяет несколько distribution part с общим хранением пакетов. структура обычно такова.

  • /pool/ - структуированное по имени хранилище скомпилированных пакетов и исходных текстов программ.
  • /dists/ - списки пакетов, входящий в определённый distribution part.

Программное обеспечение

Создание пакетов

Создают пакеты deb обычно с помощью утилит dpkg - в частности, dpkg-buildpackage. Основы создания пакетов описаны в «Руководстве нового сопровождающего Debian» и «Справочнике разработчика Debian» .

Совсем простые, но малопригодные для серьёзного сопровождения пакеты можно создавать с помощью программы CheckInstall .

Debhelper - коллекция небольших программ, которые могут быть использованы в файлах debian/rules (наборах инструкций для сборки deb-пакета). Создана Джо Хессом с целью предоставить создателям пакетов Debian возможность писать структурно более простые debian/rules -файлы и повторно использовать готовые стабильные и удобные решения для многих подзадач сборки пакетов. По состоянию на конец 2010-х годов содержит более 60 небольших программ.

Часто вместе с программами debhelper используют написанную Крейгом Смоллом утилиту dh_make (не являющуюся его частью), которая копирует шаблоны всех файлов, необходимых для постройки deb-пакета из исходного кода программы. Эти шаблоны могут включать информацию, которую предоставил пользователь, и краткую информацию о том, как строится программа из исходного кода. После запуска dh_make , как правило, всё равно необходимо отредактировать большинство файлов шаблонов для того, чтобы построить deb-пакет.

Система CDBS - набор make-правил, использующий debhelper и позволяющий пользователям писать ещё более короткие файлы сборки deb-пакетов.

udeb

Проект debian-installer ввёл формат udeb («µdeb», «микро-deb»), который идентичен формату deb, но не полностью следует политике

- Расширение (формат) - это символы в конце файла после последней точки.
- Компьютер определяет тип файла именно по расширению.
- По умолчанию Windows не показывает расширения имен файлов.
- В имени файла и расширении нельзя использовать некоторые символы.
- Не все форматы имеют отношение к одной и той же программе.
- Ниже находятся все программы с помощью которых можно открыть файл DEB.

Universal Extractor – удобная утилита для распаковки различных архивов, а также некоторых дополнительных типов файлов. Данная программа, прежде всего, подходит тем пользователям, которые занимаются созданием архивов на компьютере, а лишь скачивают различные архивы из интернета, а затем распаковывают их. Утилита Universal Extractor вполне справляется с этой задачей. Она позволяет распаковать все известные архивы, а также файлы dll, exe, mdi и другие типы файлов. По сути, программа может служить, в некоторой степени, своеобразным установщиком программ, т.к. она позволяет распаковывать некоторые из установщиков, а затем запускать...

HaoZip - китайский клон популярного архиватора Winrar, как с точки зрения функциональности так и интерфейса в целом. Архиватор умеет работать со всеми популярными форматами, среди которых 7Z, ZIP, TAR, RAR, ISO, UDF, ACE, UUE, CAB, BZIP2, ARJ, JAR, LZH, RPM, Z, LZMA, NSIS, DEB, XAR, CPIO, SPLIT, WIM, IMG и другие. Кроме этого с помощью Haozip можно монтировать ISO образы и посмотреть картинки через встроенный просмотрщик, что весьма полезная фича для архиваторов. Что касается интерфейса, то здесь китайские разработчики хорошо потрудились. Они не только скопировали дизайн и функционал с архиватора Winrar, но и добави...

Peazip - универсальный и мощный архиватор с графической оболочкой. Отличная замена платному аналогу - Winrar. PeaZip поддерживает шифрование данных, создание многотомных архивов, работу с несколькими архивами одновременно, экспорт задания в виде командной строки, установку фильтров на содержимое архива. Кроме этого архиватор поддерживает все известные и даже неизвестные форматы архивов включая 7Z, 7Z-sfx, BZ2/TBZ2, GZ/TGZ, PAQ/LPAQ, TAR, UPX, ZIP и другие. Интерфейс PeaZip очень примитивен и в то же время насыщенна полезными функциями. Можно с помощью помощника интегрировать в проводник Windows или вернуть обратно, установ...

При разработке архиватора FreeArc автор решил создать программу, которая выполняет сжатие файлов с максимальной скоростью. Для этого потребовались лучшие качества библиотек сжатия LZMA, PPMD и GRZipLib. В процессе упаковки архиватор формирует файлы по типам и производит сжатие благодаря применению наиболее подходящего алгоритма. При работе архиватор использует более десяти различных алгоритмов и фильтров. Если сравнить это с распространёнными архиваторами, то у 7-zip всего три, а у RAR использует всего семь алгоритмов. Архиватор легко адаптируется для установки на различных системах. Он разработан на открытой платформе дающей в...

FileOptimizer – удобное приложение для сжатия файлов, созданное одной из независимых команд программистов. Данное приложение отличается улучшенными алгоритмами сжатия и высокой скоростью работы. Программа позволяет сжимать файлы практически всех типов, включая архивы, текстовые форматы, форматы изображений и т.п. Также, данная программа может работать со скриптами, а также через командную строку, что будет особенно полезно опытным пользователям. Для начинающих пользователей же, всё очень просто. Программа интегрируется в контекстное меню, что позволяет очень быстро сжимать файлы, находящиеся на любом диске и в любой папке.

TUGZip – удобный архиватор, имеющий понятный пользовательский интерфейс, а также обладающий рядом дополнительных возможностей. Программа TUGZip позволяет работать почти со всеми популярными архивами. Однако на этом возможности программы TUGZip не ограничиваются. Утилита TUGZip позволяет работать с образами оптических дисков, например, img, nrg, iso и т.п. Также, программа TUGZip может быть интегрирована в контекстное меню. Но если большинство архиваторов лишь добавляют в него подменю, то программа TUGZip может похвастаться возможностью использовать различные скрипты для автоматизирования процесса создания архивов, либо их распа...

7-Zip – известный архиватор с открытым исходным кодом. Такая особенность позволяет вносить изменения в структуру программы, добавляя в неё определённые функции. Программа отличается понятным и простым интерфейсом и обладает уникальными алгоритмами, позволяющими ускорить архивацию данных и их распаковку. Также, данная программа может выполнять стандартные операции с архивом, например, вы можете установить пароль на файл, либо установить степень сжатия архива. Также, если необходимо, вы можете создать самораспаковывающийся архив с необходимыми параметрами, которые задаются в специальных комментариях к архиву.

ExtractNow является удобной программой, позволяющей распаковать заархивированные файлы достаточно быстро: всего лишь нажатием одной кнопки. Особенно удобна такая опция покажется тем пользователям, которым регулярно приходится распаковывать множество файлов. Единственный минус - программа не поддерживает создание архивов, т.к. является исключительно распаковщиком (качественным и удобным), а не архиватором. Чтобы совершить распаковку файла, нужно перетащить архивы в окно программы и нажать кнопку Extract. Поддерживает популярные форматы архивов. Таким образом, программа может распаковать все популярные и наиболее часто использующ...

Simplyzip – удобный архиватор со всеми необходимыми функциями, которые использует большинство пользователей. Программа работает практически со всеми популярными форматами архивов, включая rar или zip. Тем не менее, из-за того, что разработчики программы winRar не разрешают использовать алгоритмы своего формата, архивы Rar можно только распаковывать или просматривать их содержимое. Однако программа Simplyzip поддерживает установку различных модулей и плагинов, которые могут расширить функционал данного архиватора. Если установить необходимый плагин, то программу можно научить создавать, как Rar архивы, так и архивы других формат...

Ashampoo ZIP - программа-архиватор, помогающая сжимать и хранить нужную информацию. Работает с множеством форматов, позволяя пользователям отправлять объемные документы в сжатом виде. Ashampoo ZIP имеет широкий набор различных функций. Посредством приложения можно создавать, распаковывать и разделять архивы. Помимо этого в программе поддерживается чтение, восстановление, шифрование, а также мгновенное конвертирование. Список форматов, которые поддерживаются Ashampoo ZIP довольно внушительный. Помимо создания архивов программа поддерживает распаковку документов более 30 различных архивных форматов.

IZArc – удобная программа для работы с архивами, отличающаяся понятным и простым интерфейсом, а также рядом дополнительных возможностей. Программа IZArc поддерживает огромное количество форматов, включая самые популярные rar и zip. Уникальные алгоритмы, используемые в программе, позволяют увеличить скорость работы с архивами. Однако главная особенность программы IZArc состоит в том, что она может легко конвертировать архивы из одного формата в другой. Это особенно необходимо, если вам нужно передать некоторые файлы другому пользователю, у которого нет соответствующего архиватора.Кроме того, программа IZArc позволяет просматрива...

Ежегодно, для улучшения и большего удобства пользователей, разработчики различного компьютерного софта выпускают множество интересных, удобных и качественных программ, существенно помогающих в работе. Одной из таких программ является новейшая разработка архиватора WinArc. Данная утилита доступна для общего пользования и с его помощью вам не составит труда заархивировать или разархивировать, любой, интересующий вас файл. Данная утилита во время работы, использует все ядра процессора тем самым ускорив процесс архивирования. Кроме этого имеет функцию регулировки использования ОЗУ, что позволит значительно снизить нагрузку на ваш к...

Похожие публикации