<Sebelum | Contents [show] | Seterusnya>
Pertanyaan dpkgPangkalan Data dan Pemeriksaan deb Fail
Kami akan mulakan dengan beberapa dpkg pilihan yang menanyakan pangkalan data dpkg dalaman. Pangkalan data ini berada pada sistem fail di /var/lib/dpkg dan mengandungi berbilang bahagian termasuk skrip konfigurasi (/var/lib/dpkg/info), senarai fail yang dipasang pakej (/var/lib/dpkg/info/*. senarai), dan status setiap pakej yang telah dipasang (/var/lib/dpkg/status). Anda boleh gunakan dpkg untuk berinteraksi dengan fail dalam pangkalan data ini. Ambil perhatian bahawa kebanyakan pilihan tersedia dalam jangka masa panjang
versi (satu atau lebih perkataan yang berkaitan, didahului oleh sempang berganda) dan versi pendek (sebuah huruf, selalunya merupakan awalan satu perkataan daripada versi panjang, dan didahului dengan sengkang tunggal). Konvensyen ini sangat biasa sehingga ia adalah piawaian POSIX.
Pertama, mari kita lihat --listfiles pakej (Atau -L), yang menyenaraikan fail yang dipasang oleh pakej yang ditentukan:
$ dpkg -L asas-passwd
/.
/ usr
/ usr / sbin
/usr/sbin/update-passwd
/ usr / share
/usr/share/lintian
/usr/share/lintian/overrides
/usr/share/lintian/overrides/base-passwd
/usr/share/doc-base
/usr/share/doc-base/users-and-groups
/usr/share/base-passwd
/usr/share/base-passwd/group.master
/usr/share/base-passwd/passwd.master
/ usr / share / lelaki
/usr/share/man/pl
/usr/share/man/pl/man8
/usr/share/man/pl/man8/update-passwd.8.gz [...]
/ usr / kongsi / dokumen
/usr/share/doc/base-passwd
/usr/share/doc/base-passwd/users-and-groups.txt.gz
/usr/share/doc/base-passwd/changelog.gz
/usr/share/doc/base-passwd/copyright
/usr/share/doc/base-passwd/README
/usr/share/doc/base-passwd/users-and-groups.html
$ dpkg -L asas-passwd
/.
/ usr
/ usr / sbin
/usr/sbin/update-passwd
/ usr / share
/usr/share/lintian
/usr/share/lintian/overrides
/usr/share/lintian/overrides/base-passwd
/usr/share/doc-base
/usr/share/doc-base/users-and-groups
/usr/share/base-passwd
/usr/share/base-passwd/group.master
/usr/share/base-passwd/passwd.master
/ usr / share / lelaki
/usr/share/man/pl
/usr/share/man/pl/man8
/usr/share/man/pl/man8/update-passwd.8.gz [...]
/ usr / kongsi / dokumen
/usr/share/doc/base-passwd
/usr/share/doc/base-passwd/users-and-groups.txt.gz
/usr/share/doc/base-passwd/changelog.gz
/usr/share/doc/base-passwd/copyright
/usr/share/doc/base-passwd/README
/usr/share/doc/base-passwd/users-and-groups.html
Seterusnya, dpkg --search fail (Atau -S), mencari sebarang pakej yang mengandungi fail atau laluan yang diluluskan dalam hujah. Sebagai contoh, untuk mencari pakej yang mengandungi /bin/tarikh:
$ dpkg -S /bin/date
coreutils: /bin/date
$ dpkg -S /bin/date
coreutils: /bin/date
. dpkg --status pakej (Atau -s) arahan memaparkan pengepala pakej yang dipasang. Sebagai contoh, untuk mencari tajuk untuk inti inti Pakej:
$ dpkg -s coreutils Pakej: coreutils Essential: ya
Status: pasang ok dipasang
$ dpkg -s coreutils Pakej: coreutils Essential: ya
Status: pasang ok dipasang
Keutamaan: diperlukan Bahagian: utils Saiz Dipasang: 13855
Penyelenggara: Michael Stone[e-mel dilindungi]> Seni bina: amd64
Berbilang Gerbang: asing Versi: 8.23-3
Menggantikan: mktemp, realpath, tamat masa
Pra-Bergantung: libacl1 (>= 2.2.51-8), libattr1 (>= 1:2.4.46-8), libc6 (>= 2.17),
➥ libselinux1 (>= 2.1.13) Konflik: tamat masa
Penerangan: Utiliti teras GNU
Pakej ini mengandungi utiliti asas fail, shell dan manipulasi teks yang dijangka wujud pada setiap sistem pengendalian.
.
Secara khusus, pakej ini termasuk:
arch base64 basename cat chcon chgrp chmod chown chroot cksum comm cp csplit cut date dd df dir dircolors dirname du echo env expand expr factor flock palsu fmt fold groups head hostid id install join link ln logname ls md5sum mkdir mkfifo n mknod nice mktemp m numfmt od tampal pathchk pinky pr printenv printf ptx pwd readlink realpath rm rmdir runcon sha*sum seq shred sleep sort split stat stty sum sync tac tail tee ujian tamat masa sentuh tr truncate benar tsort tty uname unexpand uniq nyahpaut pengguna vdir wc whoami ya
Laman utama: http://gnu.org/software/coreutils
Keutamaan: diperlukan Bahagian: utils Saiz Dipasang: 13855
Penyelenggara: Michael Stone[e-mel dilindungi]> Seni bina: amd64
Berbilang Gerbang: asing Versi: 8.23-3
Menggantikan: mktemp, realpath, tamat masa
Pra-Bergantung: libacl1 (>= 2.2.51-8), libattr1 (>= 1:2.4.46-8), libc6 (>= 2.17),
➥ libselinux1 (>= 2.1.13) Konflik: tamat masa
Penerangan: Utiliti teras GNU
Pakej ini mengandungi utiliti asas fail, shell dan manipulasi teks yang dijangka wujud pada setiap sistem pengendalian.
.
Secara khusus, pakej ini termasuk:
arch base64 basename cat chcon chgrp chmod chown chroot cksum comm cp csplit cut date dd df dir dircolors dirname du echo env expand expr factor flock palsu fmt fold groups head hostid id install join link ln logname ls md5sum mkdir mkfifo n mknod nice mktemp m numfmt od tampal pathchk pinky pr printenv printf ptx pwd readlink realpath rm rmdir runcon sha*sum seq shred sleep sort split stat stty sum sync tac tail tee ujian tamat masa sentuh tr truncate benar tsort tty uname unexpand uniq nyahpaut pengguna vdir wc whoami ya
Laman utama: http://gnu.org/software/coreutils
amd64
amd64
backdoor-facto 3.4.2-0kali1 semua
backupninja backuppc baobab
backdoor-facto 3.4.2-0kali1 semua
backupninja backuppc baobab
3.22.1-1
3.22.1-1
amd64
amd64
. dpkg --list (Atau -l) arahan memaparkan senarai pakej yang diketahui oleh sistem dan status pemasangannya. Anda juga boleh menggunakan grep pada output untuk mencari medan tertentu, atau menyediakan kad bebas (seperti b*) untuk mencari pakej yang sepadan dengan rentetan carian separa tertentu. Ini akan menunjukkan ringkasan pakej. Contohnya, untuk menunjukkan senarai ringkasan semua pakej yang bermula dengan 'b':
$ dpkg -l 'b*'
Dikehendaki=Tidak diketahui/Pasang/Alih Keluar/Purge/Tahan
| Status=Tidak/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aTunggu/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: huruf besar=buruk)
||/ Nama Versi Perihalan Seni Bina
+++-==============-============-============-===== =============================
$ dpkg -l 'b*'
Dikehendaki=Tidak diketahui/Pasang/Alih Keluar/Purge/Tahan
| Status=Tidak/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aTunggu/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: huruf besar=buruk)
||/ Nama Versi Perihalan Seni Bina
+++-==============-============-============-===== =============================
ii
ii un un ii
b43-fwcutter
1: 019-3
utiliti untuk mengekstrak Broadcom 4
Tampal binari win32/64 dengan shel (tiada perihalan tersedia)
(tiada penerangan tersedia)
Penganalisis penggunaan cakera GNOME
ii
ii un un ii
[...]
[...]
. dpkg --kandungan fail.deb (Atau -c) arahan menyenaraikan semua fail dalam sesuatu tertentu deb fail:
$ dpkg -c /var/cache/apt/archives/gnupg_1.4.18-6_amd64.deb
drwxr-xr-x root/root 0 2014-12-04 23:03 ./
drwxr-xr-x root/root 0 2014-12-04 23:03 ./lib/
drwxr-xr-x root/root 0 2014-12-04 23:03 ./lib/udev/
drwxr-xr-x root/root 0 2014-12-04 23:03 ./lib/udev/rules.d/
-rw-r--r-- root/root 2711 2014-12-04 23:03 ./lib/udev/rules.d/60-gnupg.rules
drwxr-xr-x root/root 0 2014-12-04 23:03 ./usr/
drwxr-xr-x root/root 0 2014-12-04 23:03 ./usr/lib/
drwxr-xr-x root/root 0 2014-12-04 23:03 ./usr/lib/gnupg/
-rwxr-xr-x root/root 39328 2014-12-04 23:03 ./usr/lib/gnupg/gpgkeys_ldap
-rwxr-xr-x root/root 92872 2014-12-04 23:03 ./usr/lib/gnupg/gpgkeys_hkp
-rwxr-xr-x root/root 47576 2014-12-04 23:03 ./usr/lib/gnupg/gpgkeys_finger
-rwxr-xr-x root/root 84648 2014-12-04 23:03 ./usr/lib/gnupg/gpgkeys_curl
-rwxr-xr-x root/root 3499 2014-12-04 23:03 ./usr/lib/gnupg/gpgkeys_mailto
drwxr-xr-x root/root 0 2014-12-04 23:03 ./usr/bin/
-rwxr-xr-x root/root 60128 2014-12-04 23:03 ./usr/bin/gpgsplit
-rwxr-xr-x root/root 1012688 2014-12-04 23:03 ./usr/bin/gpg [...]
$ dpkg -c /var/cache/apt/archives/gnupg_1.4.18-6_amd64.deb
drwxr-xr-x root/root 0 2014-12-04 23:03 ./
drwxr-xr-x root/root 0 2014-12-04 23:03 ./lib/
drwxr-xr-x root/root 0 2014-12-04 23:03 ./lib/udev/
drwxr-xr-x root/root 0 2014-12-04 23:03 ./lib/udev/rules.d/
-rw-r--r-- root/root 2711 2014-12-04 23:03 ./lib/udev/rules.d/60-gnupg.rules
drwxr-xr-x root/root 0 2014-12-04 23:03 ./usr/
drwxr-xr-x root/root 0 2014-12-04 23:03 ./usr/lib/
drwxr-xr-x root/root 0 2014-12-04 23:03 ./usr/lib/gnupg/
-rwxr-xr-x root/root 39328 2014-12-04 23:03 ./usr/lib/gnupg/gpgkeys_ldap
-rwxr-xr-x root/root 92872 2014-12-04 23:03 ./usr/lib/gnupg/gpgkeys_hkp
-rwxr-xr-x root/root 47576 2014-12-04 23:03 ./usr/lib/gnupg/gpgkeys_finger
-rwxr-xr-x root/root 84648 2014-12-04 23:03 ./usr/lib/gnupg/gpgkeys_curl
-rwxr-xr-x root/root 3499 2014-12-04 23:03 ./usr/lib/gnupg/gpgkeys_mailto
drwxr-xr-x root/root 0 2014-12-04 23:03 ./usr/bin/
-rwxr-xr-x root/root 60128 2014-12-04 23:03 ./usr/bin/gpgsplit
-rwxr-xr-x root/root 1012688 2014-12-04 23:03 ./usr/bin/gpg [...]
. dpkg --info fail.deb (Atau -I) arahan memaparkan tajuk yang ditentukan deb fail:
$ dpkg -I /var/cache/apt/archives/gnupg_1.4.18-6_amd64.deb
pakej debian baharu, versi 2.0.
saiz 1148362 bait: arkib kawalan=3422 bait.
$ dpkg -I /var/cache/apt/archives/gnupg_1.4.18-6_amd64.deb
pakej debian baharu, versi 2.0.
saiz 1148362 bait: arkib kawalan=3422 bait.
1264 bait,
4521 bait,
479 bait,
473 bait, Pakej: gnupg Versi: 1.4.18-6
26 talian
65 talian
13 talian
13 talian
kawalan
md5sums
* postinst
* prasekolah
#! / Bin / sh
#! / Bin / sh
1264 bait,
4521 bait,
479 bait,
473 bait, Pakej: gnupg Versi: 1.4.18-6
Seni bina: amd64
Penyelenggara: Debian GnuPG-Maintainers[e-mel dilindungi]> Saiz Dipasang: 4888
Bergantung: gpgv, libbz2-1.0, libc6 (>= 2.15), libreadline6 (>= 6.0), libusb-0.1-4 (>=
➥ 2:0.1.12), zlib1g (>= 1:1.1.4)
Mengesyorkan: gnupg-curl, libldap-2.4-2 (>= 2.4.7)
Cadangan: gnupg-doc, libpcsclite1, parcimonie, xloadimage | imagemagick | eog Bahagian: utils
Keutamaan: penting Multi-Arch: asing
Laman utama: http://www.gnupg.org
Penerangan: pengawal privasi GNU - penggantian PGP percuma
GnuPG ialah alat GNU untuk komunikasi selamat dan penyimpanan data. Ia boleh digunakan untuk menyulitkan data dan untuk mencipta tandatangan digital. Ia termasuk kemudahan pengurusan kunci lanjutan dan patuh
Seni bina: amd64
Penyelenggara: Debian GnuPG-Maintainers[e-mel dilindungi]> Saiz Dipasang: 4888
Bergantung: gpgv, libbz2-1.0, libc6 (>= 2.15), libreadline6 (>= 6.0), libusb-0.1-4 (>=
➥ 2:0.1.12), zlib1g (>= 1:1.1.4)
Mengesyorkan: gnupg-curl, libldap-2.4-2 (>= 2.4.7)
Cadangan: gnupg-doc, libpcsclite1, parcimonie, xloadimage | imagemagick | eog Bahagian: utils
Keutamaan: penting Multi-Arch: asing
Laman utama: http://www.gnupg.org
Penerangan: pengawal privasi GNU - penggantian PGP percuma
GnuPG ialah alat GNU untuk komunikasi selamat dan penyimpanan data. Ia boleh digunakan untuk menyulitkan data dan untuk mencipta tandatangan digital. Ia termasuk kemudahan pengurusan kunci lanjutan dan patuh
dengan standard Internet OpenPGP yang dicadangkan seperti yang diterangkan dalam RFC 4880. [...]
dengan standard Internet OpenPGP yang dicadangkan seperti yang diterangkan dalam RFC 4880. [...]
Vous penggunaan pouvez aussi dpkg untuk membandingkan nombor versi pakej dengan --bandingkan-versi pilihan, yang sering dipanggil oleh program luaran, termasuk skrip konfigurasi yang dilaksanakan oleh dpkg sendiri. Pilihan ini memerlukan tiga parameter: nombor versi, pengendali perbandingan dan nombor versi kedua. Pengendali yang berbeza mungkin adalah: lt (kurang daripada), le (kurang daripada atau sama dengan), eq (sama rata), ne (tidak sama), ge (lebih besar daripada atau sama dengan), dan gt (lebih besar daripada). Jika perbandingan itu betul, dpkg mengembalikan 0 (berjaya); jika tidak, ia memberikan nilai pulangan bukan sifar (menunjukkan kegagalan). Pertimbangkan perbandingan ini:
$ dpkg --compare-versi 1.2-3 gt 1.1-4
$ echo $?
0
$ dpkg --compare-versi 1.2-3 lt 1.1-4
$ echo $?
1
$ dpkg --compare-versions 2.6.0pre3-1 lt 2.6.0-1
$ echo $?
1
$ dpkg --compare-versi 1.2-3 gt 1.1-4
$ echo $?
0
$ dpkg --compare-versi 1.2-3 lt 1.1-4
$ echo $?
1
$ dpkg --compare-versions 2.6.0pre3-1 lt 2.6.0-1
$ echo $?
1
Perhatikan kegagalan yang tidak dijangka pada perbandingan terakhir: untuk dpkg, rentetan ”pra” (biasanya menandakan pra-keluaran) tidak mempunyai makna tertentu, dan dpkg hanya mentafsirkannya sebagai rentetan, dalam hal ini "2. 6.0pra3-1” adalah lebih besar mengikut abjad daripada ”2.6.0-1”. Apabila kami mahu nombor versi pakej menunjukkan bahawa ia adalah pra-keluaran, kami menggunakan aksara tilde, “~"
$ dpkg --compare-versions 2.6.0~pre3-1 lt 2.6.0-1
$ echo $?
0
$ dpkg --compare-versions 2.6.0~pre3-1 lt 2.6.0-1
$ echo $?
0