【ubuntu】courier-imap 等软件包的修复

来源:互联网 发布:我国网络舆论的特点() 编辑:程序博客网 时间:2024/04/29 10:27

这两天刚接触 ubuntu ,是给客户维护 postfix + extmail 邮件系统,当时客户给了一个普通用户,一个系统用户,当然还有 root 的密码,结果自己捣腾了半天,才弄清楚如何登陆 root。

—— 通过 ssh 登陆普通用户,然后用 su 登陆系统用户,最后再用 sudo -i 登陆 root。

 

在维护客户邮件系统的过程中,发现 courier-imap,courier-imap-ssl,courier-pop,courier-pop-ssl 等几个软件包已损坏,须重新安装。

 

1、用常规方法进行恢复,结果失败。
# aptitude reinstall courier-imap courier-imap-ssl courier-pop courier-pop-ssl

出现提示:

invoke-rc.d: initscript courier-imap, action "stop" failed.

invoke-rc.d: initscript courier-imap, action "start" failed.

 

2、看来只能先卸载后重装了,结果还是不行。
—— 删除不了
# aptitude --purge remove courier-imap courier-imap-ssl courier-pop courier-pop-ssl
—— 也安装不了
# aptitude -f install courier-imap courier-imap-ssl courier-pop courier-pop-ssl

 

3、网上查到可以通过修改 /var/lib/dpkg/info 目录下相应的*.postinst,*.prerm文件,在首行前加 exit 1 或 exit 0 ,之后在用 apt-get 的方式,结果还是老样子。

 

4、最后,在网上找到一个通过修改 /var/lib/dpkg/status 文件的方式,顺利实现重装。
—— 备份 /var/lib/dpkg/status 到用户目录
# cp /var/lib/dpkg/status ~/.
—— 编辑 /var/lib/dpkg/status 文件,搜索并删除 courier-imap courier-imap-ssl courier-pop courier-pop-ssl 有关的内容
# vi /var/lib/dpkg/status
—— 然后更新软件包列表,安装软件包【该过程反复执行2次,直到没有错误报出。】
# aptitude upgrade
# aptitude -f install
—— 最后重新安装
# aptitude install courier-imap courier-imap-ssl courier-pop courier-pop-ssl

 

 

终于搞定!

 

原创粉丝点击