Jako administrator systemu Debian, będziesz regularnie używać .deb
pakietów, ponieważ zawierają one jednostki takie jak (aplikacje, dokumentacja, itp), których instalacja i konserwacja ułatwiają pracę. Dobrym pomysłem jest wiedzieć, czym one są i jak z nich korzystać.
Ten rozdział opisuje strukturę i zawartość pakietów "binarnych" oraz "źródłowych". Z końcówką .deb
pliki te wykorzystujemy używając dpkg
, a drugi zawiera kod źródłowy, jak również instrukcje do budowania pakietów binarnych.
5.1. Struktura pakietów Binarnych
Format pakietów Debiana jest zaprojektowany tak, aby jego zawartość mogła być wypakowana na każdym systemie Unix, który ma klasyczne polecenia ar
, tar
, oraz gzip
(czasamixz
lub bzip2
).. Ten trywialny zapis jest ważny dla przenoszenia i usuwania skutków awarii.
Wyobraźmy sobie na przykład, że przez pomyłkę usunąłeś dpkg
program i w ten sposób nie możesz instalować pakietów Debiana. dpkg
jest pakietem Debiana samym w sobie, wydaje się wieć, że system będzie gotowy do... Na szczęście, znasz, format pakietu dlatego możesz pobierać pliki .deb
z dpkg i zainstalować go ręcznie (patrz "Narzędzia" w ramce). Jeśli jakimś nieszczęśliwym trafem jednen lub więcej programów ar
, tar
lub gzip
/ xz
/ bzip2
zniknęły, trzeba tylko skopiować brakujący program z innego systemu (ponieważ każdy z nich działa w sposób całkowicie autonomiczny, wystarczy jedynie skopiować).
Spójrz na zawartość .deb
file:
$
ar t dpkg_1.16.10_amd64.deb
debian-binary
control.tar.gz
data.tar.gz
$
ar x dpkg_1.16.10_i386.deb
$
ls
control.tar.gz data.tar.gz debian-binary dpkg_1.16.10_i386.deb
$
tar tzf data.tar.gz | head -n 15
./
./var/
./var/lib/
./var/lib/dpkg/
./var/lib/dpkg/updates/
./var/lib/dpkg/alternatives/
./var/lib/dpkg/info/
./var/lib/dpkg/parts/
./usr/
./usr/share/
./usr/share/locale/
./usr/share/locale/sv/
./usr/share/locale/sv/LC_MESSAGES/
./usr/share/locale/sv/LC_MESSAGES/dpkg.mo
./usr/share/locale/it/
$
tar tzf control.tar.gz
./
./conffiles
./preinst
./md5sums
./control
./postrm
./prerm
./postinst
$
cat debian-binary
2.0
Jak możesz zobaczyć ar
archiwum pakietów Debiana jest podzielona na trzy pliki
debian-binary
. This is a text file which simply indicates the version of the .deb
file used (in 2013: version 2.0).
control.tar.gz
. This archive file contains all of the available meta-information, like the name and version of the package. Some of this meta-information allows package management tools to determine if it is possible to install or uninstall it, for example according to the list of packages already on the machine.
data.tar.gz
. This archive contains all of the files to be extracted from the package; this is where the executable files, documentation, etc., are all stored. Some packages may use other compression formats, in which case the file will be named differently (data.tar.bz2
for bzip2, data.tar.xz
for XZ, data.tar.lzma
for LZMA).