linux软件包安装命令——apt-get

apt-get是linux中APT软件包的管理工具。采用shell命令行的方式完成软件的安装、更新、卸载等操作。

1 语法

apt-get (选项) (参数)

选项:

-c —— 指定配置文件

-o —— 直接指定配置参数

参数:

管理指令:对APT软件包的管理操作

软件包:指定要操控的软件包

2 软件库

在使用apt-get 命令之前要引入必须的软件库。软件库也就是软件包的集合,它们存在互联网上的一些公共站点上。当我们需要安装、更新软件时,系统会自动从指定公共站点上搜索相关软件。因此使用apt-get指令的大前提是系统能够连接外网。公共站点的地址在配置文件/etc/apt/source.list中配置的。其格式如下:

deb  [web或ftp地址]  [发行版名字]  [main/contib/non-free]
  • 1

这里写图片描述

3 常用指令

3.1 apt-get update —— 更新软件包信息库

更新软件包信息库。在修改/etc/apt/sources.list或者/etc/apt/preferences之后运行该命令。在Debian中,软件包是通过一个数据库来管理的,通过这个数据库可跟踪系统中已安装、没有安装和现在可安装的软件包信息。apt-get安装软件包时就是依靠这个数据库来解决软件包间的依赖关系,从而可自动安装相关软件。另外需定期运行该命令,从而保持数据库的信息为最新。

3.2 apt-get upgrade —— 更新所有已安装的软件包

软件包升级功能是APT系统这么成功的主要原因。通过该命令,我们就可把软件升级到最新版本。在使用该命令前,最好先运行apt-get update命令,以更新软件包数据库。但该方案不是更新系统最好的方法,一些包会因为包依赖问题而保留(kept back)一些旧的软件包。Debian提供了一个更好的升级方案,就是用dis-upgrade。

3.3 apt-get dist-upgrade —— 更新整个Debian系统

更新整个Debian系统。可从网络或本地更新整个系统。它会重新安排好包的依赖性。如果有些包由于一些原因实在不能更新,我们可通过以下命令查询原因:
# apt-get -o Debug::pkgProblemResolver=yes dist-upgrade
可用apt-show-versions -u可获得可升级软件包的列表。该命令还有一些有用的选项,可用-h选项查看详细帮助,了解更多功能。

3.4 apt-get install packagename —— 安装新软件包

安装一个新软件包。如果软件包需其它软件包支持,apt-get会通过搜索软件包数据库找到这种依赖关系,一起下载相关软件。在一个命令行中可同时安装多个软件包,中间用空格隔开即可。安装的软件包默认会存放在/var/cache/apt/archives目录下,以便以后重新安装。如果已安装的软件包损坏了,你可通过–reinstall选项来重新安装。如:

# apt-get --reinstall install package_name
  • 1

在需安装的软件包名后加一个减号会删除软件包,如:apt-get install package_name-。

3.5 apt-get remove packagename —— 卸载已安装软件包(保留配置文件)

如果想删除没用的软件包,只要使用该命令即可。此命令会保留软件的配置文件。不删除依赖软件包,且保留配置文件。

3.6 apt-get –purge remove package_name ——卸载已安装软件包(不保留配置文件)

如果想把该软件的配置文件也删除,可以用–purge选项。类似地,在删除软件包名后加一个加号会安装软件包,如:apt-get remove package_name+。
不删除依赖软件包,删除配置文件。

3.7 apt-get autoremove packagename —— 卸载已安装软件包(卸载依赖软件)

删除为了满足依赖而安装的,但现在不再需要的软件包(包括已安装包),保留配置文件。

3.8 apt-get autoclean —— 删除已卸载软件的安装包

apt会把已装或已卸的软件都备份在硬盘上,所以如果需要空间的话,可以使用这个命令来清除那些已经卸载的软件包的.deb文件。通过这种方式,可以释放大量的磁盘空间。如果对空间的需求十分迫切,可以使用apt-get clean以释放更多空间。

3.9 apt-get clean —— 删除已卸载和已安装软件的安装包

删除安装的软件的备份。当我们通过apt-get安装软件包时,APT会把软件包下载到本地/var/cache/apt/archives/目录。该命令会删除该文件夹内的除锁住外的所有软件包。

3.10 apt-file search filename

查找包含特定文件的软件包(不一定是已安装的),这些文件的文件名中含有指定的字符串。apt-file是一个独立的软件包。您必须先使用apt-get install来安装它,然後运行apt-file update。如果apt-file search filename输出的内容太多,您可以尝试使用apt-file search filename | grep -w filename(只显示指定字符串作为完整的单词出现在其中的那些文件名)或者类似方法,例如:apt-file search filename | grep /bin/(只显示位于诸如/bin或/usr/bin这些文件夹中的文件,如果您要查找的是某个特定的执行文件的话,这样做是有帮助的)。

3.11 apt-get source package_name

下载软件包的的源码版本。

【参考】
apt-get语法 作者:chinesedragon http://bbs.chinaunix.net/thread-2172866-1-1.html