У меня установлен postgres 8.4 на ubuntu 10.04. Я создал кластер на диске, который больше не монтируется. Теперь я хочу удалить postgres, но когда я это сделаю apt-get remove postgresql-8.4
Я получил:
dpkg: error processing postgresql-8.4 (--remove):
Package is in a very bad inconsistent state - you should
reinstall it before attempting a removal.
Errors were encountered while processing:
postgresql-8.4
И когда я делаю apt-get upgrade
говорит:
Selecting previously deselected package postgresql-8.4.
Preparing to replace postgresql-8.4 8.4.9-0ubuntu0.10.04 (using .../postgresql-8.4_8.4.14-0ubuntu10.04_amd64.deb) ...
* Stopping PostgreSQL 8.4 database server
* Error: /mnt/db/postgresql/8.4/main is not accessible or does not exist
...fail!
invoke-rc.d: initscript postgresql-8.4, action "stop" failed.
dpkg: warning: old pre-removal script returned error exit status 1
dpkg - trying script from the new package instead ...
* Stopping PostgreSQL 8.4 database server
* Error: /mnt/db/postgresql/8.4/main is not accessible or does not exist
...fail!
invoke-rc.d: initscript postgresql-8.4, action "stop" failed.
dpkg: error processing /var/cache/apt/archives/postgresql-8.4_8.4.14-0ubuntu10.04_amd64.deb (--unpack):
subprocess new pre-removal script returned error exit status 1
* Starting PostgreSQL 8.4 database server
* Error: /mnt/db/postgresql/8.4/main is not accessible or does not exist
...fail!
invoke-rc.d: initscript postgresql-8.4, action "start" failed.
Похоже, что apt задыхается от несуществующего кластера. Как я могу удалить этот кластер и деинсталлировать postgres?
Понял:
pg_dropcluster --stop 8.4 main
>>> warning: corrupted cluster: data directory does not exist
Игнорируйте это предупреждение. Если вы сделаете это во второй раз, появится сообщение, что кластер пропал.
Чтобы снова вернуть dpkg в нормальное состояние:
apt-get install postgres-8.4
И избавьтесь от этого:
apt-get remove --purge postgres-8.4
apt-get autoremove