apt-get 指令操作 (转)

apt-get 指令操作
我常跟朋友戏称" 要学 Debian 只要学会 apt-get 这个指令就行了 ",当然这是玩笑话,也绝对不可能如此单纯,不过我会这么说是因为等到您的 Debian 系统完全安装完毕之后,您就会像我一样退化到每天就只会下 『 apt-get update;apt-get upgrade 』 指令了。

在 Debian 里面,关于软件的安装、移除、升级完全靠 dpkg 这个指令来完成 ( 关于 dpkg 更详细的介绍,请参考 dpkg 一节 ),dpkg 指令功能很强大,但却相对的复杂了许多,也造成使用上的不便,因此目前衍生出许多 dpkg 的前端 ( front end ) 软件管理程序 ( 请参考 众多的 dpkg 前端软件管理程序 一节 ) ,帮助我们简化软件管理的步骤,而 『 apt-get 』 是我最为熟悉也是最受 Debian 使用者喜爱的一套指令式程序。现在也经有人将『 apt-get 』 禁用词语到其它的 GNU/Linux Distribution ( 注一 )。

或许您被上一节 " 区别版本的『 sources.list 』及两个基本的软件安装指令:tasksel、apt-get" 的『 sources.list 』搞的头晕脑胀,不过笔者相信等您了解本节介绍的 『 apt-get 』 指令之后,必然有『 豁然开朗 』、『 茅塞顿开 』 之感。

『 apt-get 』指令操作非常简单,底下列出比较常用的选项及参数,要得到最完整的信息请 『 man apt-get 』。

注意!!执行 『 apt-get 』 指令时需以 『 root 』 身份执行 !


apt-get update

软件数据库同步:
这是『 apt-get 』指令的起点,在下达任何 『 apt-get 』 相关软件安装或升级指令前,一定得先下『 apt-get update 』指令,这会让系统依照 『 sources.list 』 设定文件内纪录的软件来源服务器位置,进行软件数据库比对动作,如此才能知道目前系统上安装的软件跟服务器上可抓取的软件版本是否一致,如不一致表示有更新版的软件可以升级或安装,接下来的 『 apt-get install 、 apt-get upgrade 、 apt-get dist-upgrade..』才能完成后续动作。
apt-get install

软件安装:
安装软件最怕的就是软件间的相依、相斥关系,在 『 前言 』 里头笔者也提到过去使用的其它 GNU/Linux Distribution 的恼人经验,但是在 Debian 里头安装软件是一件非常愉悦的事情,只要 『 apt-get install 』一行指令简简单单轻轻松松即可完成,所有相依、相斥 Debian 都会帮我们 take care ,您要做的就是 『 Say Yes 』。

apt-get remove

软件移除:
与 install 一样,Debian 一样会帮您处理移除软件时所发生的相依问题。

apt-get upgrade

软件升级:
平常我们很难顾虑到系统上所安装的数十甚至数百套软件的版本是否有新版出现,现在只要下这个指令 Debian 便会自动找出所有有新版的软件套件并逐一升级。

范例:
底下是笔者执行完 『 apt-get upgrade 』 系统报告搜查情况,并询问是否同意升级的画面:
apt-get dist-upgrade

系统升级:
当转移整个系统时,如 『 stable 』 转换到 『 testing 』,或是系统运行好一段时间都应该下这个指令,它会聪明的处理到很多软件相依、相斥的问题。

dist-upgrade


apt-get source

如果您想取得某个软件套件 ( packages ) 的原始码可以透过这个指令达成。

apt-get clean
我们透过 apt-get 安装的任何软件都会先下载到 『 /var/cache/apt/archives/ 』及 『 /var/cache/apt/archive/partial/ 』 目录底下,一般预设 apt-get 在安装完软件后是不会把上述位置底下的 『 .deb 』 杀除,一段时间后您如果觉得系统空间不足,您可以下 『 apt-get clean 』让系统自动清理这个目录。

apt-get autoclean
类似 『 apt-get clean 』,下此参数时 apt-get 在安装完毕后会自动删除该软件的 『 .deb 』 檔。

apt-get check
apt-get 不是万能,有时候也是会出现问题,如附图 broken,遇到有问题的时候您可以下 『 apt-get check 』来诊断问题所在。

apt-get remove --purge `deborphan` ( 清除系统多余的 library )

当您使用 debian 一段时间后,如果您经常安装、移除软件一定会出现残余 library 在系统的状况,原因是当您安装软件时, debian 依照软件相依特性安装了额外的 library,但是当您移除该软件时,当初连带安装的 library 不见得会一起被移除,久而久之系统就会出现残余的 library,这个时候您便可以下这行指令,为您扫除系统中无用的 library ,确保系统的清洁性。

其它常用辅助选项:

-f ( --fix-broken )
假如无法安装,请试着下"-f"参数。

-d ( --download-only )
只下载 『 .deb 』 而不安装,下载的档案会存放在 『 /var/cache/apt/archives/ 』底下。

例子:『 apt-get -d install aterm 』。

--purge
这个参数会帮助您移除跟您想要移除软件的相关软件。

例子:『 apt-get --purge remove aterm 』。