Debian版软件维护工具
apt-get [-bdfquVy] [-a arch] [-c=conf] [--allow-unauthenticated] [--assume-no] [--auto-remove] [--install-suggests] [--no-download] [--no-install-recommends] [--no-remove] [--no-upgrade] [--only-upgrade] [--print-uris] [--purge] [--reinstall] {update | upgrade | dist-upgrade | install pkgs | remove pkgs | purge pkgs | check | source pkgs | download | clean | autoclean | autoremove}
apt-get [-h|--help] [-v|--version]
apt-get是一个命令行工具,用于维护Debian版的软件包,如安装或删除软件包,更新或升级系统等。
除非指定了“-h”或“-v”等选项,运行的apt-get命令中必须选用install、update、upgrade、remove等功能选项之一。
update 更新。用于重新同步软件源的软件包索引文件。从/etc/apt/sources.list文件指定的软件源中,能够获取可用软件包的索引。例如,当使用deb格式的软件包档案文件时,apt-get会检索Packages.gz文件,从中获取可用的最新软件包或可更新的软件包信息。因此,在利用upgrade或dist-upgrade功能选项升级整个系统之前,应首先利用update功能选项,更新可用的软件包索引。
upgrade 升级。基于当前已安装的所有软件包,从/etc/apt/sources.list文件指定的软件源中下载、安装最新版本的软件包,但不会删除系统中已安装的软件包,也不会安装系统中尚未安装的软件包。在执行系统升级之前,首先必须执行update,更新软件包索引,以便apt-get知道是否存在可用的新版软件包。
dist-upgrade 除了执行upgrade功能之外,dist-upgrade还能够灵活地处理由于新版软件包导致的依赖关系的变化。因此,选用dist-upgrade时可能会删除某些软件包。apt-get具有一个“聪明的”冲突解决机制,如果需要,它会尝试优先升级最重要的软件包。/etc/apt/sources.list配置文件包含一系列软件源定义,使apt-get能够获取期望的软件包。
install pkgs 安装。用于安装或升级指定的最新版软件包。在指定软件包的名字时,只需给出其缩写形式,不必完整写出,即可下载、安装最新版的指定软件包。例如,只需指定libc6即可选择软件包libc6_1.9.6-2.deb。同时,apt-get还会下载、安装指定软件包依赖的所有底层支持软件包。/etc/apt/sources.list文件用于指定期望的软件源。如果软件包名字后面附有一个连字符“-”后缀(中间没有空格),且相应的软件包已经安装,apt-get将会删除指定的软件包。类似地,如果软件包名字后面附有一个加号“+”后缀,表示需要安装指定的软件包。这一特性主要用于修改apt-get的冲突解决机制。若想安装特定版本的软件包,可以在软件包名字后面附加一个“=version”后缀,从而安装选定版本的软件包。同样,若想从一个特定的发行中选择软件包,可在软件包名字后面附加一个“/distribution”或“/archive”后缀,如stable、testing或unstable等。注意,这种版本选择机制有可能会引起软件降级,故使用时必须小心。如果不存在恰好匹配的软件包,则假定指定的软件包名是一个检索模式,apt-get将会安装匹配指定名字模式的任何软件包。可以将软件包名看作一个表达式,如果没有软件包能够直接匹配给定的表达式,且表达式中含有句点“.”、问号“?”或星号“*”等特殊字符,则假定这是一个POSIX正则表达式,因而可用其检索软件源中的所有软件包,然后安装(或删除)与之匹配的任何软件包。注意,所谓匹配指的是子串意义上的匹配,因此,“lo.*”能够匹配“how-lo”和“lowest”。此外,除了上述3个特殊字符之外,还可以在正则表达式中使用上箭头“^”或美元符号“$”等。
remove pkgs 删除。从系统中删除指定的软件包,同时删除依赖于指定软件包的其他软件包。注意,已删除软件包的配置文件(如果存在)仍然会保留在系统中。此外,如果指定的软件包名字后面附有一个加号“+”(中间没有空格),意味着安装而不是删除指定的软件包。
purge pkgs 清除。从系统中删除指定的软件包及其配置文件,同时删除依赖于指定软件包的其他软件包。其功能类似于remove功能选项,但删除更彻底。
source pkgs 用于下载最新版的源代码软件包,存放在当前目录。如果想要下载特定版本的源代码软件包,可以采用“pkgname=version”的形式指定软件包的名字与版本号。如果指定了“--compile”选项,表示下载后还要根据“--host-architecture”选项定义的机型来编译源代码软件包。如果指定了“--download-only”选项,意味着无须解压源代码软件包。
check 诊断。用于更新软件包缓冲区,检测受损的软件包依赖关系。
download 下载。下载指定的二进制软件包,存储在当前目录中。
clean 清除。清除本地缓存目录中的软件包文件等。除了/var/cache/apt/archives和/var/cache/apt/archives/partial目录中的封锁文件,apt-get将会清除任何软件包文件。注意,用户应随时运行“apt-get clean”命令,以释放磁盘空间。
autoclean 类似于clean,用于清除缓存在本地目录中的软件包文件等。其差别在于autoclean仅删除不再继续下载且基本上不再继续使用的软件包文件。这将防止缓存空间由于长期没有清空而导致的增长失控。
autoremove 自动删除。用于删除为满足依赖关系而自动安装的且当前不再需要的软件包。
-a, --host-architecture 与“apt-get source --compile”命令一起使用时,用于选择适用指定机型的源代码软件包。如果没有特别指定,选择的软件包与当前系统的机型相同。
-b, --compile, --build 下载后编译源代码软件包。
-c conf, --config-file=conf 指定apt-get命令使用的配置文件,其中含有软件源的地址或路径(如http、ftp、cdrom或本地文件)。apt-get程序首先会读取默认的配置文件,然后再读取这个选项指定的配置文件。
-d, --download-only 仅仅下载软件包文件,既不解压,也不安装软件包。
-f, --fix-broken 修复。尝试校正系统中软件包依赖性失控的问题。
-q, --quiet 安静模式。生成适合于记录日志的输出信息,禁止显示安装进度指示信息。“-q”选项将会进一步减少输出信息。
-u, --show-upgraded 显示已升级以及即将升级的所有软件包列表。
-V, --verbose-versions 显示已升级与已安装软件包的完整版本信息。
-y, --yes, --assume-yes 对需要用户确认的任何请求,总是使用yes回答。这意味着采用非交互式方式自动运行apt-get命令。如果出现了意外情形,如试图安装未认证的软件包或删除最基本的软件包时,apt-get将会终止运行。
--allow-unauthenticated 无须考虑软件包是否已经认证。即使软件包未认证,也不输出任何提示信息。
--assume-no 对需要用户确认的任何请求,总是使用no回答。
--auto-remove 如果功能选项是install或remove,指定这个选项相当于选用了autoremove功能选项,即删除现已不再需要的依赖软件包。
--install-suggests 安装为满足依赖关系而建议安装的软件包。
--no-download 禁止下载软件包。最好与“-m”选项一同使用,强制APT仅仅使用已下载的、缓存在本地系统中的“.deb”格式的软件包。
--no-install-recommends 禁止安装为满足依赖关系而建议安装的软件包。
--no-remove 如果出现删除任何软件包的情况,立即终止运行而不加任何提示。
--no-upgrade 禁止升级软件包。与install功能选项一起使用时,如果指定的软件包已经安装,这个选项将会防止apt-get升级命令行中指定的相应软件包。
--only-upgrade 禁止安装新的软件包。与install功能选项一起使用时,如果指定的软件包尚未安装,这个选项将会防止apt-get升级命令行中指定的相应软件包。
--print-uris 显示软件包文件的URI地址(包括文件的名字和大小等),而不是下载、安装相应的软件包。这个选项可与update或source等功能选项一起使用。
--purge 删除任何软件包时使用功能选项purge替代remove,以彻底清除软件包。也就是说,“apt-get remove --purge”命令等价于“apt-get purge”命令。注意,需要清除的软件包后面将会出现一个星号“*”标记。
--reinstall 基于当前已经安装的软件包,重新安装最新版的软件包。
1. 安装MySQL数据库,包括服务器与客户端。
$ sudo apt-get install mysql-server
2. 从系统中删除不再继续使用的软件包bind9。
$ sudo apt-get remove bind9
索引:A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z