¿Cómo eliminar Postgres de mi instalación?

78

Tengo ubuntu 9.10 (kármico), y cuando intenté instalar un nuevo programa, el postgres se instaló como una dependencia de ese programa, no hay ningún problema si la instalación se realiza con éxito, pero hubo un error, y el Postgres fue no está instalado y la aplicación no funciona. Intenté actualizar Postgres y nada, solo el mensaje "hubo un error y tus postgres no se pueden instalar"

Ahora quiero eliminar completamente los Postgres de mi máquina, ¿cómo puedo hacer eso? No quiero matar el proceso en cada arranque. Solo quiero eliminar Postgres.

¿Cuál es la línea de comando?

Gracias gente.

Deepcell
fuente

Respuestas:

144

La forma más sencilla de hacer esto es abrir una terminal y escribir:

sudo apt-get --purge remove postgresql

Esto también le pedirá que elimine ese software que depende de Postgres, que en este caso parece que le gustaría hacer.
No ejecuto personalmente 9.10 o Postgres, por lo que es posible que Postgres se instale en varias partes. En ese caso, un simple:

dpkg -l | grep postgres

Obtendrá la lista de esos paquetes que Postgres instaló. Luego, simplemente use el mismo comando "apt-get --purge remove ...." pero en lugar de solo postgresql, escriba cada nombre de paquete, separado por espacios, como:

sudo apt-get --purge remove postgresql postgresql-doc postgresql-common

Esto depende de la lista de paquetes instalados, por supuesto.

Código amigable
fuente
Muy bien, lo intentaré más tarde, por ahora, ¡muchas gracias!
Deepcell
1
Ejecuto la línea de comando -> sudo apt-get --purge remove postgresql y parece que fue eliminado de mi ubuntu .. Estoy esperando la actualización, siempre en postgres de actualización aparece el error. gracias de cualquier manera.
deepcell
Pensé que era correcto Pero hoy recibí la misma advertencia nuevamente, un sistema de bloqueo, algo que intentaba actualizar los postgres, pero no sucedió, entonces el informe de bloqueo se mostró ... ¿algunas sugerencias? gracias de nuevo.
deepcell
3
Debería serdpkg -l | grep postgres
Mithun Sreedharan
78

