Linux使用APT命令的介绍

前言

        Linux系统维护中令管理员很头疼的就是软件包之间的依赖性了,往往是你要安装A软件,但是编译的时候告诉你X软件安装之前需要B软件,而当你安装Y软件的时候,又告诉你需要Z库了--好不容易安装好Z库,发现版本还有问题......可能很多朋友都有过这个经历。其实开源社区早就对这个问题尝试进行解决了,不同的发行版推出了各自的工具,比如Yellow Dog的YUM ,Debian的APT(Advanced Packaging Tool)等。而这些软件也被开源软件爱好者们逐渐移植到别的发行版上。Redhat企业版Linux的的升级往往给管理员们带来不少问题:网站下载速度太慢,不够安全,当然了,更多的人是无法更新的--版权问题。经过一段时间的比较,感觉使用APT(Advanced Packaging Tool)维护RHEL(维Red Hat Enterprise Linux )有着特殊的便利性。 有的朋友可能会说,yum 也不错阿!是的,yum在很多时候表现的确不错,不过如果使用的Linux是RHEL的话,很难找到适合yum的资料库,"巧妇难为无米之炊"。

安装APT软件包以后,管理员需要做的第一个工作就是运行:

# apt-get update

从默认服务器下载软件包数据库。

运行:
# apt-get check

  atp来验证本地系统的完整性和一致性,判断本地系统的软件包依赖性是否一致。

  注:如果本地系统一致性严重破坏,则可以使用apt-get -f install 命令在使用apt以前手工修复被破坏的依赖性。

  如果希望定期升级系统,保证及时升级,弥补安全漏洞,只需要apt-get update 和  apt-get upgrade(或apt-get dist-upgrade )

  四、 主要命令

  apt主要有apt-cache apt-cdrom apt-config apt-get等四个命令。用户用的最多的应该就是apt-get命令。这些命令的详细说明参见man手册,这里只对常用方法进行说明。

  4.1 apt-get

  1.apt-get update

  更新本地apt-get的本地数据库,使其与服务器的pkglist文件同步。在升级以前一般都要执行本命令实现与服务器的一致。

  2.apt-get check

  验证本地系统的完整性。

  3.apt-get upgrade

  类似于apt-get,但是将安装所有的基础软件包,并尽力升级一切软件包,并在需要是安装新软件包。

  4.apt-get install package_name

  安装某个软件包及其相关软件包

  如 apt-get install openssh

  不但会安装openssh,同时会升级openssl

  5.apt-get remove package_name

  删除该软件包,同时会删除依赖于它的软件包

  6.apt-get source package_name

  下载软件包的source rpm

  例: apt-get source --compile zhcon

  抓回 source rpm 编译为二进制的rpm。--compile参数功能等同于rpm -ba

  7.apt-get clean

  删除保存在缓存目录下(/var/cache/apt/archives)的被下载的软件包

  8.apt-get upgrade package_name

  升级指定的软件包,并升级其依赖的软件包。

  4.2 apt-cdrom

  在安装系统以后,可以使用apt-cdrom把三张安装光盘加入到apt 的 sources.list 中

  用法如下:


# apt-cdrom add
Using CD-ROM mount point /mnt/cdrom/
Unmounting CD-ROM
Please insert a Disc in the drive and press enter
Mounting CD-ROM
Identifying.. [af0e7c988f7ae057a4a3bccc8008134d-2]
Scanning Disc for index files.. Found 1 package indexes and 0 source indexes.
Please provide a name for this Disc, such as 'MyDistro 6.0 Disk 1':
Gaga V1.1 disc1
This Disc is called:
'Gaga V1.1 disc1'
Reading Indexes... Done
Writing new source list
Source List entries for this Disc are:
rpm cdrom:[Gaga V1.1 disc1]/ RedHat gaga
Repeat this process for the rest of the CDs in your set.


    三次运行apt-cdrom add命令,来加载三张安装光盘。在/etc/apt/sources.list中就应该会包含如下内容:


rpm cdrom:[Gaga V1.1 disc3]/ RedHat gaga
rpm cdrom:[Gaga V1.1 disc2]/ RedHat gaga
rpm cdrom:[Gaga V1.1 disc1]/ RedHat gaga


    这样以后就可以使用apt-get来安装以前未安装的安装光盘上的软件了。

  示例如下,若您的服务器没有和互联网连接,那么修改/etc/apt/sources.list,使其包含下面三行:


rpm cdrom:[Gaga V1.1 disc3]/ RedHat gaga
rpm cdrom:[Gaga V1.1 disc2]/ RedHat gaga
rpm cdrom:[Gaga V1.1 disc1]/ RedHat gaga
# apt-get update
# apt-get install imap


    则根据指示放入第二张光盘即可,而不会出现不知道软件包在哪个光盘上,左寻右找的麻烦。

  4.3 apt-cache


1.apt-cache showpkg
显示软件包的一些常规信息
例: apt-cache showpkg openssh
2.apt-cache stats
显示相关的统计信息示相的
3.apt-cache dump
显示缓存中的每个软件包的简要描述信息
4.apt-cache unmet
显示不符合一致性的依赖关系
5.apt-cache show
显示指定软件包的记录信息。类似于rpm -qi
6.apt-cache search
查找软件包,类似于rpm -qa|grep package_name
例: apt-cache search openssh
7.apt-cache depends
显示软件包的依赖性关系
8.apt-cache pkgnames
列出所有的软件包
例: $ apt-cache pkgnames openss
openssh-askpass
openssl096
openssl-perl
openssl095a
openssl-python
openssh-clients
openssl-devel
openssh-askpass-gnome
openssh
openssl
openssh-server


4.4 apt-config

1.apt-config dump

显示目前的配置信息。

你可能感兴趣的:(Linux使用APT命令的介绍)