ubuntu安装debian包的命令dpkg和apt的详解

dpkg是Debian Packager的缩写

官方文档https://manpages.ubuntu.com/manpages/jammy/en/man1/dpkg.1.html

ubuntu的dpkg命令类似centos的rpm命令,dpkg主要用于对已下载到本地和已安装的.deb软件包进行管理比如安装、构建、删除。dpkg不能自动下载和安装.deb软件包也无法检查软件包的依赖关系,因此在对一个软件的依赖关系不清楚的情况下,使用dpkg对用户的开发工作不太友好。为了帮助用户获取软件包(获取存在依赖关系的软件包),则出现了更高级的APT软件包管理工具。

apt是Advanced Packaging Tool的缩写

官方文档https://manpages.ubuntu.com/manpages/jammy/en/man8/apt.8.html

ubuntu的apt类似centos的yum,从Ubuntu 16.04和Debian 9开始,开始推荐使用apt而不是apt-get,也就是使用apt来替代掉apt-get,尽管apt-get仍然可用且功能齐全。apt它提供了新软件包的安装、现有软件包的升级、软件包列表索引的更新,它提供在线软件包的管理而非下载到本地的.deb软件包的管理,apt不同于dpkg,其解决了一个重要的问题,就是软件卸载过程中的软件包的依赖性问题,并且从指定的源(/etc/apt/sources.list文件中的内容)中检索和安装软件包。

apt-get官方文档https://manpages.ubuntu.com/manpages/jammy/en/man8/apt-get.8.html关于install的解释

install is followed by one or more packages desired for installation or upgrading.

Each package is a package name, not a fully qualified filename (for instance, in a Debian system, apt-utils would be the argument provided, not apt-utils_2.4.5_amd64.deb).

例子

dpkg才可以安装下载到本地的.deb软件包,而apt不能安装

bash 复制代码
root@DAILACHDBUD001:~# ll |grep deb
-rw-r--r--  1 root root 23585760 Oct 18 06:21 clickhouse-backup_2.4.2_amd64.deb
root@DAILACHDBUD001:~# apt install clickhouse-backup_2.4.2_amd64.deb
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package clickhouse-backup_2.4.2_amd64.deb
root@DAILACHDBUD001:~# dpkg -i clickhouse-backup_2.4.2_amd64.deb
Selecting previously unselected package clickhouse-backup.
(Reading database ... 127136 files and directories currently installed.)
Preparing to unpack clickhouse-backup_2.4.2_amd64.deb ...
Unpacking clickhouse-backup (2.4.2) ...
Setting up clickhouse-backup (2.4.2) ...
相关推荐
bush414 小时前
嵌入式linux学习记录七,中断
linux·嵌入式
RisunJan14 小时前
Linux命令-nologin(用于系统账户或需要禁止交互式登录的场景)
linux·运维
是阿建吖!14 小时前
【Linux】信号
android·linux·c语言·c++
城北徐宫14 小时前
Linux信号深度解剖:5种产生、3张表、4次切换
linux·c++·学习
倔强的石头10614 小时前
【Linux指南】Linux快捷键与系统实用技巧
linux·运维·服务器
番茄地瓜14 小时前
Linux 配置静态 IP 步骤
linux·运维·服务器
liulilittle14 小时前
论 Linux 内核态全局稳态带宽的卡尔曼估计与工程实现
linux·服务器·网络·c++·计算机网络·tcp·通信
Irissgwe15 小时前
五、应用层协议HTTP
linux·网络·网络协议·http·状态码·url
.千余15 小时前
【Linux】 传输层协议UDP:从端口号到传输机制
linux·运维·udp
囚~徒~16 小时前
轻量化的虚拟机
linux·运维·服务器