文章目录
- 一、apt-get安装:
- 1. 参数:
- 2. 升级 & 安装:
- 3. 查询 & 显示:
- 4. 删除:
- 5. 清理 & 检查:
- 6. apt-get upgrade更新时忽略或取消忽略指定包:
- 二、dpkg命令安装:
- 1. 安装软件:
- 2. 列出与该包先关联的文件:
- 3. 显示包的版本:
- 4. 查找包的详细信息:
- 5. 移除软件(保留配置):
- 6. 移除软件(不保留配置):
- 7. 列出deb包的内容:
- 8. 其他:
一、apt-get安装:
Advanced Package Tool,又名apt-get,是一款适用于Unix和Linux系统的应用程序管理器。最初于1998年发布,用于检索应用程序并将其加载到Debian Linux系统。Apt-get成名的原因之一在于其出色的解决软件依赖关系的能力。其通常使用.deb-formatted文件,但经过修改后可以使用apt-rpm处理红帽的Package Manager(RPM)文件。
Apt-get在Linux社区得到广泛使用,成为用来管理桌面、笔记本和网络的重要工具。随着Linux在企业中的普及,Windows和Mac用户了解如何使用apt-get加载应用程序有一定的好处。
另外,随着单片机设备如Raspberry Pi的热度增加,apt-get在这些平台上是比较便捷的应用加载方式。如果你想要加载的应用需要程序库或另一个应用程序才能正常工作,apt-get会帮你找到并加载所需的程序库或应用代码。apt-get当前的稳定版本是1.0.9.2,在2014年10月发布。
使用apt-get的主流Linux系统包括Debian和Ubuntu变异版本。大多数情况下,从命令行运行该工具。桌面上有几个图形前端可以使用,包括Synaptic Package Manager、Ubuntu Software Center、Aptitude和Kpackage。Raspberry Pi和Beaglebone Black nanoLinux版用户可以很容易地使用apt-get加载程序,因为这些系统通常来自Ubuntu或Debian代码。是debian,ubuntu发行版的包管理工具,与红帽中的yum工具非常类似。
apt-get命令一般需要root权限执行,所以一般跟着sudo命令。
例:sudo apt-get xxxx
1. 参数:
-h 帮助文件。
-q 输出到日志 - 无进展指示
-qq 不输出信息,错误除外
-d 仅下载 - 不安装或解压归档文件
-s 不实际安装。模拟执行命令
-y 在需要确认的场景中回应 yes
-f 尝试修正系统依赖损坏处
-m 如果归档无法定位,尝试继续
-u 同时显示更新软件包的列表
-b 获取源码包后编译
-V 显示详细的版本号
-c=? 阅读此配置文件
-o=? 设置自定的配置选项,如 -o dir::cache=/tmp
2. 升级 & 安装:
apt-get update # 更新源文件,并不会做任何安装升级操作
apt-get upgrade # 升级所有已安装的包
apt-get install packagename # 安装指定的包
apt-get install packagename --only-upgrade # 仅升级指定的包
apt-get install packagename --reinstall # 重新安装包
apt-get -f install # 修复安装
apt-get build-dep packagename # 安装相关的编译环境
apt-get source packagename # 下载该包的源代码
apt-get dist-upgrade # 升级系统
apt-get dselect-upgrade # 使用 dselect 升级
apt update && apt full-upgrade # 一条命令就可以更新或升级Kali Linux系统,相当于windows系统的自动更新功能
3. 查询 & 显示:
apt-cache search packagename # 查询指定的包
apt-cache show packagename # 显示包的相关信息,如说明、大小、版本等
apt-cache depends packagename # 了解使用该包依赖哪些包
apt-cache rdepends packagename # 查看该包被哪些包依赖
4. 删除:
apt-get remove packagename # 删除包
apt-get remove packagename -- purge # 删除包,包括删除配置文件等
apt-get autoremove packagename --purge # 删除包及其依赖的软件包+配置文件等(只对6.10有效,推荐使用)
5. 清理 & 检查:
apt-get clean # 清理无用的包
apt-get autoclean # 清理无用的包
apt-get check # 检查是否有损坏的依赖
6. apt-get upgrade更新时忽略或取消忽略指定包:
# 使用这个命令可以将指定的包的版本hold住,这样在更新的时候就会忽略掉这个包:
apt-mark hold packagename
# 将 hold 替换为 unhold 就可以取消对这个包版本的锁定了:
apt-mark unhold packagename
二、dpkg命令安装:
dpkg 是Debian package的简写,为”Debian“ 操作系统 专门开发的套件管理系统,用于软件的安装,更新和移除。所有源自"Debian"的Linux的发行版都使用 dpkg, 例如"Ubuntu"
1. 安装软件:
命令:dpkg -i <.deb file name>
实例:dpkg -i Nessus-10.0.2-debian6_amd64.deb
Nessus-10.0.2-debian6_amd64.deb是手动下载下来的deb包, 如下图:
2. 列出与该包先关联的文件:
命令:dpkg -L package # 安装完包后,可以用此命令查看软件安装到什么地方,
实例:dpkg -L nessus
3. 显示包的版本:
命令:dpkg -l # -l 是列出所有已安装的包。
命令:dpkg -l package # -l 是列出所有已安装的包,加上安装包名称可以查看安装包的版本号。
实例:dpkg -l nessus
4. 查找包的详细信息:
命令:dpkg -s package
实例:dpkg -s nessus
5. 移除软件(保留配置):
命令:dpkg -r package
实例:dpkg -r nessus
# 使用dpkg -r卸载命令后,会保存安装包的配置,使用dpkg -l | grep nessus命令后还是可以在安装列表中看到。
6. 移除软件(不保留配置):
命令:dpkg -P package
实例:dpkg -P nessus # 这里虽然删除了配置文件,但仍然会保存相关安装目录。
可以看出,这里已经看不到安装包的信息了:
7. 列出deb包的内容:
命令:dpkg -c package.deb # 列出 deb 包的内容
实例:dpkg -c Nessus-10.0.2-debian6_amd64.deb
8. 其他:
dpkg –unpack package.deb # 解开 deb 包的内容
dpkg -S keyword # 搜索所属的包内容
dpkg –configure package # 配置包