高级包装工具
构成
APT由以下的几个主要的命令构成:
apt-get
apt-cache
apt-file
在Debian系统中,APT建构于dpkg之上。
安装源
APT的软件安装来源在Debian安装的时候即可进行初始设置,除了Debian官方的网络安装来源之外,也可以使用Debian的安装光盘,甚至可以从非官方的安装来源中下载非官方的软件。APT同时也可以从一些安装来源中下载源代码软件,并且自行编译、安装。
依赖关系处理
APT会从每一个安装源下载一个软件包的列表。这个列表中有这个安装源所包含的可用软件包的信息。在可能的情况下,APT会安装最新的软件包,被安装的软件包所依赖的其他软件包也会被安装,建议安装的软件包则会在屏幕中显示但是不会被安装。不过在有一些情况下APT由于依赖关系不能安装软件包,例如:这个软件包和系统中的其他软件包冲突,或者这个软件包依赖的软件包在任何安装源中均不存在或没有要求的版本。在这种情况下,APT会返回错误信息并且中止,用户需要自行解决依赖问题。
软件包更新方式
Debian系统的一大特色即为“永不停机”,事实上,APT达到了这一点。在软件被升级的时候,它仍然可以继续服务。APT可以智能地从安装来源下载最新版本的软件并且安装,而无须在安装后重新引导电脑(除了更新Linux内核之外)。所有的配置都可以得到保留,升级软件不再是一个棘手的问题。
发行版升级
APT最使人称道的特点在于可以从一个Debian发行版升级到新的Debian发行版,例如从woody升级到sarge。APT可以升级绝大部分满足依赖关系的软件,但是也可能要删除,或添加新的软件以满足依赖关系。
前端
Synaptic
APT拥有不少的前端程序:
示例
搜索
在终端机里输入:
apt-cache search
这样系统会列出与 名称相匹配的包。
安装
在终端机里输入:
apt-get install
这样系统会自动下载 以及所有的依存包,同时进行包的安装。
移除
在终端机里输入:
apt-get remove [--purge]
这样系统会自动移除 以及任何依此存包的其它包。 --purge指明包应被完全清除。
升级
在终端机里输入:
apt-get update
这样系统会自动由映射点更新包列表,如果想安装最新包,必须先运行一次。每次修改了 /etc/apt/sources.list后,也必须运行一次。
在终端机里输入:
apt-get upgrade [-u]
这样系统会自动将所有已经安装在系统内的包升级为最新版本。如果一个包改变了依存关系,而需要安装一个新的包时,它将不会被升级,而是标识成hold。如果某个包被设置hold标号,就不会被升级。
在终端机里输入:
apt-get dist-upgrade [-u]
和apt-get upgrade类似,dist-upgrade会安装和移除包来满足依存关系,因此具有一定的危险性。
彩蛋
在终端输入apt-get -h会在末尾出现“本APT具有超级牛力(This apt has super cow power)。
在终端输入apt-get moo会在屏幕上显示一头牛。
与apt-get相似的一个叫做aptitude的程序在aptitude -h的末尾加上了“这个aptitude没有超级牛力”
在后面加上moo(即输入aptitude moo),并且分别加上选项“-v”,“-vv”,“-vvv”,“-vvvv”,“-vvvvv”,“-vvvvvv”(即输入aptitude -v moo;输入aptitude -vv moo;等等),则会有如下输出:
而apt系列的另一个名为"apt-build"的软件包也具有相似的功能:
软件编写者特地将Disco(迪斯可)一词改为"Discow",以体现"Cow"(奶牛)之意。
参见
Yum
Debian
Ubuntu
免责声明:以上内容版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。感谢每一位辛勤著写的作者,感谢每一位的分享。
- 有价值
- 一般般
- 没价值