Saya sering bermain-main dengan instalasi Python saya (2 dan 3) dan menginstal banyak paket, beberapa menggunakan apt-get
, tetapi kebanyakan menggunakan pip
. Saya juga telah apt
memutakhirkan banyak paket yang diinstal dengan pip
versi yang lebih baru.
Pertanyaan saya adalah:
Bagaimana saya bisa membalikkan semua perubahan itu, menghapus semua pip
paket Python yang sudah diinstal dan hanya membiarkan paket default yang sudah diinstal dalam versi repositori default mereka, ditambah yang diinstal oleh apt-get
tetapi hanya sebagai ketergantungan dari perangkat lunak lain, selalu diturunkan ke repositori versi jika perlu.
Saya ingin melakukan ini untuk merapikan lingkungan Python untuk sistem dan modifikasi saya hanya dalam virtualenvs.
Apakah itu mungkin tanpa menginstal ulang sistem? Bagaimana saya mendekatinya?
sumber
Jawaban:
Saya akan mulai dengan mendaftar paket-paket Python yang dikelola oleh
apt-get
(satu-liner berikut ini membutuhkan beberapa detik untuk dijalankan, bersabarlah):Catatan: jika perlu, ganti 2.7 dengan versi python apa pun yang Anda minati.
Selanjutnya, hapus instalasi paket yang Anda instal secara manual. Jika Anda tidak yakin yang mana yang Anda instal, Anda bisa mendapatkan daftar semua paket yang diinstal secara manual menggunakan perintah berikut (lihat pertanyaan ini ):
Kemudian hapus instalasi paket Python yang Anda instal secara manual, misalnya:
Selanjutnya, Anda ingin tahu paket mana yang Anda instal menggunakan pip:
Perintah ini mencantumkan isi direktori pemasangan pip yang diurutkan berdasarkan tanggal modifikasi terakhir, sehingga memudahkan Anda menemukan paket yang Anda instal sendiri. Sebagai contoh, saya menginstal
gcloud
alat Google yang menginstal banyak paket pip yang tidak ingin saya hapus, tetapi melihat daftar itu mudah untuk melihat bahwa mereka semua diinstal pada waktu yang tepat, jadi saya tahu mana yang harus saya gunakan. pergi, dan mana yang bisa saya hapus. Sebelum Anda menghapus paket pip, Anda harus mengambil snapshot dari daftar paket yang diinstal:Kemudian hapus instalasi paket yang Anda inginkan, misalnya:
Terakhir, jangan lupa bahwa beberapa paket pip mungkin telah diinstal di direktori pengguna Anda. Mungkin Anda setuju dengan itu, tetapi jika tidak, Anda dapat mencantumkannya:
Jika Anda ingin menyingkirkan semua paket ini, Anda bisa menghapus direktori ini. Jika tidak, cukup hapus paket-paket individual, misalnya:
Jangan lupa untuk memeriksa versi python lainnya (mis. 3.5).
sumber
mv
daripadarm
pada saya/usr/local/lib/python3.6
karena saya menemukan beberapa menit kemudian bahwa saya memerlukan beberapa hal di sana untuk fungsi sistem yang cukup mendasar.