Preciso limpar meu servidor a partir dos pacotes PHP 5.3 (existem muitos) para poder compilar o PHP 5.2. Qual é o método mais fácil / seguro de se livrar de todos?
package-management
php
Corev
fonte
fonte
php*
o tratará como um regex, e sempre o pacote comph
seu nome será removido.Eu não recomendo correr
sudo apt-get purge php*
.Isso foi assustador! Felizmente, não digitei a
-y
opção, porque ela escolheu centenas de pacotes semphp
o nome.Como funciona:
Primeiro , uma lista de pacotes é gerado usando esta série de comandos:
dpkg -l | grep php| awk '{print $2}' |tr "\n" " "
.Dica: Você pode executar esta parte do comando no seu terminal para ver quais pacotes seriam removidos. Você deve obter algo como:
libapache2-mod-php5 php5 php5-cli php5-common php5-json
Finalmente , quando você executa o comando completo, esta lista de pacotes é passada para o sudo apt-get purge, removendo todos os pacotes.
Dica: Se lhe parecer mais seguro, você poderá executá-los com a mesma facilidade e copiar e colar a lista de pacotes para remover da seguinte maneira:
sudo apt-get purge libapache2-mod-php5 php5 php5-cli php5-common php5-json
fonte
aptitude
não estiver instalado ou não puder ser instalado no Ubuntu, que talapt-get cache
pesquisar?Você provavelmente desejará remover todos os pacotes php * do seu sistema. Algo com um curinga deve funcionar
Você pode estar interessado em Como reverter para o PHP 5.2 para onde ir a seguir.
fonte
php*
o tratará como um regex, e sempre o pacote comph
seu nome será removido.Primeiro, você precisa remover o Apache e todas as suas dependências com:
e depois:
Se você tiver algum problema com o phpMyAdmin, tente inseri-lo no terminal:
fonte
No seu caso, você pode procurar por todos os pacotes:
e limpe-os:
fonte
aptitude
não está instalado no meu sistema (16.04)sudo apt-get install aptitude
Além de quaisquer expurgos mencionados nas outras respostas, se você quiser ter certeza absoluta de que tudo foi removido, é provável que queira executar
O que mostra arquivos / pastas com o nome php. Você vai querer verificar cada um desses caminhos de arquivo, ou seja:
E exclua-os conforme apropriado. Porém, tenha cuidado para não excluir nada que seja crítico para outro processo que você precise continuar executando, a menos que queira reinstalá-lo também.
Para remover um diretório ou arquivo, usamos o
rm
comentário com o-rf
sinalizador, portanto, conforme o exemplo acima, digitamos:fonte
O regex que as duas pessoas disseram está incorreto.
Em vez de usar
php.*
ouphp*
deve-se usar^php*
Essa é a resposta certa.
Então você usaria:
sudo apt-get purge "^php*"
Embora eu não recomende o uso desse método, ele é altamente automatizado e recomendo que você use
sudo apt list --installed | grep php
para obter a lista de pacotes e use esses nomes de pacotes que você obteve do comando acima neste comando:sudo apt-get purge PACKAGENAME_ONE PACKAGENAME_TWO
fonte
^php*
ephp*
php.*
também cobrirá os casos em quephp
aparece no início do nome do pacote. Não há razão para usar os dois^php*
ephp.*
também deve ser^php.*
; O apt-get parece saber quephp*
é um glob, não um regex, mas quando você adiciona o^
personagem, ele não pode ser um glob, então você receberá todos os pacotes que começam em "ph".