Bagaimana cara Undo apt-get remove?

18

Saya tahu ini situasi yang lucu tetapi saya menghapus python dengan semua program terkait dari Ubuntu menggunakan sudo apt-get remove python? Jelas saya dapat menginstal kembali python, tetapi saya akan membutuhkan banyak waktu untuk menginstal semua program yang saya hapus. Mungkin ada solusi?

Terima kasih

IgorDiy
sumber
Harap sertakan upaya penelitian untuk menghapus suara.
Colyn1337
Wow! Pertanyaan 3 tahun, yang membantu memulihkan komputer saya. Senang ini ada di sini dan ditemukan di google. Terima kasih!
Michael Cole

Jawaban:

26

Tidak ada cara mudah tetapi jika Anda melihat /var/log/apt/history.log Anda dapat melihat apa yang telah dihapus. Instal ulang setiap paket yang telah dihapus.

ablackhat
sumber
2
Itu hanya menyelamatkan hidupku!
Sanket Sahu
3
Saya mendaftar dengan serverfault hanya untuk memperbaiki ini, terima kasih.
Phil
20

Saya baru saja melakukan kesalahan ini, Anda dapat menjalankan perintah di bawah ini untuk membatalkan penghapusan paket. Ini akan mengekstrak informasi dari paket yang dihapus dari file log dan menginstalnya kembali

echo '#!/bin/bash' > restore
echo sudo apt-get install `grep Remove /var/log/apt/history.log | tail -1 | sed -e 's|Remove: ||g' -e 's|([^)]*)||g' -e 's|:[^ ]* ||g' -e 's|,||g'` >> restore
chmod +x restore 
./restore
tzafrir
sumber
penyelamat ... seharusnya menyadari apt remove libboost*itu ide yang buruk
Kegigihan
2
Terima kasih, kamu menyelamatkan hidupku !! Pengingat: JANGAN PERNAH MENJALANKAN "sudo apt purge python2.7"
2
Jangan lari sudo apt remove python3haha
ThaJay
Yah, saya menggunakan apt purgejadi rip saya, untungnya itu adalah instalasi baru. Akan menyenangkan untuk mengetahui bahwa kunci (untuk kebanyakan orang) sistem OS, seperti netplan, memerlukan ini. Tentu itu merujuknya pada daftar hapus, sebelum menanyakan apakah Anda yakin, tetapi siapa yang punya waktu untuk melihat dan memastikan kapan lebih mudah hanya untuk memukul ykunci dan returnsistem Anda terlupakan ...
DeeJayh
5

Saya menemukan trik keren dari forum Ubuntu .

Dimungkinkan untuk menjalankan yang berikut ini di terminal:

awk '!/^Start|^Commandl|^End|^Upgrade:|^Error:/ { gsub( /\([^()]*\)/ ,"" );gsub(/ ,/," ");sub(/^Install:/,""); print}' /var/log/apt/history.log

Lihatlah hasilnya, lalu gunakan

sudo apt-get install [packages]

dan ganti [paket] dengan baris terakhir dari paket yang dikembalikan (perhatikan bahwa itu mungkin membungkus).

railgun
sumber
Anda menyelamatkan hari saya. Ini benar-benar sangat membantu saya.
Khamidulla
1

Cari semua paket yang dihapus. Itu disimpan di /var/log/apt/history.log . Anda dapat menulis program shell untuk menginstal setiap paket yang telah dihapus. Tulis di editor teks apa pun GNU Emacs, vi, GNU Nano. Jalankan melalui terminal. Semua program yang dihapus instalasinya akan diinstal ulang sendiri.

pengguna234756
sumber
0

Untuk menambah jawaban ablackhat, Anda dapat menyalin dan menempelkan semuanya setelah perintah hapus terakhir /var/log/apt/history.logmenjadi editor programer baru. Regex ganti :.*?,dengan (string kosong), dan salin semua paket yang dipisahkan oleh ruang. Lalu lari$ sudo apt-get install <paste>

Trent Bing
sumber
0

Memutakhirkan memulihkan sebagian besar, sisanya .. Anda dapat menggunakan teknik yang ditunjukkan di atas. Untuk memutakhirkan cukup ketik "sudo apt-get upgrade"

Thom
sumber
mengapa apt-get upgrademenginstal ulang paket yang sengaja dihapus?
Gerald Schneider
Ini sebenarnya tidak jauh dari jawaban sempurna untuk OP: tunggu tiga tahun dan lakukanapt-get dist-upgrade
quadruplebucky
-1

jika kamu

 apt-get install python

Python akan diinstal ulang dengan semua prasyaratnya yang menurut saya adalah semua program terkait yang Anda bicarakan?

Nick M.
sumber
Saya sudah menginstal Python, tetapi program-program yang bergantung padanya seperti Zim, GImp, dan banyak lainnya tidak dikembalikan ((Bahkan Gedit tidak berfungsi
IgorDiy
-1. Tidak menyelesaikan pertanyaan OP karena semua yang membutuhkan Python juga dihapus.
Magellan