您的位置:首页 > 运维架构 > Linux

linux APT 命令

2015-11-17 20:29 573 查看
前言

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

显示目前的配置信息。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: