Não é possível desinstalar o pacote postgresql devido à falha ao iniciar o serviço?

4

Eu simplesmente não entendo o que está acontecendo.

sudo apt-get remove postgresql

resulta em:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package 'postgresql' is not installed, so not removed
0 upgraded, 0 newly installed, 0 to remove and 35 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Setting up postgresql-9.1 (9.1.10-0ubuntu13.04) ...
 * Starting PostgreSQL 9.1 database server                                                                                                                                                            * The PostgreSQL server failed to start. Please check the log output:
2013-11-05 12:40:58 PST FATAL:  could not create lock file "/var/run/postgresql/.s.PGSQL.5432.lock": Permission denied
                                                                                                                                                                                              [fail]
invoke-rc.d: initscript postgresql, action "start" failed.
dpkg: error processing postgresql-9.1 (--configure):
 subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
 postgresql-9.1
E: Sub-process /usr/bin/dpkg returned an error code (1)

Quero dizer, por que está tentando iniciar o servidor. Certo, eu sou um pouco noob no unix e um noob postgres enorme, então tenha paciência comigo, mas iniciar aleatoriamente o servidor enquanto eu estou tentando desinstalá-lo parece tão aleatório. Apenas não entendi.

Como posso desinstalar completa e completamente o postgresql?

    
por Starkers 05.11.2013 / 21:45

5 respostas

8

Sua primeira instalação foi mantida incerta, isso vai neutralizar:

sudo dpkg --purge postgresql-9.1

Agora você pode reinstalar o pacote:

sudo apt-get -f install
sudo apt-get install postgresql-9.1
    
por Braiam 05.11.2013 / 21:59
1

Consegui limpar o postgres (limpeza do apt-get) limpando 2 outros pacotes primeiro: o pacote contrib e o pacote postgresql (parece ser um pequeno pacote 'virtual'). Pelo menos, é isso que eu acho ...

Então eu poderia limpar o pacote postgresql-9.1 (cerca de 11 MB)

    
por Magnus A 03.04.2014 / 13:11
1

Eu tive um problema semelhante e resolvi-o usando o aptitude para remover completamente a instalação anterior (o apt-get não removeu todas as dependências).

Em seguida, estou provando uma descrição de como fazer isso em um terminal do shell (a GUI está fora do escopo nesta resposta).

Inicie o gerenciador de pacotes interativo:

sudo aptitude

Será aberta uma interface de usuário amigável somente com texto. Você pode usar o teclado para cima e para baixo para navegar e Enter para abrir itens. O mouse também pode ser usado para navegar.

Você verá um menu superior (Ações / Desfazer / ...) de onde você pode comandar o aptitude. Sem um mouse, pressione CTRL + T para abrir o menu. Os menus também mostram os atalhos de teclado que você pode usar.

Se você souber o que remover, vá para Pacotes instalados e navegue até o pacote. Por exemplo, para remover o PostgreSQL, vá para Installed Packages \ main e você verá os pacotes postgresql *. Os pacotes instalados têm a letra i em seu lado esquerdo. Use, por exemplo, a tecla Para baixo para destacar o primeiro pacote e pressione a tecla - para marcá-lo para remoção. Você pode desfazer a ação através do menu Desfazer ou pressionando a tecla +.

Observe que ao pressionar a tecla + em um pacote desinstalado, ele será marcado para instalação.

Quando todos os pacotes que você deseja remover estiverem marcados para remoção, vá para o menu Ações e escolha o comando Instalar / remover pacotes. Ele mostrará uma prévia do que será feito. Pacotes quebrados e pacotes não utilizados também serão automaticamente selecionados. Use as teclas + e - para adicionar / manter ou remover os pacotes. Observe a mudança de cor para refletir a ação (magenta = remove package, green = install package).

Quando estiver satisfeito com a seleção, vá novamente ao menu Ações e escolha o comando Instalar / remover pacotes para executar a ação.

Após a conclusão, pressione Enter para retornar à interface do usuário. Você pode procurar pacotes (veja o menu Search, onde os atalhos de teclado também são exibidos).

Pressione o botão? chave para uma ajuda on-line.

Pressione q para sair.

    
por bitcraft 25.02.2015 / 20:57
0

Provavelmente sua instalação ou desinstalação foi interrompida recentemente, deixando o sistema de pacotes em um estado incerto.

sudo apt-get clean && sudo apt-get autoremove 

sudo apt-get -f install

sudo dpkg --configure -a

isso deve corrigir isso

    
por thom 05.11.2013 / 21:52
0

Eu tive o mesmo problema e acabou sendo um problema de permissões com /var/run/postgresql . Ela era de propriedade de root , mas precisava ser de propriedade de postgres

sudo chown -R postgres:postgres /var/run/postgresql resolveu, seguido por sudo service postgresql restart

Graças ao link

    
por Fush 02.06.2015 / 04:46