本文在署名-非商业性使用-相同方式共享 3.0版权协议下发布, 转载请注明出自aifreedom.com
今天想在 Linux 里装上 PPLive 看 WDC 的比赛, 装了几个依赖的 lib 还是不能用. 嫌麻烦不折腾了, 就顺手把刚装的几个 lib 包删掉. 正删着发现不对劲了, 怎么把 gnome-do, workrave, emacs, AUCTeX 都删了?! 想也没想, 就把终端关了. 这时候才想起来关了终端也没用, apt-get 是 root 的进程. 找到 pid, 果断 kill.
但删除已经进行到一半被退出, 也不知道到底删了多少去了. 用 sudo dpkg --configure -a
恢复更新的进程. 果然满目疮痍, 连 nautilus 都没了.. 只有找 apt 的日志来恢复了.
在我的系统里, apt 的日志存在 /var/log/apt/ 目录里. 因为是刚刚删完的, cat /var/log/apt/history.log
里最后一条就是刚删掉的包, 把它们重新装一遍就好了.
顺便, 我还找到了一个给 apt 的 log 提供按日期, 安装包名字等查找的脚本 “apt-log“, 可以在它的 Download 页面下载.
使用方法很简单, 看一下它给出的例子就很清楚了. 比如, 按照时间来查找:
apt-log 2010
就会显示出你2010年有更新日志的月份.apt-log 2010-11
会显示有更新的天. 依次查找, 可以找到每次更新的时间, 也就可以看到每次更新的日志.
apt-log还有一些参数, 比如:
apt-log --changes 2010-11-10
显示2010-11-10这一天做的所有修改.apt-log --history kde.*
显示所有kde包的修改历史.apt-log --status gnome.*
显示所有gnome包的状态.
更多的example, 见apt-log作者给出的example/doc.
呐
包依赖关系强的发行版,用久了之后包之间的关系都很混乱,装新包很麻烦
哈哈 你也看 不过第一天的直播真是杯具- -||
直接cat /var/log/dpkg*不行么。。。。
时间比较久远日志是压缩的, 而且自己处理文本格式的日志一样需要写脚本
谢谢,有收获,写的不错啊,不错啊
[…] CID 字体的表), ttf-arphic-* 包(一堆中文 TTF 字体). 而且根据 apt-log的结果, 我安装这些包的时间都在2010年9月, […]