我在Ubuntu 10.04上安装了postgres 8.4。 我在一个不可再安装的磁盘上创build了一个集群。 现在我想删除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