vnstat 启动失败, 其使用的 sqlite3 数据库报错 database disk image is malformed, 记录下简单的修复.
用 sqlite3 加载数据库
sqlite3 /var/db/vnstat/vnstat.db
先做完整性测试:
pragma integrity_check;
显示错误为 row 45 missing from index sqlite_autoindex_fiveminute_1, 也就是索引 sqlite_autoindex_fiveminute_1 有问题.
修复该索引
reindex sqlite_autoindex_fiveminute_1;
再做完整性测试已经不报错了.