Saya ingin menghapus paket, tetapi saya lupa bagaimana saya menginstalnya melalui dpkg
atauapt-get
Saya mencoba memeriksa dpkg-query -list | grep myPackage
dan apt list --installed | grep myPackage
, tetapi myPackage ditunjukkan pada keduanya.
jadi bagaimana saya bisa tahu apakah paket itu diinstal oleh dpkg atau apt?
Untuk melakukan perintah uninstall yang benar, seperti: apt-get remove
ataudpkg -r
Jawaban:
Bandingkan log
/var/log/apt/term.log
, yang merupakan file log yang dibuat olehapt
dan/var/log/dpkg.log
, yang merupakan file log yang dihasilkan olehdpkg
. Jika Anda mencatat nama paket yang dapat ditemukan/var/log/dpkg.log
tetapi tidak dalam/var/log/apt/term.log
, sangat mungkin bahwa Anda menginstal paket padadpkg
saat itu.Tolong ingat
apt
adalah frontend untukdpkg
. Dengan demikian, disarankan untuk menghapus paket apa sajaapt
daripadadpkg
, karenaapt
akan menangani ketergantungan untuk menghapus paket-paket yang tidak akan digunakan oleh paket lain (, atau tandai sebagai "tidak digunakan lagi" untuk membiarkan Anda menghapusnya nanti. Itu tergantung padaapt
opsi persis yang sebenarnya Anda gunakan). Namun, tidak ada salahnya bagi Anda untuk menghapus paketdpkg
Anda jika Anda mau. Anda mungkin akan meninggalkan banyak paket yang tidak akan Anda gunakan lagi.sumber
Paket apa pun yang diinstal dengan APT juga diinstal dengan
dpkg
. APT menghitung dependensi dan mengambil paket, yang kemudian dibongkar dan diinstal olehdpkg
.Jika Anda dapat menemukan paket Anda dengan APT, maka Anda harus menggunakan
apt
perintah untuk menghapusnya, karena APT akan menghitung dependensi paket dan:sudo apt autoremove
sumber
Tidak masalah bagaimana cara menghapus paket.
dpkg
juga membutuhkan dependensi yang diatur dalam paket.Ketika Anda menjalankannya
apt remove
mulaidpkg
menghapus paket.Ketika Anda menginstal paket menggunakan
dpkg
dan memerlukan beberapa dependenices, proses instalasi berhenti dengan kesalahan. Anda dapat memperbaikinya dengansudo apt install -f
yang akan menginstal dependensi jika tersedia. Dalam hal iniapt autoremove
akan bekerja dengan cara yang sama.sumber