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

Debian软件包管理详解

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

  还是以上面使用`testing'发布版的用户为例,可使用下列命令管理系统:

  * `apt-get -u upgrade'

  跟踪`testing'发布版的更新情况,对系统上任何软件包进行升级并从`testing'处安装关联软件包。

  * `apt-get -u dist-upgrade'

  跟踪`testing'发布版的更新情况,对系统上任何软件包进行升级并从`testing'处重新分析关联关系并安装关联包。

  * `apt-get -u dselect-upgrade'

  跟踪`testing'发布版的更新情况,对系统上任何在`dselect'中选定了的软件包进行升级。

  * `apt-get -u install '

  从`testing'处安装及其关联包。

  * `apt-get -u install /unstable'

  从`unstable'处安装并从`testing'处安装关联包。

  * `apt-get -u install -t unstable '

  从`unstable'处安装及其关联包。注意须配置`unstable'的Pin-Priority为990。

  * `apt-cache policy '

  检查软件包的状态。

  * `apt-cache show | less'

  查看软件包的有关信息。

  * `apt-get install '

  安装软件包的特定版本<2.2.4-1>。

  * `apt-get -u install '

  安装软件包并删除软件包。

  * `apt-get remove '

  删除软件包,但保留其配置文档。

  * `apt-get remove --purge '

  删除软件包及其配置文档。

  在上面的例子中用`-u'选项的作用是在实际升级之前将任何将要升级的软件包列出,并提示用户确认。下面的操作可将`-u'配置为默认行为:

  $ cat >> /etc/apt/apt.conf << .

  // Always show packages to be upgraded (-u)

  APT::Get::Show-Upgraded "true";

  .

  使用`-s'可进行模拟升级,并不进行真正的升级行为。

  跟踪某Debian发行版

  根据个人的喜好,选择要跟踪的Debian发行版

  `配置APT系统'的样例文档`/etc/apt/preferences':

  track stable: 将testing的Pin-Priority改为50

  track testing: 保持上面的配置不变

  track testing(unstable): 将unstable的Pin-Priority改为500

  track unstable(testing): 将unstable的Pin-Priority改为800

  有关如何选定Pin-Priority的说明:在上表中,从上而下代表了某个版本

  从上个版本刚刚发布之后到下一版进入冻结期之前这段时间经历的各个阶段。

  请注意,跟踪`testing'发行版的Debian有一个负面影响,安全补丁的更新很慢。

  请注意,假如将Debian各版本混合,例如将`testing'混入`stable'或将`unstable'混入`stable',这会造成众多关键软件包不自觉地从`testing'处或`unstable'处获得,结果引起许多麻烦。

  如何对`/etc/apt/preferences'进行配置,将某些关键包锁定在成熟版本,而让其他非关键包跟踪不太成熟的新版本,可参考样例目录

  (http://www.debian.org/doc/manuals/debian-reference/examples/)中的 `preferences.testing'和`preferences.unstable'文档。另一方面,`preferences.stable' 强制任何软件包降级到“stable”。

  将任何软件包降级到`stable'

  要将任何软件包降级到`stable',可按下面的方法编辑`/etc/apt/preferences':

  Package: *

  Pin: release a=stable

  Pin-Priority: 1001

  然后运行“`apt-get upgrade'”,由于Pin-priority >

  1000而引起强制降级。注意,该操作可能会在关联性方面发生一点问题。

  /etc/apt/preferences概述

  `配置APT系统'中展示的`/etc/apt/preferences'样例文档里,首行`Package:

  *'表示该段落指令作用于任何软件包。能够通过指定软件包名称来为某个特定的软件包配置指定的Pin-Priority。

  接下来的一行是`Pin: release a=stable'表示`apt-get'从包含`Archive:

  stable'节的`Release'文档所在的目录获得`Packages.gz'文档。

  最后一行`Pin-Priority: 500'指定Pin-Priority为500。

  假如多个软件包同名,系统通常会安装拥有最高Pin-Priority的软件包。

  在此,Pin-Priority表示:

  * 1001及以上:可降级优先级。

  Pin-Priority处于该范围的软件包允许降级操作。

  * 100到1000:标准优先级。

  不允许降级。几个key Pin-Priority的值:

  * 990:由`--target-release'或apt-get(8)`-t'选项配置的优先级。

  * 500:任何默认软件包文档的优先级。

  * 100:当前安装软件包文档的优先级。

  * 0到99:非自动优先级。(仅用于软件包没有安装或没有别的可用版本时。)

  * 小于0:决不选择该版本。

  按下面的方法配置`/etc/apt/apt.conf'可获得和`--target-release'相同的效果:

  # echo 'APT:efault-Release "testing";' >> /etc/apt/apt.conf

  命令行选项`--target-release'和`/etc/apt/apt.conf'中的配置会顶替`/etc/apt/preferences'的配置。在玩`/etc/apt/preferences'的时候小心两者冲突。

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