家里用来装debian的电脑是一台很老的电脑,老到它有一个毛病,就是硬盘经常掉线。以前用windows是这样,现在拿它改装linux,当然,也是这样了。这不,掉了几次,debian坏了。
首先是修复文件系统,用光盘rescue启动,fsck.ext3 /dev/hda4,修复了一下,报了很多错,坏了一堆文件。
进去后又发现dpkg坏了,使得apt-get ,apt-cache等无法用,报 /var/lib/dpkg/status 错。网上找了下这个错,还真是一堆一堆的,有的人说用status-old复制回去,但不幸,这个文件一起坏了。
用recover, repair等找了一下,最终装于找到一个能修得的bash文件:
http://tuxx-home.at/projects/restore-dpkg-status.sh
运行后会在tmp目录生成个新的status文件,换回去。
OK,然后又说 /var/lib/dpkg/available 坏了,找了一下,这回好像没有修复的脚本了,找到一个说这样可以修复的:
dpkg -clear-avail
apt-get update
运行了一下,第一句把available 这个文件清空了,update完,还是0字节,被骗了,靠。
不过发现清空了之后,apt-get是可以用了。但是它也以为我装的很多包是没有装的状态。
只好再慢慢装回去了,反正是覆盖安装,不会多占空间。
比如运行apt-get install openssh-server
它就以为我没有装这个openssh,帮我重新装一下,这样处理了很多个包,后面还要慢慢处理一堆。碰到再说了。
最后查了一下,结合一直以来观察到的现象,感觉这台破电脑硬盘掉线的原因是电源问题,可能当电源带不动的时候硬件就歇菜了。过几天整个新电源试试。