【Linux】一步一步学Linux——apt-get命令(278)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/dengjin20104042056/article/details/101618503

00. 目录

01. 命令概述

apt-get命令是Debian Linux发行版中的APT软件包管理工具。所有基于Debian的发行都使用这个包管理系统。deb包可以把一个应用的文件包在一起,大体就如同Windows上的安装文件。

02. 命令格式

用法: apt-get [选项] 命令
    apt-get [选项] install|remove 软件包1 [软件包2 ...]
    apt-get [选项] source 软件包1 [软件包2 ...]

03. 常用选项


常用命令:
  update - 取回更新的软件包列表信息
  upgrade - 进行一次升级
  install - 安装新的软件包(注:软件包名称是 libc6 而非 libc6.deb)
  remove - 卸载软件包
  purge - 卸载并清除软件包的配置
  autoremove - 卸载所有自动安装且不再使用的软件包
  dist-upgrade - 发布版升级,见 apt-get(8)
  dselect-upgrade - 根据 dselect 的选择来进行升级
  build-dep - 为源码包配置所需的编译依赖关系
  clean - 删除所有已下载的包文件
  autoclean - 删除已下载的旧包文件
  check - 核对以确认系统的依赖关系的完整性
  source - 下载源码包文件
  download - 下载指定的二进制包到当前目录
  changelog - 下载指定软件包,并显示其changelog

参见 apt-get(8) 以获取更多关于可用命令的信息。
程序配置选项及语法都已经在 apt.conf(5) 中阐明。
欲知如何配置软件源,请参阅 sources.list(5)。
软件包及其版本偏好可以通过 apt_preferences(5) 来设置。
关于安全方面的细节可以参考 apt-secure(8).

04. 参考示例

4.1 更新软件

deng@itcast:~/test$ sudo apt-get update 

4.2 安装tree软件

deng@itcast:~/test$ sudo apt install tree 
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
下列【新】软件包将被安装:
  tree

4.3 安装nginx

deng@itcast:~/test$ sudo apt-get install nginx
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
将会同时安装下列软件:
  libnginx-mod-http-geoip libnginx-mod-http-image-filter
  libnginx-mod-http-xslt-filter libnginx-mod-mail libnginx-mod-stream
  nginx-common nginx-core
建议安装:
  fcgiwrap nginx-doc

4.4 卸载nginx

deng@itcast:~/test$ sudo apt-get remove nginx
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
下列软件包是自动安装的并且现在不需要了

4.5 卸载并清除软件包的配置

deng@itcast:~/test$ sudo apt-get --purge remove nginx
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
软件包 nginx 未安装,所以不会被卸载

4.6 删除已下载的旧包文件

deng@itcast:~/test$ sudo apt-get autoclean tree
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
deng@itcast:~/test$ 

4.7 删除所有已下载的包文件

deng@itcast:~/test$ sudo apt-get clean 
deng@itcast:~/test$ 

把安装的软件的备份也删除,不过这样不会影响软件的使用

4.8 更新所有已安装的软件包

deng@itcast:~/test$ sudo apt-get upgrade

4.9 将系统升级到新版本

deng@itcast:~/test$ sudo apt-get dist-upgrade

4.10 删除已下载的旧包文件

deng@itcast:~/test$ sudo apt-get  autoclean 
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
deng@itcast:~/test$ 

定期运行这个命令来清除那些已经卸载的软件包的.deb文件。通过这种方式,您可以释放大量的磁盘空间。如果您的需求十分迫切,可以使用apt-get clean以释放更多空间。这个命令会将已安装软件包裹的.deb文件一并删除。

4.11 检查是否有损坏的依赖

deng@itcast:~/test$ sudo apt-get check
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
deng@itcast:~/test$ 

4.12 下载该包的源代码

deng@itcast:~/test$ sudo apt-get source tree

4.13 源码包配置所需的编译依赖关系

deng@itcast:~/test$ sudo apt-get build-dep tree
正在读取软件包列表... 完成

4.14 卸载所有自动安装且不再使用的软件包

deng@itcast:~/test$ sudo apt-get autoremove 
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
下列软件包将被【卸载】:
  libnginx-mod-http-geoip libnginx-mod-http-image-filter
  libnginx-mod-http-xslt-filter libnginx-mod-mail libnginx-mod-stream
  nginx-common nginx-core
升级了 0 个软件包,新安装了 0 个软件包,要卸载 7 个软件包,有 625 个软件包未被升级。
解压缩后将会空出 2,076 kB 的空间。
您希望继续执行吗? [Y/n]

4.15 根据 dselect 的选择来进行升级

deng@itcast:~/test$ sudo apt-get dselect-upgrade 

4.16 重新安装软件包

deng@itcast:~/test$ sudo apt-get install tree --reinstall
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
下列软件包是自动安装的并且现在不需要了:
  libnginx-mod-http-geoip libnginx-mod-http-image-filter
  libnginx-mod-http-xslt-filter libnginx-mod-mail libnginx-mod-stream
  nginx-common nginx-core
使用'sudo apt autoremove'来卸载它(它们)。
升级了 0 个软件包,新安装了 0 个软件包,重新安装了 1 个软件包,要卸载 0 个软件包,有 625 个软件包未被升级。
需要下载 40.7 kB 的归档。
解压缩后会消耗 0 B 的额外空间。
获取:1 http://mirrors.aliyun.com/ubuntu bionic/universe amd64 tree amd64 1.7.0-5 [40.7 kB]
已下载 40.7 kB,耗时 0秒 (87.9 kB/s)
(正在读取数据库 ... 系统当前共安装有 172253 个文件和目录。)
正准备解包 .../tree_1.7.0-5_amd64.deb  ...
正在将 tree (1.7.0-5) 解包到 (1.7.0-5)...
正在设置 tree (1.7.0-5) ...
正在处理用于 man-db (2.8.3-2) 的触发器 ...
deng@itcast:~/test$ 

05. 附录

参考:【Linux】一步一步学Linux系列教程汇总

猜你喜欢

转载自blog.csdn.net/dengjin20104042056/article/details/101618503