Saya perlu membersihkan server saya dari paket PHP 5.3 (ada banyak dari mereka) agar dapat mengkompilasi PHP 5.2. Apa metode termudah / teraman untuk menyingkirkan semuanya?
package-management
php
corev
sumber
sumber
php*
akan membuatnya diperlakukan sebagai regex, dan paket denganph
namanya akan dihapus.Saya tidak merekomendasikan berlari
sudo apt-get purge php*
.Itu menakutkan! Untungnya, saya tidak mengetik
-y
opsi, karena memilih sekitar ratusan paket tanpaphp
nama mereka.Bagaimana itu bekerja:
Pertama , daftar paket yang dihasilkan menggunakan seri ini perintah:
dpkg -l | grep php| awk '{print $2}' |tr "\n" " "
.Petunjuk: Anda dapat menjalankan bagian perintah ini di terminal Anda untuk melihat paket apa yang akan dihapus. Anda harus mendapatkan sesuatu seperti:
libapache2-mod-php5 php5 php5-cli php5-common php5-json
Akhirnya , ketika Anda menjalankan perintah penuh, daftar paket ini akan diteruskan ke sudo apt-get purge, menghapus semua paket.
Petunjuk: Jika terasa lebih aman bagi Anda, Anda dapat dengan mudah menjalankannya secara terpisah, dan menyalin + menempel daftar paket yang ingin dihapus seperti:
sudo apt-get purge libapache2-mod-php5 php5 php5-cli php5-common php5-json
sumber
aptitude
tidak diinstal atau tidak dapat diinstal pada Ubuntu, bagaimana denganapt-get cache
pencarian?Anda mungkin ingin membersihkan semua paket php * dari sistem Anda. Sesuatu dengan wildcard seharusnya berfungsi
Anda mungkin tertarik dengan Cara mengembalikan ke PHP 5.2 untuk tujuan selanjutnya.
sumber
php*
akan membuatnya diperlakukan sebagai regex, dan paket denganph
namanya akan dihapus.Pertama, Anda harus menghapus Apache dan semua dependensinya dengan:
lalu:
Jika Anda memiliki masalah dengan phpMyAdmin, coba masukkan ini ke Terminal:
sumber
Dalam kasus Anda, Anda dapat mencari semua paket:
dan kemudian bersihkan mereka:
sumber
aptitude
tidak diinstal pada sistem saya (16.04)sudo apt-get install aptitude
Selain pembersihan yang disebutkan dalam jawaban lain, jika Anda ingin sepenuhnya yakin semuanya dihapus, Anda cenderung ingin menjalankan
Yang akan menampilkan file / folder dengan nama php di dalamnya. Anda kemudian akan ingin memeriksa setiap jalur file ini, yaitu:
Dan hapus sesuai keinginan. Berhati-hatilah untuk tidak menghapus apa pun yang penting untuk proses lain yang perlu Anda jalankan, kecuali Anda ingin menginstalnya kembali.
Untuk menghapus direktori, atau file, kami menggunakan
rm
komentar dengan-rf
flag, jadi dengan memberikan contoh di atas, kami akan mengetik:sumber
Regex yang dikatakan kedua orang itu salah.
Alih-alih menggunakan
php.*
atauphp*
Seseorang harus menggunakan^php*
Itulah jawaban yang tepat.
Jadi, Anda akan menggunakan:
sudo apt-get purge "^php*"
Meskipun saya tidak merekomendasikan menggunakan metode ini karena ini sangat otomatis dan saya mendorong Anda untuk menggunakan
sudo apt list --installed | grep php
untuk mendapatkan daftar paket dan menggunakan nama paket ini yang Anda dapatkan dari perintah di atas dalam perintah ini:sudo apt-get purge PACKAGENAME_ONE PACKAGENAME_TWO
sumber
^php*
danphp*
php.*
juga akan mencakup kasus-kasus di manaphp
muncul di awal nama paket. Tidak ada alasan untuk menggunakan keduanya^php*
danphp.*
juga, seharusnya^php.*
; apt-get sepertinya tahu ituphp*
adalah bola, bukan sebuah regex, tetapi ketika Anda menambahkan^
karakter itu tidak mungkin menjadi bola, jadi Anda akan mendapatkan setiap paket yang dimulai dengan "ph."