Necesito limpiar mi servidor de los paquetes PHP 5.3 (hay muchos) para poder compilar PHP 5.2. ¿Cuál es el método más fácil / seguro para deshacerse de todos?
package-management
php
corev
fuente
fuente

php*lo tratará como una expresión regular, y siemprephse eliminará el paquete con su nombre.Yo no recomiendo correr
sudo apt-get purge php*.¡Eso fue espantoso! Afortunadamente, no escribí la
-yopción, porque eligió alrededor de cientos de paquetes sinphpsu nombre.Cómo funciona:
En primer lugar , se genera una lista de paquetes usando esta serie de comandos:
dpkg -l | grep php| awk '{print $2}' |tr "\n" " ".Sugerencia: puede ejecutar esta parte del comando en su terminal para ver qué paquetes se eliminarían. Deberías obtener algo como:
libapache2-mod-php5 php5 php5-cli php5-common php5-jsonFinalmente , cuando ejecuta el comando completo, esta lista de paquetes se pasa a sudo apt-get purge, eliminando todos los paquetes.
Sugerencia: Si se siente más seguro para usted, podría ejecutarlos fácilmente por separado y copiar y pegar la lista de paquetes para eliminar de la siguiente manera:
sudo apt-get purge libapache2-mod-php5 php5 php5-cli php5-common php5-jsonfuente
aptitudeno está instalado o no se puede instalar en Ubuntu, qué tal laapt-get cachebúsqueda?Probablemente quiera purgar todos los paquetes php * de su sistema. Algo con un comodín debería funcionar
Tal vez le interese Cómo revertir a PHP 5.2 para saber dónde ir a continuación.
fuente
php*lo tratará como una expresión regular, y siemprephse eliminará el paquete con su nombre.Primero, debe eliminar Apache y todas sus dependencias con:
y entonces:
Si tiene algún problema con phpMyAdmin, intente ingresar esto en la Terminal:
fuente
En su caso, puede buscar todos los paquetes:
y luego purgarlos:
fuente
aptitudeno está instalado en mi sistema (16.04)sudo apt-get install aptitudeAdemás de las purgas mencionadas en las otras respuestas, si desea estar completamente seguro de que todo se elimina, es probable que desee ejecutar
Que le mostrará archivos / carpetas con el nombre php en ellos. Luego, querrá verificar cada una de estas rutas de archivo, es decir:
Y elimínelos según corresponda. Sin embargo, tenga cuidado de no eliminar nada que sea crítico para otro proceso que necesite seguir ejecutando, a menos que desee tener que volver a instalarlo también.
Para eliminar un directorio o archivo, utilizamos el
rmcomentario con la-rfbandera, por lo que, dado el ejemplo anterior, tecleamos:fuente
La expresión regular que dijeron las dos personas es incorrecta.
En lugar de usar
php.*ophp*Uno debería usar^php*Esa es la respuesta correcta.
Entonces usarías:
sudo apt-get purge "^php*"Aunque no recomiendo usar este método porque es altamente automatizado y le recomiendo que lo use
sudo apt list --installed | grep phppara obtener la lista de paquetes y use estos nombres de paquetes que obtuvo del comando anterior en este comando:sudo apt-get purge PACKAGENAME_ONE PACKAGENAME_TWOfuente
^php*yphp*php.*también cubrirá casos dondephpaparece al comienzo del nombre del paquete. No hay razón para usar ambos^php*yphp.*, además, debería serlo^php.*; apt-get parece saber quephp*es un glob, no una expresión regular, pero cuando agrega el^carácter, no puede ser un glob, por lo que obtendrá todos los paquetes que comienzan en "ph".