Debian で apt-cache 使ったら Abort する

Debian を lenny から squeeze にアップグレード後, apt-cache でパッケージを探すたびに Abort するようになった. apt-get clean でローカルのリポジトリをクリアすれば解決した.

apt-cache を実行すると,

~% apt-cache search k3b
k3b-data - A sophisticated KDE CD burning application - data files
libk3b-dev - The KDE cd burning application library - development files
libk3b3-extracodecs - The KDE cd burning application library - extra decoders
libk3b3 - The KDE cd burning application library - runtime files
juk - music jukebox for KDE 4
apt-cache: malloc.c:3096: sYSMALLOc: Assertion `(old_top == (((mbinptr) (((char *) &((av)->bins[((1) - 1) * 2])) - __builtin_offsetof (struct malloc_chunk, fd)))) && old_size == 0) || ((unsigned long) (old_size) >= (unsigned long)((((__builtin_offsetof (struct malloc_chunk, fd_nextsize))+((2 * (sizeof(size_t))) - 1)) & ~((2 * (sizeof(size_t))) - 1))) && ((old_top)->size & 0x1) && ((unsigned long)old_end & pagemask) == 0)' failed.
Abort

こんな感じで落ちる.メモリ関係のトラブルらしい.

対策

~% sudo apt-get clean

を実行して,ローカルのリポジトリをクリアする.で,

harry:~% sudo apt-get update

を実行してパッケージインデクスファイルの同期を取る.

これで,

harry:~% apt-cache search k3b
k3b-i18n - Internationalized (i18n) files for k3b
k3b-data - A sophisticated KDE CD burning application - data files
k3b - A sophisticated KDE CD burning application
libk3b-dev - The KDE cd burning application library - development files
libk3b3-extracodecs - The KDE cd burning application library - extra decoders
libk3b3 - The KDE cd burning application library - runtime files
juk - music jukebox for KDE 4
quodlibet-plugins - various contributed plugins for Quod Libet

無事 abort しなくなった.

ちなみに, k3bKDE 向け CD/DVD バーニングツール.非常に使いやすい.