Saya tahu bahwa keduanya apt-get
dan aptitude
antarmuka manajemen paket perintah pada Linux berasal Debian, dengan opsi yang berbeda, tapi saya masih agak bingung. Di bawah tenda, bukankah mereka menggunakan sistem APT yang sama?
Mengapa Debian mempertahankan alat paralel ini? (Pertanyaan bonus: apa sih wajig ?)
debian
package-management
apt
aptitude
Kevin Cantu
sumber
sumber
Jawaban:
Perbedaan yang paling jelas adalah bahwa
aptitude
menyediakan antarmuka menu terminal (seperti Synaptic di terminal), sedangkanapt-get
tidak.Mempertimbangkan hanya antarmuka baris perintah dari masing-masing, mereka sangat mirip, dan sebagian besar, itu benar-benar tidak masalah yang mana yang Anda gunakan. Versi terbaru dari keduanya akan melacak paket mana yang diinstal secara manual, dan yang diinstal sebagai dependensi (dan karenanya memenuhi syarat untuk dihapus secara otomatis). Bahkan, saya percaya bahwa baru-baru ini, kedua alat telah diperbarui untuk benar-benar berbagi database yang sama dari paket yang diinstal secara manual vs otomatis, sehingga kasus di mana Anda menginstal sesuatu dengan apt-get dan kemudian aptitude ingin menghapusnya sebagian besar merupakan masa lalu.
Ada beberapa perbedaan kecil:
Ada perbedaan kecil lainnya, tetapi itu adalah yang paling penting yang dapat saya pikirkan.
Singkatnya, aptitude lebih baik masuk dalam kategori dengan Synaptic dan paket manajer tingkat tinggi lainnya. Itu kebetulan juga memiliki antarmuka baris perintah yang menyerupai apt-get.
Putaran Bonus: Apa itu wajig?
Ingat bagaimana saya menyebutkan alat "pendamping" seperti apt-cache dan apt-mark? Nah, ada banyak dari mereka, dan jika Anda sering menggunakannya, Anda mungkin tidak ingat yang mana yang memberikan perintah. wajig adalah salah satu solusi untuk masalah itu. Ini pada dasarnya adalah operator, pembungkus di sekitar semua alat itu. Ini juga berlaku sudo bila perlu. Ketika Anda mengatakan
wajig install foo
, wajig mengatakan "Oke,install
disediakan olehapt-get
dan membutuhkan hak admin," dan itu berjalansudo apt-get install foo
. Ketika Anda mengatakanwajig search foo
, wajig mengatakan "Oke,search
disediakan olehapt-cache
dan tidak memerlukan hak admin," dan itu berjalanapt-cache search foo
. Jika Anda menggunakan wajig alih-alih apt-get, apt-mark, apt-cache, dan lainnya, maka Anda tidak akan pernah memiliki masalah ini:Jika Anda ingin tahu apa yang dilakukan wajig di belakang layar, alat apa yang digunakannya untuk mengimplementasikan perintah tertentu, ia memiliki
--simulate
dan--teaching
mode.Dua perintah wajig yang sering saya gunakan adalah
wajig listfiles foo
danwajig whichpkg /usr/bin/foo
.sumber
aptitude install linux-im
tab), sementara itu sangat cepat untuk apt-get. Tampaknya ada beberapa caching yang ada di keluarga apt-get yang kurang memiliki bakat.aptitude
juga memiliki yang luar biasaaptitude search
yang dapat Anda gunakan dengan pola pencarian yang sangat kuat . Kamu punyaaptitude reinstall
. Anda juga dapat menggunakan antarmuka ncurses (menu terminal) untuk menyiapkan operasi paket yang kompleks seperti pemutakhiran parsial, menghapus satu paket, membekukan yang lain, memutakhirkan yang ini, yang kemudian dapat Anda jalankan dalam satu operasi ... Oh, dan ia memiliki pemecah konflik interaktif .aptitude
juga harusaptitude download package-name
mendapatkan file .deb paket!aptitude
tetapi ada diapt-get
, dan ituapt-get --compile source package-name
.apt-get build-dep package-name
ada tetapi saya pikir ituaptitude build-dep package-name
melakukan pekerjaan yang lebih baik.Saya sendiri sering bertanya-tanya. Wikipedia menyoroti bahwa fitur pembeda utama adalah bahwa aptitude memiliki antarmuka mode-teks layar penuh (kutukan). Fakta bahwa Anda dapat menggunakan sebagian besar
apt-get
argumen perintah denganaptitude
sendirinya hanyalah keputusan desain untuk membuatnya lebih mudah bagiapt-get
pengguna untuk pindah keaptitude
dan sebaliknya.Saya tidak pernah menggunakan
wajig
, tetapi dokumentasi menunjukkan bahwa itu hanya sebuah skrip yang tahu apakah Anda mengirimkannyadeb
file (saat dijalankandpkg
) atauapt
nama paket (saat dijalankanapt-get
sebagai gantinya). Bisakah Anda mencobanya dan melihat apakah itu yang dilakukannya?Tentu saja, perbedaan sebenarnya adalah:
sumber
aptitude
memiliki lebih banyak. Anda lupa menaruh-v
bendera tanpa akhirmoo
. (Anda bisa naik ke atas-vvvvvv
)apt-get
memiliki tetapiaptitude
tidak. (Coba--help
keduanya)aptitude adalah program yang disukai untuk manajemen paket dari konsol baik untuk instalasi paket dan peningkatan paket atau sistem di Debian.
Berikut ini adalah ikhtisar dari alat ini dan fitur-fiturnya yang memiliki lebih dari apt-get: http://www.debian.org/doc/FAQ/ch-pkgtools.en.html#s-aptitude
Jadi, saran saya adalah hanya apt-get install aptitude :)
sumber
aptitude
memiliki banyak fitur yang lebih canggih, seperti mode pencarian dan layar penuh, daripadaapt-get
.aptitude
ingat paket mana yang diminta secara eksplisit dan yang hanya diinstal karena dependensi. Secara otomatis akan menghapus paket yang tidak diminta secara eksplisit ketika mereka tidak lagi diperlukan.apt-get
memperlakukan paket yang diminta secara eksplisit dan dependensinya sama.Jadi penggunaan yang lebih baik
aptitude
, ini membantu menjaga sistem Anda bersih.sumber
apt-get autoremove
perintah untuk menghapus paket yang diinstal hanya sebagai dependensi. Saya tidak tahu kapan fitur ini ditambahkan, tetapi satu situs web menunjukkan itu mungkin terjadi dengan Debian Lenny (Juni 2010).apt-get autoremove
tidak menghapus paket yang diinstal hanya sebagai dependensi, ia menghapus dependensi yatim, yang merupakan perbedaan yang halus; itu tidak bisa memastikan apakah paket 'leaf' diinstal dengan niat atau sebagai dependensi sehingga ia meninggalkannya, di mana aptitude akan tahu dan menghapusnya.aptitude
tetapi ini adalah fitur mematikan.apt-get
, serta berbagai alat pengiring, menggunakan memori yang secara signifikan lebih sedikit daripada pemanggilan baris perintah masing-masingaptitude
, dan sedikit lebih cepat. Saya benar-benar tidak menyadari hal ini sampai saya mencoba memutakhirkan instalasi debian pada thinkpad pentium tua yang keriput dengan ram sebesar 32MB. Dibutuhkan satu atau dua jam swap-thrashing untuk dijalankanapt-get
, yang selesai dengan sukses;aptitude
akan gagal setelah saya pikir periode waktu yang lebih lama.Perbedaan ini kurang lebih relevan pada apa pun yang menyerupai sistem desktop modern.
sumber
Membangun pada jawaban @ Gaurav, telur paskah di dua manajer paket cukup lucu !:
dan seterusnya.
sumber
Mereka menawarkan fungsionalitas dasar yang sama: menginstal dan menghapus paket dari baris perintah.
Berikut ini adalah perbandingan yang lebih rinci, diposting di situs web Ubuntu Stack Exchange : https://askubuntu.com/questions/1743/is-aptitude-really-better-than-apt-get/1749#1749
sumber
Seperti disebutkan menjadi http://pthree.org/2007/08/12/aptitude-vs-apt-get/ ,
aptitude
memiliki antarmuka baris perintah yang jauh lebih mudah digunakan.Sistem yang mendasarinya bukan hanya adil
apt
, tetapidpkg
. Sistem ini sama bodohnya dengan RPM, hanya dapat menangani instalasi dan administrasi paket tunggal. Ini melacak file yang diinstal milik paket mana.apt
menangani unduhan repositori, pelacakan dependensi, dan sebagainya untuk semua paket individu - yang kemudian diinstal menggunakandpkg
.aptitude
melakukan hal yang sama, dengan antarmuka yang berbeda.sumber
Baik apt-get maupun aptitude bergantung pada pustaka APT, ya.
Lihat jawaban saya di serverfault.com .
Debian bukan entitas monolitik, ada orang-orang dengan pendapat yang berbeda dan pengelola bakat memutuskan bahwa apt-get memiliki beberapa kekurangan dan ingin membangun sesuatu yang lebih baik dengan bakat. Dia meningkatkan logika untuk menemukan solusi untuk skenario peningkatan yang rumit, menambahkan GUI untuk konsol, dll. Dan ada lebih dari sekadar apt-get dan aptitude, lihat artikel saya apt-get, aptitude, ... pilih manajer paket yang tepat untuk Anda .
sumber
Saya tidak yakin apakah ini masih berlaku tetapi pengembang Debian Joey Hess yang selalu berdarah selalu menganjurkan bakat atas apt-get. Tentu saja hal-hal berubah ketika perangkat lunak berkembang. Apt-get sekarang menangani dependensi yang lebih baik daripada biasanya. Dari http://lists.debian.org/debian-user/2004/04/msg03138.html
Tanggal: Sel, 20 Apr 2004 22:27:12 -0400 Dari: Joey Hess
Sembilan alasan mengapa Anda harus menggunakan aptitude daripada apt-get atau dselect.
aptitude dapat terlihat seperti apt-get
Jika Anda menjalankan 'pembaruan aptitude' atau 'upgrade aptitude' atau 'aptitude install', itu terlihat dan berfungsi seperti apt-get, dengan beberapa peningkatan. Jadi tidak ada kurva belajar.
(Jika Anda pengguna dselect, kurva belajar jelas bukan salah satu masalah Anda.)
paket aptitude secara otomatis menginstal paket
Berhentilah khawatir tentang pemangkasan perpustakaan yang tidak digunakan dan paket dukungan dari sistem Anda. Jika Anda menggunakan aptitude untuk menginstal semuanya, itu akan melacak paket apa yang ditarik oleh dependensi saja, dan menghapus paket-paket itu ketika mereka tidak lagi diperlukan.
aptitude sanely menangani merekomendasikan
Kegagalan apt-get yang telah berlangsung lama adalah kurangnya dukungan untuk hubungan Recommends. Yang merupakan masalah karena banyak paket di Debian mengandalkan Rekomendasi untuk menarik perangkat lunak yang rata-rata pengguna gunakan dengan paket tersebut. Ini bukan penyebab masalah yang tidak biasa, meskipun apt-get baru-baru ini menjadi setidaknya menyebutkan paket yang disarankan, mudah untuk melewatkan peringatannya.
Aptitude mendukung Rekomendasi secara default, dan dapat dikonfigurasi untuk mendukung Saran juga. Itu bahkan mendukung menginstal paket yang direkomendasikan ketika digunakan dalam mode baris perintah.
gunakan aptitude sebagai pengguna normal dan hindari menyemprot sistem Anda
Mungkin Anda tidak tahu bahwa Anda dapat menjalankan aptitude dalam mode gui sebagai pengguna biasa. Buat perubahan yang ingin Anda coba. Jika Anda benar-benar berantakan, Anda dapat menekan 'q' dan keluar, perubahan Anda tidak akan disimpan. (Aptitude juga memungkinkan Anda menggunakan ctrl-u untuk membatalkan perubahan.) Karena itu berjalan sebagai pengguna biasa, Anda tidak dapat menyemprot sistem Anda sampai Anda memberi tahu aptitude untuk melakukan sesuatu, pada titik itu ia akan meminta Anda untuk kata sandi root Anda.
aptitude memiliki UI yang kuat dan kemampuan pencarian
Antara peramban kategoris aptitude dan dukungannya yang luar biasa untuk pemfilteran gaya-mutt dan pencarian paket berdasarkan nama, deskripsi, pengelola, dependensi, dll., Anda harus dapat menemukan paket lebih cepat dari sebelumnya menggunakan aptitude.
aptitude memudahkan untuk melacak perangkat lunak yang usang
Jika Debian berhenti mendistribusikan paket, apt akan membiarkannya di sistem Anda tanpa batas, tanpa peringatan, dan tanpa peningkatan. Aptitude mendaftar paket-paket semacam itu di bagian "Paket Usang dan Dibuat Lokal", sehingga Anda dapat diberi tahu tentang masalah tersebut dan melakukan sesuatu tentangnya.
aptitude memiliki antarmuka ke sistem tugas Debian
Aptitude memungkinkan Anda menggunakan sistem tugas Debian seperti yang dirancang untuk digunakan. Anda dapat menelusuri tugas-tugas yang tersedia, memilih tugas untuk diinstal, dan kemudian menggali ke dalamnya dan menghapus bagian-bagian dari tugas yang tidak Anda inginkan. apt-get tidak memiliki dukungan untuk tugas, dan aptitude lebih baik bahkan daripada alat tujuan khusus seperti tasksel.
aptitude mendukung banyak sumber
Jika sources.list Anda dikonfigurasi untuk membuat beberapa versi paket tersedia, aptitude memungkinkan Anda menelusuri untuk melihat versi yang tersedia dan memilih versi non-standar untuk diinstal. Jika sebuah paket rusak tidak stabil, cukup gulung kembali ke versi dalam pengujian.
aptitude mencatat tindakannya
Aptitude log memaketkannya menginstal, meningkatkan, dan menghapus ke / varlog / aptitude, yang dapat berguna untuk mencari tahu mengapa segala sesuatunya mulai rusak setelah peningkatan kemarin, atau ketika Anda menghapus paket partiticlar.
- Lihat jo pemalu
=================== Ada juga diskusi yang lebih baru dari 2010 di sini https://superuser.com/questions/93437/aptitude-vs-apt-get-get-get-which- is-the-recommended-aka-the-right-tool-to-use di StackExchange.
sumber