Perintah dpkg Debian: periksa status dan pasang DEB lokal
Perintah dpkg membaca basis data paket lokal dan memasang berkas .deb pada sistem Debian dan turunannya. dpkg -i tidak mengunduh dependensi dari repositori secara otomatis; gunakan -s untuk status paket dan -L untuk daftar berkas yang tercatat.
DEB adalah format arsip paket Debian. Pengelolaan sumber repositori dan pengambilan dependensi, yaitu paket lain yang diperlukan, dilakukan oleh alat tingkat lebih tinggi seperti apt untuk pengelolaan paket Debian dan Ubuntu. Bedakan nama paket yang tersimpan pada basis data dari nama berkas .deb yang akan dipasang.
Sintaks dan persiapan
dpkg [opsi] tindakan [paket-atau-berkas]
opsi, tindakan, dan paket-atau-berkas adalah penanda. Periksa distribusi melalui cat /etc/os-release, versi dengan dpkg --version, dan rincian melalui man dpkg. Contoh kueri memakai nama paket bash; contoh pemasangan memakai jalur berkas ./example.deb.
Kueri status dan daftar berkas biasanya dapat dilakukan sebagai pengguna biasa. Pemasangan atau penghapusan paket memerlukan hak administrator. Siapkan berkas .deb yang benar-benar Anda percayai, cocok dengan rilis dan arsitektur sistem, serta cadangan bila perubahan dilakukan pada sistem penting.
Membaca status paket lokal
dpkg -s bash
-s membaca entri bash pada basis data status lokal. Keluaran dapat memuat nama, status, versi, arsitektur, dependensi, dan deskripsi. Jika paket tidak tercatat atau belum terpasang, pesan serta statusnya berbeda; jangan menafsirkan semua keluaran sebagai pemasangan yang sudah selesai.
Kueri ini bukan pemeriksaan versi terbaru pada repositori. Untuk kandidat peningkatan dan sumber paket, gunakan misalnya apt policy bash. Tidak perlu menjalankan pemasangan hanya untuk membaca entri status yang sudah ada.
Melihat daftar berkas milik paket
dpkg -L bash
-L menampilkan jalur yang tercatat sebagai berkas paket bash. Gunakan untuk menemukan dokumentasi, executable, atau konfigurasi yang berasal dari paket tersebut. Daftar ini tidak membuktikan bahwa semua berkas masih ada atau belum dimodifikasi.
Daftar tidak mencakup setiap berkas tambahan yang dibuat skrip pemelihara paket dan tidak merinci sistem alternatives, yaitu mekanisme pemilihan implementasi untuk nama perintah bersama. Untuk mencari paket pemilik suatu jalur yang tercatat, gunakan dpkg -S /jalur/berkas dengan jalur yang benar pada sistem Anda. Huruf besar -S berbeda dari -s untuk status.
Memeriksa berkas .deb sebelum memasang
example.deb adalah nama contoh, bukan paket yang disediakan bersama artikel. Dari direktori yang memuat berkas Anda, gunakan dpkg-deb -I ./example.deb untuk membaca informasi kontrol dan dpkg-deb -c ./example.deb untuk melihat isi arsip berkasnya.
Periksa Package, Version, Architecture, Depends, dan jalur yang akan disediakan. Bandingkan arsitektur dengan dpkg --print-architecture serta persyaratan rilis dari penerbit paket. Nama berkas saja tidak membuktikan isi, arsitektur, atau sumber yang benar.
Pembacaan metadata tidak memverifikasi bahwa paket aman. Instalasi dapat menjalankan skrip preinst atau postinst dengan hak proses pemasang. Jangan memasang DEB yang tidak tepercaya dengan sudo. Mengekstrak isi DEB secara manual juga bukan pengganti pemasangan paket yang benar.
Memasang DEB lokal dan memahami dependensi
sudo dpkg -i ./example.deb
Perintah ini meminta dpkg memasang ./example.deb. Jalankan hanya setelah nama berkas contoh diganti dengan berkas yang sesuai dan sumbernya diperiksa. dpkg membongkar serta mengonfigurasi paket, tetapi tidak mengambil dependensi yang belum tersedia dari repositori.
Jika dependensi kurang, proses dapat meninggalkan paket dalam keadaan terbongkar tetapi belum terkonfigurasi. Baca pesan dan periksa status paket yang sebenarnya, bukan sekadar melihat apakah berkas program sudah muncul. Jangan memaksa pengabaian dependensi atau berulang kali memasang berkas yang sama tanpa memahami masalahnya.
Untuk pemasangan lokal yang juga memerlukan penyelesaian dependensi, pertimbangkan sudo apt install ./example.deb. Ada spasi antara install dan ./example.deb; awalan ./ menyatakan jalur berkas lokal. APT (Advanced Package Tool) dapat mencari dependensi pada sumber yang dikonfigurasi, tetapi keberhasilan tetap bergantung pada ketersediaan versi, arsitektur, dan kebijakan repositori.
Tinjau rencana perubahan APT sebelum menyetujui. Jika sistem sudah berada dalam keadaan dependensi bermasalah, periksa paket dan solusi yang diajukan terlebih dahulu; jangan menganggap perintah perbaikan selalu hanya menambah paket atau selalu mempertahankan paket lokal.
Menafsirkan status instalasi
dpkg -s bash
Pada sistem dengan bash terpasang dan terkonfigurasi, sebagian bentuk keluaran dapat berupa berikut. Tanda ... menggantikan versi yang berbeda menurut lingkungan:
Package: bash
Status: install ok installed
Version: ...
install menunjukkan pilihan pemasangan, ok adalah penanda status yang dikenal, dan installed berarti paket telah dibongkar serta dikonfigurasi dengan benar menurut basis data dpkg. Ini bukan jaminan bahwa aplikasi memenuhi semua kebutuhan atau seluruh berkasnya belum berubah.
Keadaan unpacked berarti paket dibongkar tetapi belum dikonfigurasi; half-configured berarti konfigurasi dimulai tetapi belum selesai. Jika muncul keadaan yang tidak diharapkan, simpan pesan galat dan periksa dependensi sebelum mengubah paket lagi. dpkg --audit dapat membantu menemukan pemasangan parsial atau ketidakkonsistenan data paket.
Tindakan utama
| Tindakan | Tujuan dan batasnya |
|---|---|
-i berkas.deb |
Memasang DEB lokal; tidak mengunduh dependensi repositori secara otomatis. |
-s paket |
Membaca status paket pada basis data lokal. |
-L paket |
Menampilkan daftar jalur berkas yang tercatat untuk paket. |
-S jalur |
Mencari paket pemilik jalur yang tercatat. |
-r / -P paket |
Menghapus paket atau melakukan purge termasuk konfigurasi paket yang ditangani proses penghapusan. |
-r biasanya mempertahankan conffiles, yaitu berkas konfigurasi yang dikelola sebagai konfigurasi paket. -P menghapusnya melalui purge dan dapat memanggil skrip pembersihan paket. Berkas konfigurasi di home pengguna tidak otomatis menjadi bagian yang dibersihkan dpkg. Simpan konfigurasi yang perlu dipulihkan sebelum penghapusan.
Membedakan tiga jenis informasi
Berkas DEB: dpkg-deb membaca paket yang belum tentu terpasang. Versi pada berkas itu tidak otomatis sama dengan versi lokal atau kandidat repositori.
Basis data lokal: dpkg -s dan dpkg -L menjelaskan status serta catatan berkas paket pada mesin itu. Catatan status tidak berubah menjadi informasi repositori hanya karena jaringan tersedia.
Repositori: apt policy atau apt-cache policy membantu melihat kandidat dan sumber berdasarkan metadata APT. Informasi ini bergantung pada konfigurasi dan kesegaran daftar paket, seperti dibahas dalam panduan apt.
FAQ
Apa bedanya dpkg -i dan apt install ./file.deb?
dpkg memproses berkas lokal tanpa mengunduh dependensi dari repositori. APT dapat mencari dan memasang dependensi yang tersedia dari sumber yang dikonfigurasi; tetap tinjau rencana perubahannya.
Apakah hasil dpkg -L memastikan berkas masih utuh?
Tidak. -L menampilkan catatan jalur paket, bukan menguji semua isi berkas. Gunakan pemeriksaan yang sesuai untuk pertanyaan tentang perubahan isi atau keadaan aplikasi.
Dokumentasi resmi
Lihat manual dpkg tentang pemasangan dan keadaan paket, manual dpkg-query tentang status dan daftar berkas, serta manual dpkg-deb untuk informasi arsip DEB.




