解决启动时反复崩溃的问题后,fsck
我注意到一些文件被删除了,其中一个是 sqlite pkg 数据库,所以现在当我运行时,例如pkg install somepackage
我收到此错误:
pkg: sqlite: file is encrypted or not a databse
所以我的问题实际上是双重的:
- 我如何
pkg
重新开始跑步 - 有没有办法(日志?)来找出该
fsck
工具删除了哪些文件?
答案1
pkg(ng) 使用的 (sqlite) 数据库已损坏。
您应该能够使用其每日备份来恢复 pkg db 文件:
看一下
/var/backups/
# ls -lrt /var/backups/pkg* -rw-r--r-- 1 root wheel 16462211 May 3 03:01 pkgdb.bak.tbz -rw-r--r-- 1 root wheel 16462853 Apr 16 03:01 pkgdb.bak.tbz.2 -rw-r--r-- 1 root wheel 17824768 May 3 03:02 pkgng.db
移走损坏的数据库文件(您可以稍后删除它):
# mv /var/db/pkg/local.sqlite /var/db/pkg/local.sqlite.corrupted
使用最新的备份来恢复您的 pkg db 文件:
# pkg backup -r /var/backups/pkgng.db