Jak usunąć Postgres z mojej instalacji?

78

Mam Ubuntu 9.10 (karmic), a kiedy próbowałem zainstalować nowy program, postgres został zainstalowany jako zależność tego programu, nie ma żadnego problemu, jeśli instalacja zakończy się powodzeniem, ale wystąpił błąd, a Postgres był nie został zainstalowany, a aplikacja nie działa. Próbowałem zaktualizować Postgres i nic, tylko komunikat „Wystąpił błąd i nie można zainstalować Postgres

Teraz chcę całkowicie usunąć Postgres z mojego komputera, jak mogę to zrobić, nie chcę zabijać procesu przy każdym uruchomieniu. Chcę tylko usunąć Postgres.

Co to jest linia poleceń?

Dzięki ludzie.

głębokie komórki
źródło

Odpowiedzi:

144

Najprostszym sposobem na to jest otwarcie terminala i wpisanie:

sudo apt-get --purge remove postgresql

Spowoduje to również monit o usunięcie oprogramowania zależnego od Postgres, co w tym przypadku wydaje się, że chcesz to zrobić.
Nie uruchamiam osobiście wersji 9.10 lub Postgres, więc możliwe jest, że Postgres instaluje się w kilku częściach. W takim przypadku prosty:

dpkg -l | grep postgres

Otrzymasz listę tych pakietów, które zainstalował Postgres. Następnie użyj tej samej komendy „apt-get --purge remove ....”, ale zamiast postgresql wpisz nazwę każdego pakietu, oddzielając je spacjami, na przykład:

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

Zależy to oczywiście od listy zainstalowanych pakietów.

Kod przyjazny
źródło
W porządku, spróbuję później, na razie bardzo dziękuję!
deepcell 30.03.11
1
Uruchamiam wiersz poleceń -> sudo apt-get --purge remove postgresql i wygląda na to, że został usunięty z mojego ubuntu. Czekam na aktualizację, zawsze przy aktualizacji postgres pokazuje błąd. w każdym razie dzięki.
deepcell
Myślałem, że to prawda. Ale dzisiaj znów otrzymałem to samo ostrzeżenie, system awarii, próbuję zaktualizować postgres, ale tak się nie stało, to raport o awarii pokazał się ... jakieś sugestie? dzięki jeszcze raz.
deepcell
3
Powinno byćdpkg -l | grep postgres
Mithun Sreedharan,
78

Kroki, które działały dla mnie na Ubuntu 8.04.2usunięciepostgres 8.3

  1. Wyświetl wszystkie pakiety związane z 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. Usuń wszystkie wyżej wymienione

    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. Usuń następujące foldery

    sudo rm -rf /var/lib/postgresql/
    sudo rm -rf /var/log/postgresql/
    sudo rm -rf /etc/postgresql/
    
  4. Usuń użytkownika postgres :

    sudo deluser postgres
    
Mithun Sreedharan
źródło
Dzięki! ale nie używam już Ubuntu. Teraz jestem na opensuse i centos. Dzięki i tak, jeśli znów będę miał problemy z postgres, twoja odpowiedź będzie przydatna.
deepcell
2
Krok 3 można połączyć w jedną linię, jeśli używasz powłoki bashsudo rm -rf {/var/{lib,log},etc}/postgresql/
smac89
1
+1 dla kroku 3 tutaj. To było dla mnie kluczowe. Próbowałem kilkakrotnie usunąć pakiety, ale w / var / lib / postgresql i / etc / postgresql pozostało cruft, który powodował kolejne operacje po niepowodzeniu ponownej instalacji.
Gil Hamilton
28

Jedno polecenie, aby całkowicie usunąć postgresql w terminalu to sudo apt-get --purge remove postgresql\*. Pamiętaj, że to polecenie usunie postgresql i wszystkie jego komponenty.

użytkownik3146785
źródło
6
Użyłem sudo apt-get purge postgresql*14.04
Antonios Hadjigeorgalis
To powinna być zaakceptowana odpowiedź!
Philipp Schwarz
Powyższa odpowiedź zadziałała dla mnie - Nie usunęło to wszystkiego jako
Ricky
1

Dzięki Code Friendlyi chcę podzielić się tym, jak rozwiązałem mój problem.

Kiedy zaktualizowałem postgresqlaplikację Synaptic, zainstalowana jest wersja postgresql 10. Więc miałem dwie wersje postgresql (10 i 9.6) zainstalowane na mojej maszynie debian. Postgresql 9.6nasłuch na porcie 5432. Postgresql 10nasłuchuje na porcie 5433zamiast 5432.

Gdy uruchamiam komendę msfconsolew terminalu, chociaż metasploit łączy się z bazą danych MSF na porcie 5432, pojawia się następujący komunikat o błędzie:


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?

Unistallję wersję Postgresql 9.6 z aplikacji Synaptic, ale problem nadal występuje (postgresql 9.6 już nie pojawia się na liście zainstalowanych programów Synaptic);

Ale po wykonaniu następującego polecenia widzimy, że wersja postgresql 9.6 nie została całkowicie zdeinstalowana:


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)

Za pomocą następującego polecenia całkowicie odinstalowano postgresql-9.6:
root@kali:~# sudo apt-get --purge remove postgresql-9.6

Następnie edytowałem plik /etc/postgresql/10/main/postgresql.conf, zmieniłem numer portu na 5432 i problem został rozwiązany.


Pojawia się kolejny komunikat o błędzie:

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>

Odkryłem, że przyczyną było zainstalowanie dwóch (2) wersji Ruby na mojej maszynie debian, wersje (2.2 i 2.3).

To samo: odinstalowałem wersję Ruby 2.2 z aplikacji synaptycznej i problem został rozwiązany, metasploit uruchamia się bez problemów.

Internauta 06
źródło
1

Postępuj zgodnie z poleceniami:

  • sudo apt-get --purge usuń postgresql

Wyświetl wszystkie pakiety związane z postgres:

  • dpkg -l | grep postgres

usuń wszystkie wyżej wymienione pakiety za pomocą polecenia:

  • apt-get --purge usuń pakiet 1 pakiet 2 ..

Potwierdź, że wszystkie pliki i foldery związane z postgres / postgresql zostały usunięte za pomocą polecenia:

  • whereis postgres
  • whereis postgresql

Usuń wszystkie pliki i foldery wymienione za pomocą polecenia rm .

Usuń postgres użytkownika za pomocą polecenia:

  • userdel -f postgres

miłego kodowania :)

T.Tijo
źródło