apt-get和apt-cache是Ubuntu Linux 中的命令行下的包管理 工具。 apt-get的GUI版本是Synaptic包管理器。本篇中我们会展示apt-get和apt-cache命令的15个不同例子。
示例:1 列出所有可用包 1 2 3 4 5 6 7 8 9 10 linuxtechi@localhost:~$ apt-cache pkgnames account-plugin -yahoojp ceph-fuse dvd+rw-tools e3 gnome-commander -data grub-gfxpayload -lists gweled... ... ... ... ... ... ... ... ... ... ... ... ...
示例:2 用关键字搜索包 这个命令在你不确定包名时很有用,只要在apt-cache(LCTT 译注:这里原文是apt-get,应为笔误)后面输入与包相关的关键字即可。
1 2 3 4 5 6 7 8 9 10 linuxtechi@localhost:~$ apt-cache search "web server" apache2 - Apache HTTP Server apache2-bin - Apache HTTP Server (binary files and modules) apache2-data - Apache HTTP Server (common files) apache2-dbg - Apache debugging symbols apache2-dev - Apache HTTP Server (development headers) apache2-doc - Apache HTTP Server (on -site documentation) apache2-utils - Apache HTTP Server (utility programs for web servers)... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .
注意 : 如果你安装了“apt-file ”包,我们就可以像下面那样用配置文件搜索包。
1 2 3 4 5 6 7 linuxtechi@localhost:~$ apt-file search nagios.cfg ganglia-nagios-bridge: /usr/ share/doc/g anglia-nagios-bridge/nagios.cfg nagios3-common: /etc/ nagios3/nagios.cfg nagios3-common: /usr/ share/doc/ nagios3-common/examples/ nagios.cfg.gz pnp4nagios-bin: /etc/ pnp4nagios/nagios.cfg pnp4nagios-bin: /usr/ share/doc/ pnp4nagios/examples/ nagios.cfg
示例:3 显示特定包的基本信息 1 2 3 4 5 6 7 8 9 10 11 12 linuxtechi@localhost:~$ apt-cache show postfix Package: postfix Priority: optional Section: mail Installed-Size : 3524 Maintainer: LaMont Jones <lamont@debian.org> Architecture: amd64 Version: 2.11 .1 -1 Replaces: mail-transport -agent Provides: default-mta , mail-transport -agent ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
示例:4 列出包的依赖 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 linuxtechi@localhost:~$ apt-cache depends postfix postfix Depends: libc6 Depends: libdb5.3 Depends: libsasl2-2 Depends: libsqlite3-0 Depends: libssl1.0 .0 |Depends: debconf Depends: <debconf-2.0 > cdebconf debconf Depends: netbase Depends: adduser Depends: dpkg... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
示例:5 使用apt-cache显示缓存统计 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 linuxtechi @localhost:~$ apt-cache stats Total package names: 60877 (1 ,218 k)Total package structures: 102824 (5 ,758 k) Normal packages: 71285 Pure virtual packages: 1102 Single virtual packages: 9151 Mixed virtual packages: 1827 Missing : 19459 Total distinct versions: 74913 (5 ,394 k)Total distinct descriptions: 93792 (2 ,251 k)Total dependencies: 573443 (16 .1 M)Total ver/file relations: 78007 (1 ,872 k)Total Desc/File relations: 93792 (2 ,251 k)Total Provides mappings: 16583 (332 k)Total globbed strings: 171 (2 ,263 )Total dependency version space: 2 ,665 kTotal slack space: 37 .3 kTotal space accounted for: 29 .5 M
示例:6 使用 “apt-get update” 更新仓库 使用命令“apt-get update”, 我们可以重新从源仓库中同步文件索引。包的索引从“/etc/apt/sources.list”中检索。
1 2 3 4 5 6 7 8 9 10 11 12 linuxtechi@localhost:~$ sudo apt-get update Ign http: Hit http: Hit http: Hit http: Hit http: Hit http: Ign http: Ign http: Ign http: ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .
示例:7 使用apt-get安装包 1 2 linuxtechi@localhost :~ $ sudo apt-get install icinga
上面的命令会安装叫“icinga”的包。
示例:8 升级所有已安装的包 1 2 linuxtechi@localhost :~ $ sudo apt-get upgrade
示例:9 更新特定的包 在apt-get命令中的“install”选项后面接上“-only-upgrade”用来更新一个特定的包,如下所示:
1 2 linuxtechi@localhost :~ $ sudo apt-get install filezilla --only-upgrade
示例:10 使用apt-get卸载包 1 2 linuxtechi@localhost:~$ sudo apt-get remove skype
上面的命令只会删除skype包,如果你想要删除它的配置文件,在apt-get命令中使用“purge”选项。如下所示:
1 2 linuxtechi@localhost :~ $ sudo apt-get purge skype
我们可以结合使用上面的两个命令:
1 2 linuxtechi@localhost:~$ sudo apt-get remove --purge skype
示例:11 在当前的目录中下载包 1 2 3 4 linuxtechi @localhost:~$ sudo apt-get download icingaGet :1 http://in.archive.ubuntu.com/ubuntu/ utoindex_img/universe icinga amd64 1 .11 .6 -1 build1 [1,474 B] Fetched 1 ,474 B in 1 s (1 ,363 B/s)
上面的目录会把icinga包下载到你的当前工作目录。
示例:12 清理本地包占用的磁盘空间 1 2 linuxtechi@localhost :~ $ sudo apt-get clean
上面的命令会清空apt-get所下载的包占用的磁盘空间。
我们也可以使用“autoclean ”选项来代替“clean ”,两者之间主要的区别是autoclean清理不再使用且没用的下载。
1 2 3 4 5 linuxtechi@localhost:~$ sudo apt-get autocleanReading package lists... Done Building dependency treeReading state information... Done
示例:13 使用“autoremove”删除包 当在apt-get命令中使用“autoremove”时,它会删除为了满足依赖而安装且现在没用的包。
1 2 linuxtechi@localhost :~ $ sudo apt-get autoremove icinga
示例:14 显示包的更新日志 1 2 3 4 linuxtechi @localhost:~$ sudo apt-get changelog apache2Get :1 Changelog for apache2 (http://changelogs.ubuntu.com/changelogs/pool/main/a/apache2/apache2_2.4 .10 -1 ubuntu1/changelog) [195 kB] Fetched 195 kB in 3 s (60 .9 kB/s)
上面的命令会下载apache2的更新日志,并在你屏幕上分页显示。
示例:15 使用 “check” 选项显示损坏的依赖关系 1 2 3 4 5 linuxtechi@localhost:~$ sudo apt-get check Reading package lists... Done Building dependency tree Reading state information... Done
via: http://www.linuxtechi.com/ubuntu-apt-get-apt-cache-commands-examples/
作者:Pradeep Kumar 译者:geekpi 校对:wxy
本文由 LCTT 原创翻译,Linux中国 荣誉推出