Pasos que me funcionaron Ubuntu 8.04.2para eliminarpostgres 8.3

  1. Listar todos los paquetes relacionados con Postgres

    dpkg -l | grep postgres
    
    ii  postgresql                            8.3.17-0ubuntu0.8.04.1           object-relational SQL database (latest versi
    ii  postgresql-8.3                        8.3.9-0ubuntu8.04                object-relational SQL database, version 8.3
    ii  postgresql-client                     8.3.9-0ubuntu8.04                front-end programs for PostgreSQL (latest ve
    ii  postgresql-client-8.3                 8.3.9-0ubuntu8.04                front-end programs for PostgreSQL 8.3
    ii  postgresql-client-common              87ubuntu2                        manager for multiple PostgreSQL client versi
    ii  postgresql-common                     87ubuntu2                        PostgreSQL database-cluster manager
    ii  postgresql-contrib                    8.3.9-0ubuntu8.04                additional facilities for PostgreSQL (latest
    ii  postgresql-contrib-8.3                8.3.9-0ubuntu8.04                additional facilities for PostgreSQL
    
  2. Eliminar todo lo mencionado anteriormente

    sudo apt-get --purge remove postgresql postgresql-8.3  postgresql-client  postgresql-client-8.3 postgresql-client-common postgresql-common  postgresql-contrib postgresql-contrib-8.3
    
  3. Eliminar las siguientes carpetas

    sudo rm -rf /var/lib/postgresql/
    sudo rm -rf /var/log/postgresql/
    sudo rm -rf /etc/postgresql/
    
  4. Eliminar el usuario postgres :

    sudo deluser postgres
    
Mithun Sreedharan
fuente
¡Gracias! pero ya no uso ubuntu. Ahora estoy en opensuse y centos. Gracias de todos modos, si tengo problemas nuevamente con postgres, su respuesta será útil.
deepcell
2
El paso 3 se puede combinar en una línea si se usa bash shellsudo rm -rf {/var/{lib,log},etc}/postgresql/
smac89
1
+1 para el paso 3 aquí. Eso fue clave para mí. Intenté eliminar los paquetes varias veces, pero hubo una falla en / var / lib / postgresql y / etc / postgresql que causó que las operaciones posteriores después de la reinstalación fallaran.
Gil Hamilton
28

Un comando para eliminar completamente postgresql en la terminal es sudo apt-get --purge remove postgresql\*. Tenga en cuenta que este comando eliminará postgresql y todos sus componentes.

usuario3146785
fuente
66
Solía sudo apt-get purge postgresql*el 14.04
Antonios Hadjigeorgalis
¡Esta debería ser la respuesta aceptada!
Philipp Schwarz
La respuesta anterior funcionó para mí - Esto no eliminó todo como --declara purge
Ricky
1

Gracias Code Friendlyy quiero compartir cómo resolví mi problema.

Cuando actualicé postgresqldesde la aplicación Synaptic, se instaló la versión postgresql 10. Así que tenía dos versiones de postgresql (10 y 9.6) instaladas en mi máquina Debian. Postgresql 9.6escuchando en el puerto 5432. Postgresql 10escuchando en el puerto en 5433lugar de 5432.

Cuando ejecuto el comando msfconsoleen un terminal, aunque metasploit se conecta a la base de datos msf en el puerto 5432, aparece el siguiente mensaje de error:


root@kali:~# msfconsole
[-] Failed to connect to the database: could not connect to server: Connection refused
Is the server running on host "localhost" (::1) and accepting TCP/IP connections on port 5432?

Desinstalo la versión 9.6 postgresql de la aplicación Synaptic, pero el problema persiste (postgresql 9.6 ya no aparece en la lista de software instalado de synaptic);

Pero al ejecutar el comando que sigue vemos que la versión postgresql 9.6 no estaba completamente desinstalada:


root@kali:~# dpkg -l | grep postgresql 
ii  postgresql                     10+187             all          object-relational SQL database (supported version)
ii  postgresql-9.6                 **                 all          object-relational SQL database, version 9.6 server
ii  postgresql-10                  10.0-1+b1          amd64        object-relational SQL database, version 10 server
ii  postgresql-client-10           10.0-1+b1          amd64        front-end programs for PostgreSQL 10
ii  postgresql-client-common       187                all          manager for multiple PostgreSQL client versions
ii  postgresql-common              187                all          PostgreSQL database cluster manager
ii  postgresql-contrib             10+187             all          additional facilities for PostgreSQL (supported version)

Con el siguiente comando, postgresql-9.6 se desinstaló por completo:
root@kali:~# sudo apt-get --purge remove postgresql-9.6

Luego edité el archivo /etc/postgresql/10/main/postgresql.conf, cambié el número de puerto a 5432 y el problema está resuelto.


Aparece otro mensaje de error:

Creating initial database schema /usr/local/bin/bundle:22:in ``load': cannot load such file -- /usr/lib/ruby/exe/bundle (LoadError)     from /usr/local/bin/bundle:22:in `<main>

Descubrí que la causa era que dos (2) versiones de Ruby están instaladas en mi máquina Debian, versiones (2.2 y 2.3).

Lo mismo, desinstalo la versión ruby ​​2.2 de la aplicación sináptica y el problema está resuelto, metasploit comienza sin problemas.

Internaut 06
fuente
1

Sigue los comandos:

  • sudo apt-get --purge eliminar postgresql

Lista todos los paquetes relacionados con postgres:

  • dpkg -l | grep postgres

elimine todos los paquetes enumerados anteriormente con el comando:

  • apt-get --purge remove package1 package2 ..

Confirme que todos los archivos y carpetas relacionados con postgres / postgresql se eliminan con el comando:

  • whereis postgres
  • whereis postgresql

Elimine todos los archivos y carpetas enumerados con el comando rm .

Elimine el usuario postgres usando el comando:

  • userdel -f postgres

feliz codificación :)

T.Tijo
fuente