myserver# portupgrade -Fuv vim-lite
---> Session started at: Wed, 18 Mar 2007 16:08:55 +0800
[missing key: categories] [Updating the portsdb
7000.........8000.........9000.........10000.........11000.........12000.........13000
.........14000.........15000.........16000........... done]
missing key: categories: Cannot read the portsdb!
database file error
第一個想到的問題是 /var/db/pkg/pkgdb.db 是不是掛了,但砍了再重建還是一樣;第二個想到的是 /usr/ports/INDEX*.db,結果還是沒有解決問題。最後沒辦法了,把 UPDATING 翻來看看,眼睛停在這裡許久:
20070102:
AFFECTS: users of sysutils/portupgrade
AUTHOR: sem@FreeBSD.org
If you have a problem with upgrading the tools from version 2.2.1 and less,
remove the package with pkg_delete portupgrade\* command and reinstall it
from scratch. Remove /usr/ports/INDEX*.db and run portsdb -u.
這時才恍然大悟,很久沒看 UPDATING 果然會出狀況,於是依序進行下例 Shell script,我的 package database 才活了過來,簡直是痛哭流涕。
# pkg_delete portupgrade\*
# rm /usr/ports/INDEX*.db
# cd /usr/ports/ports-mgmt/portupgrade
# make install clean
# portsdb -u