aptitudeでにっちもさっちも行かない状態を脱したときのメモ

数カ月程、aptitudeの以下のようなメッセージに困っていました。

postgresql-8.3 (8.3.7-0lenny1) を設定しています ...
Starting PostgreSQL 8.3 database server: mainError: /var/lib/postgresql/8.3/main is not accessible or does not exist failed!
 failed!
invoke-rc.d: initscript postgresql-8.3, action "start" failed.
dpkg: postgresql-8.3 の処理中にエラーが発生しました (--configure):
 サブプロセス post-installation script はエラー終了ステータス 1 を返しました
以下のパッケージの処理中にエラーが発生しました:
 postgresql-8.3

aptitudeでupgradeなどを行うと、
このようなエラーが毎回つきまといました。
http://comments.gmane.org/gmane.linux.debian.jp.user/19531
ここを見ていろいろやってみたんですが、解決せず。
そしてエラーメッセージが変わりました。

E: パッケージ postgresql-8.3 のファイルの位置を特定できません。おそらくこのパッケージを手動で修正する必要があります。

拡張状態情報を書き込んでいます... 完了

E: パッケージ postgresql-8.3 のファイルの位置を特定できません。おそらくこのパッケージを手動で修正する必要があります。

E: 内部エラー: ダウンロードするパッケージの一覧を作成できませんでした

そして今日、
"E: 内部エラー: ダウンロードするパッケージの一覧を作成できませんでした"
で検索すると、
このページに行き着きました。
http://d.hatena.ne.jp/tanzen/20091025/1256563955

書いてあるようにやってみました。
消せなかったのは "postgresql-8.3" というパッケージだったので、
こんなふうにやってみました。

$ sudo rm /var/lib/dpkg/info/postgresql-8.3.prerm
$ sudo dpkg --remove --force-remove-reinstreq postgresql-8.3
dpkg: warning: overriding problem because --force enabled:

パッケージが非常に矛盾した状態に陥りました。

削除を行う前にこのパッケージを再インストールすべきです。

(データベースを読み込んでいます ... 現在 X 個のファイルとディレクトリがインストールされています。)

postgresql-8.3 を削除しています ...

これで解決してくれたようです。