手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>网站运营>建站经验>列表

Debian软件包管理详解

来源:互联网 作者:west263.com 时间:2008-04-16
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!

  检测程式错误寻求帮助

  如您使用某个软件包出现问题,在寻求帮助或发送错误报告之前请确认查看过下列站点(`lynx'、`links'和`w3m'同样好用):

  $ lynx http://bugs.debian.org/

  $ lynx http://bugs.debian.org/ # 假如您知道软件包名称

  $ lynx http://bugs.debian.org/ # 假如您知道错误序号

  如有疑问,可阅读帮助文档。配置`CDPATH'如下:

  export CDPATH=.:/usr/local:/usr/share/doc

  然后输入

  $ cd $ pager README.Debian # if this exists

  $ mc

  APT升级错误及解决方法

  从`unstable'/`testing'进行升级时可能出现第 5.3 节,

  `升级Debian系统'中提到的软件包关联问题。多数情况下,是因为升级的软件包所需的新增的关联包没有安装。可使用如下方法解决:

  # apt-get dist-upgrade

  假如这招无效,能够重复下面的方法至到问题解决:

  # apt-get upgrade -f # continue upgrade even after error

  ... 或

  # apt-get dist-upgrade -f # continue dist-upgrade even after error

  一些的确存在问题的升级脚本会引起持续出错。最好的解决方法是检查该软件包的安装脚本`/var/lib/dpkg/info/packagename.<>'然后运行:

  # dpkg --configure -a # 配置任何未完成安装的软件包

  假如脚本报告缺少配置文档,查看一下`/etc'中相关的配置文档。假如配置文档有`.new'扩展名(或其他类似的扩展名),去掉(`mv')他的扩展名。

  从unstable/testing进行升级时可能出现软件包关联问题。可用这个方法智取:

  # apt-get install -f # 重载坏关联

  使用dpkg救助

  假如系统的`dselect'(APT)受损无法完成安装,可使用`dpkg'来恢复:

  # cd /var/cache/apt/archives

  # dpkg -i libc6* libdb2* perl*

  # dpkg -i apt* dpkg* debconf*

  # dpkg -i * # 直至不再出错

  假如软件包丢失,用下述方法从映像源

  (http://www.debian.org/mirror/)下载:

  # mc # use "FTP link" pointing to Debian FTP server

  现在,在HTTP/FTP服务器上,软件包的真正位置不再是传统的`/dist'目录而是新的`/pool'目录。

  然后开始安装:

  # dpkg -i /var/cache/apt/archives/

  对于坏关联,可这样解决:

  # dpkg --ignore-depends=,... -i # dpkg --force-depends -i # dpkg --force-depends --purge # dpkg --force-confmiss -i # Install missing conffile

  恢复软件包选择状态的数据

  假如`/var/lib/dpkg/status'因为某种原因坏掉了,Debian系统将会完全丢失软件包选择状态的数据。赶快到 `/var/lib/dpkg/status-old'或`/var/backups/dpkg.status.*'下找找旧的 `/var/lib/dpkg/status'文档。

  将`/var/backups/'放在其他的分区是个好习惯,因为该目录包含了许多很重要的系统数据。

  假如旧的`/var/lib/dpkg/status'文档也坏了,仍能够从`/usr/share/doc/'下的目录进行恢复这些信息。

  # ls /usr/share/doc |

  grep -v [A-Z] |

  grep -v '^texmf$' |

  grep -v '^debian$' |

  awk '{print " install"}' |

  dpkg --set-selections

  # dselect --expert # reinstall system, de-select as needed

  /var被删除后如何恢复系统

  `/var'目录包含着定时更新的数据如mail,他们很容易遭破坏。将目录放到别的分区可降低风险,假如最坏的事情发生了,能够通过重建`/var'目录来挽救Debian系统。

  从相同或旧版本的最简Debian系统中取得`/var'目录的内容框架,例如var.tar.gz

  (http://people.debian.org/~osamu/pub...膔oot目录,接着

  # cd /

  # mv var var-old # 假如剩有有用内容

  # tar xvzf var.tar.gz # 使用Woody框架文档

  # aptitude # 或用dselect

  上述步骤可使系统恢复工作。

  `恢复软件包选择状态的数据'中描述的技术加速软件包选择数据的恢复。

  ([FIXME]:该过程需要更多的实践来检验)

  为无法启动的系统安装软件包

  使用Debian急救软盘/CD或从多启动Linux系统其他分区启动。

  `启动系统'.

  将无法启动的系统挂载到`/target'并使用`dpkg'的chroot安装模式。

  # dpkg --root /target -i

  接下来就能够着手配置并解决问题。

  如是只是由于`lilo'损坏而造系统无法启动,可使用标准Debian急救盘启动。假设您的root分区位于`/dev/hda12'且想使用runlevel

  3,在启动提示符输入:

  boot: rescue root=/dev/ 3

  这样,您就能够使用软盘中内核启动系统,新系统的功能基本齐全。(可能丢失某些内核特性或模块)

  假如dpkg命令出错该怎么办

  假如`dpkg'损坏就不能安装任何`.deb'文档。下面的操作可帮助您修复这种状况。(在第一行,您可将“links”替换成您喜欢的浏览器。)

  $ links http:///debian/pool/main/d/dpkg/

  ... 下载完好的dpkg__.deb

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!