apt-get - autoremove ingin menghapus instalan Gnome

12

Karena empati 2.30 di Debian Wheezy tidak memenuhi semua preferensi saya, saya mencoba empati 3.1 dari eksperimen, menggunakan perintah:

apt-get -t experimental install empathy

Saya harus mencari tahu, versi empati ini tidak berfungsi dengan baik di Gnome 2.x. Karena itu saya menyebutkan:

apt-get purge empathy
apt-get install empathy

Berharap, ini akan menginstal ulang versi empati "standar" lagi.

Sejauh ini, semuanya bekerja dengan baik.

Tapi sekarang:

apt-get autoremove

ingin menghapus Gnome secara keseluruhan.

Bagaimana saya bisa tenang apt-get autoremove?

Marcel
sumber

Jawaban:

12

APT memelihara indikator untuk setiap paket, memberi tahu apakah paket tersebut diinstal secara manual (diinstal karena pengguna / administrator menginginkannya) atau diinstal secara otomatis (diinstal hanya karena ini tergantung pada beberapa paket lain). Itu yang apt-get autoremovedigunakan untuk menentukan apa yang harus dihapus: itu menghapus paket yang ditandai sebagai diinstal secara otomatis, tetapi tidak ada paket yang diinstal saat ini memerlukan.

Anda perlu menandai gnomepaket, atau paket Gnome apa pun yang sesuai dengan bit yang ingin Anda simpan, seperti yang diinstal secara manual. Cara termudah untuk melakukan ini dalam alat interaktif dengan akses ke pengaturan yang dipasang secara otomatis:

  • Pada baris perintah, panggil aptitude unmarkauto PACKAGENAMEuntuk menandai PACKAGENAME telah diinstal secara manual, atau markautountuk menandainya sebagai diinstal secara otomatis.
  • Di Aptitude, pindah ke baris yang sesuai dengan paket, lalu tekan muntuk menandainya sebagai yang diinstal secara manual, atau Muntuk menandainya sebagai yang diinstal secara otomatis.
  • Di Synaptic, pindah ke baris yang sesuai dengan paket, lalu beralih "Secara otomatis diinstal" di menu "Paket".

Perhatikan bahwa (setidaknya pada pemerasan, saya belum memeriksa wheezy) gnome-desktop-environmenttergantung pada semua komponen Gnome resmi, termasuk empati. Saya menduga Anda telah gnome-desktop-environmentmenginstal, dan menghapus empathypaket harus menghapusnya karena ketergantungan. Jika demikian, sekarang Anda harus menginstal ulang gnome-desktop-environment. (Jika Anda tidak ingat, Anda dapat menemukan riwayat apa yang dilakukan oleh manajer paket berbasis APT /var/log/apt.)

Alih-alih membersihkan dan menginstal empathy, Anda bisa saja melakukan apt-get -t wheezy empathyuntuk menginstal versi wheezy.

Gilles 'SANGAT berhenti menjadi jahat'
sumber
keren! Menggunakan "trik" ini, seseorang dapat menghapus Empati tanpa menghapus Gnome, kan?
Marcel
@ Marscel: Anda dapat menghapus Empathy tanpa menghapus komponen Gnome lainnya, tetapi gnome-desktop-environmentpaket tergantung empathy, jadi Anda harus menghapus itu, dan mungkin ingin menginstalnya kembali.
Gilles 'SANGAT berhenti menjadi jahat'
8

Anda dapat apt-get installbeberapa paket gnome (yang sudah diinstal) untuk mengaturnya sebagai yang dipilih secara manual (diinstal). Ini harus memperkenalkan dependensi yang diperlukan sehingga autoremove tidak ingin menghapus paket gnome lagi.

Saya tidak menggunakan gnome, tapi mungkin ada beberapa paket gnome-desktop atau sesuatu seperti itu yang menarik semua hal utama gnome.

Misalnya output pada sistem saya untuk paket non-gnome:

# apt-get install libsource-highlight3
Reading package lists... Done
Building dependency tree       
Reading state information... Done
libsource-highlight3 is already the newest version.
libsource-highlight3 set to manually installed.

libsource-highlight3secara otomatis diinstal sebagai ketergantungan source-highlight. Setelah penghapusan source-highlight, apt-get autoremovetidak akan menghapus libsource-highlight3paket, karena sudah diatur untuk diinstal secara manual sekarang.

maxschlepzig
sumber
Terima kasih! Saya mengikuti saran Anda dan disebutkan apt-get install gnomedi baris perintah. Debian sekarang ingin menggunakan ruang disk tambahan 200MB, yang menurut saya agak aneh - namun, saya harap itu berhasil.
Marcel
1
@ Marscel, ini harus ok - mungkin paket aplikasi atau paket (yang menarik gnome Anda saat ini dikemas sebagai dependensi (misalnya empati) dan kemudian dihapus) hanya tidak memerlukan semua gnome - paket gnome utama di sisi lain inginkan untuk menyediakan seluruh desktop gnome, yaitu tergantung pada semua paket gnome yang dianggap sebagai pengalaman gnome default.
maxschlepzig
@ Marscel: Anda tidak perlu melakukan apt-get install gnome. @maxshekepzig menyarankan apt-get install untuk beberapa paket yang sudah Anda instal.
Faheem Mitha
@ Faheem kamu benar. apt-get install gnomeakan menarik semua paket lainnya. Karena itu saya tidak perlu mencari gnome-desktoppaket (sementara itu saya pikir itu disebut gnome-core).
Marcel
1

Solusi lain adalah dengan sepenuhnya mematikan autoremove dengan opsi-opsi ini (di /etc/apt/apt.conf orn dalam file di direktori /etc/apt/apt.apt.conf.d/):

APT::Get::AutomaticRemove "0";
APT::Get::HideAutoRemove "1";
pevik
sumber
0

Cukup salin daftar paket yang ingin di-autoremove (gunakan editor teks untuk menghapus spasi spasi tambahan). Kemudian sudo apt install <paste list of packages>perbaiki masalah ini untuk saya pada banyak kesempatan. Ini hanyalah perbedaan dari paket yang diinstal secara manual (apt berpikir Anda harus membutuhkan ini ketika Anda menginstalnya) vs paket yang diinstal secara otomatis (apt instal ini sehingga diasumsikan dapat melakukan apa yang diinginkan dengan mereka). Dengan melakukan hal di atas, Anda tahu bahwa mereka semua terpasang secara manual. FYI - Saya kadang-kadang harus melakukan ini dua kali karena akan terus menyarankan autoremoves lebih lanjut.

Jamie Lindsey
sumber