dpkg-deb
narzędzie obsługi plików archiwum Debiana (.deb)
- Provided by: dpkg (Version: 1.17.5ubuntu5.8)
- Report a bug
narzędzie obsługi plików archiwum Debiana (.deb)
dpkg-deb [opcja...] polecenie
dpkg-deb tworzy, rozpakowuje i podaje informacje o plikach archiwum (czyli pakietach) Debiana.
Do instalowania i usuwania pakietów z systemu służy polecenie dpkg.
Ponadto można skorzystać z dpkg-deb wywołując dpkg z odpowiednią opcją, która zostanie przekazana do dpkg-deb. dpkg uruchomi dpkg-deb i wykona żądaną operację.
Jeśli pominięto opcję --nocheck, dpkg-deb odczyta plik DEBIAN/control i przetworzy go. Sprawdzi przy tym, czy nie występują w nim błędy składniowe lub inne problemy, a następnie wyświetli nazwę pakietu, który jest tworzony. dpkg-deb ponadto sprawdzi prawa dostępu skryptów instalacyjnych i innych plików znajdujących się w katalogu DEBIAN.
Jeśli nie podano nazwy archiwum, to dpkg-deb zapisze pakiet w pliku katalog.deb.
Jeżeli taki pakiet już istnieje, to zostanie nadpisany.
Jeśli drugim argumentem jest katalog, to dpkg-deb zapisze pakiet pod nazwą katalog/pakiet_wersja_arch.deb lub katalog/pakiet_wersja.deb, jeśli nie zostało określone pole Architecture w pliku kontrolnym. Gdy podany jest katalog, to nie może zostać użyta opcja --no-check, ponieważ dpkg-deb musi przetworzyć plik kontrolny, aby rozpoznać nazwę i wersję pakietu.
Gdy nie podano żadnej nazwy-pliku-kontrolnego, wyświetlana jest informacja o zawartości pakietu oraz zestawienie wykorzystanych plików kontrolnych.
W razie podania nazwy-pliku-kontrolnego, dpkg-deb wyświetli zawartość tego pliku. Jeśli ten plik nie istnieje, wyświetlony zostanie komunikat błędu na standardowe wyjście błędów i program zakończy się z kodem błędu 2.
Jeśli nie podano żadnej nazwy-pola-kontrolnego, to wyświetlana jest zawartość całego pliku control.
Jeśli podano nazwę-pola-kontrolnego, to dpkg-deb wyświetli jej zawartość. Gdy podano więcej niż jedną nazwę-pola-kontrolnego, to dpkg-deb wyświetli pola wraz z nazwą (oraz dwukropkiem i spacją) w takiej kolejności, w jakiej są wymienione w pliku kontrolnym.
Dla nieodnalezionych pól kontrolnych nie są wyświetlane komunikaty błędów.
Proszę zauważyć, że rozpakowanie pakietu w katalogu głównym nie jest odpowiednikiem zainstalowania pakietu! Do tego celu służy wyłącznie polecenie dpkg.
katalog (ale bez katalogów nadrzędnych) zostanie utworzony jeśli trzeba, a jego uprawnienia zostaną zmodyfikowane tak, aby odpowiadały zawartości pakietu.
W razie potrzeby, katalog docelowy będzie utworzony.
Jeśli katalog nie został określony, pliki są rozpakowywane do podkatalogu DEBIAN w katalogu bieżącym.
W razie potrzeby, katalog docelowy będzie utworzony.
Argumentem jest łańcuch znaków w postaci "${nazwa-pola}", który może się odnosić do dowolnego pola pliku stanu. Listę nazw poprawnych pól można łatwo wygenerować, używając opcji -I na tym samym pakiecie. Pełne wyjaśnienie opcji formatowania (łącznie z sekwencjami cytowania i rozdzielaniem pól) można znaleźć w opisie opcji --showformat w dpkg-query(1).
Domyślną wartością tego pola jest "${Package}\t${Version}\n".
The old archive format is less easily parsed by non-Debian tools and is now obsolete; its only use is when building packages to be parsed by versions of dpkg older than 0.93.76 (September 1995), which was released as i386 a.out only.
Nie należy używać dpkg-deb do instalowania oprogramowania! Do tego celu należy korzystać z dpkg, który zainstaluje poprawnie pliki i uruchomi potrzebne skrypty instalacyjne.
dpkg-deb -I pakiet1.deb pakiet2.deb działa niepoprawnie.
Nie ma sprawdzania autentyczności plików .deb, a nawet nie ma prostej sumy kontrolnej. (Narzędzia wyższego poziomu takie jak APT wspierają uwierzytelnianie pakietów .deb pobieranych z danego repozytorium, zaś większość współczesnych pakietów dostarcza plik kontrolny md5sum wygenerowany przez debian/rules. Niestety, nie jest to bezpośrednio wspierane przez narzędzia niższego poziomu.)
Piotr Roszatycki <dexter@debian.org>, 1999
Bartosz Feński <fenio@debian.org>, 2004-2005
Robert Luberda <robert@debian.org>, 2006-2008
Wiktor Wandachowicz <siryes@gmail.com>, 2008
Michał Kułach <michal.kulach@gmail.com>, 2012