news 2026/4/20 8:29:56

【银河麒麟】桌面操作系统-dpkg命令的常见用法

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【银河麒麟】桌面操作系统-dpkg命令的常见用法

【 概 述 】银河麒麟桌面系统的包管工具dpkg在实际的生产、办公或是排障中有很大用处,下面笔者将结合案例展现dpkg命令的一些常见用法,文末拓展了一个实用的包提取工具


【 常见用法 】

1、# dpkg -l | grep 包名 查看是否安装了某个软件包,grep适用于我们记不清软件包的准确名称的情况

## 比如说我们的系统没有正常进入图形界面,可以通过该命令查看相关软件包的状态,是否被删除,或者直接没有找到这个软件;又比如我们想查看系统是是否装有wps软件,可以使用该命令确定,如上图返回五列,分别表示:软件包状态,ii为已安装;软件包名;软件包版本;架构;软件包描述

常见状态符号及含义如下:

ii
表示软件包已安装且配置完成(i=installed)。这是正常安装后的标准状态。

rc
表示软件包已被删除(r=removed),但配置文件仍保留在系统中(c=config-files)。可通过apt purge彻底清除。

un
表示软件包未被安装(u=unknown),且系统未保留其配置文件(n=not-installed)。

hi
表示软件包被手动标记为保留(h=hold),阻止自动升级或删除。可通过apt-mark hold设置。

pn
表示软件包被彻底清除(p=purged),包括所有配置文件(n=not-installed)。

ud
表示软件包因依赖问题未完成安装或配置(u=unpacked, d=half-configured)。

2、# dpkg -l | grep "^rc" 查看被卸载但仍保留有配置文件的软件包 # dpkg -l | grep -v "ii" 查看状态除正常已安装之外的所有其他状态的软件包

## 这两个命令常用于查看系统中被误删除的软件

3、# dpkg -L 软件包名 查看某个已安装软件包的所有文件和目录路径,适用于已安装的包 # dpkg -c 软件包全名 显示 .deb 包中所有文件的列表,包括路径和权限信息,适用于尚未安装的包文件

## 如图,我们可以看到ukui-greeter软件包安装的文件,这里我截取了部分,如配置文件ukui-greeter.conf和可执行文件也就是命令ukui-greeter,在排障中,也可以通过执行该命令初步确定软件包是否被删除

## 可以看到dpkg -L和dpkg -c的区别,前者指定包名即可,后者指定的是当前目录下存在的软件包全名

4、# dpkg -s 软件包名 查看软件包的详细信息

## 如图,可以看到软件的状态、版本、依赖和描述等

5、# dpkg -S 文件 查询某个文件所属软件包

## https://blog.csdn.net/H15578730450/article/details/155780845?spm=1001.2014.3001.5502

在上一篇库文件损坏的博客中,我们采用的是拷贝同系统的libmount.so.1.1.0库,将损坏的库替换,再重建软链接和更新库缓存。当然也可以通过查看该文件所属的软件包为libmount1,然后重装该包修复

6、# dpkg -i 软件包全名 安装指定软件包 # dpkg -i *.deb 安装当前目录下所有的软件包

## 上图为安装libmount1软件包示例

7、# dpkg -x 软件包全名 /target/directory 提取.deb包的内容到指定目录下(不安装)

## 这里我创建了一个空目录libmount1,并将当前目录下的libmount1软件包中的内容提取到了该目录下,可以看到这个包中的内容包含了libmount.so的库文件,我们也可以通过这种方法提取库文件替换损坏了的libmount.so.1.1.0

8、# dpkg -r 软件包名 卸载软件包但保留其配置文件 # dpkg -P 软件包名 彻底卸载软件包及其所有配置文件

## 以上为卸载软件的命令

9、# dpkg --add-architecture 体系架构 用于在当前架构中添加其他的体系架构 # dpkg --remove-architecture 体系架构 用于在架构列表中移除某架构 # dpkg --print-architecture 显示dpkg体系架构 # dpkg --print-foreign-architectures 显示已启用的异质体系结构

## 以上命令适用于能连外网源的情况,如图,我的系统架构是arm64,当我想通过这个系统下载amd64架构的软件包时,可以通过--add-architecture选项添加amd64的架构,然后通过apt download 软件包名:amd64指定下载这一架构的软件包

【 扩 展 】


# dpkg-repack 软件包名 提取系统中的某个软件包到当前目录下

## dpkg-repack常用于内网环境下,提取系统中的某个软件包。如上图,从同样系统的机器中提取libmount1软件包,放到libmount.so.1.1.0库损坏的机器上安装,同样可以解决库文件损坏的问题。dpkg-repack这个软件包有需要的私信

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/21 6:11:01

10 个AI论文工具,专科生轻松搞定毕业写作!

10 个AI论文工具,专科生轻松搞定毕业写作! AI 工具如何成为论文写作的得力助手 对于专科生来说,毕业论文写作常常是学业中最棘手的一环。从选题到开题,再到撰写和降重,每一个环节都可能让人感到压力山大。而随着 AI 技…

作者头像 李华
网站建设 2026/4/18 8:37:23

Java函数入门:5分钟学会编写你的第一个函数

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 创建一个简单的Java入门教程项目,包含以下基础函数示例:1)打印Hello World的函数,2)两数相加的函数,3)判断数字奇偶的函数&#xff0…

作者头像 李华
网站建设 2026/4/17 14:16:20

电商主图救星!3个AI换背景技巧,0设计感也能出高点击图

打造爆款电商主图真的太难了!搭场景和找美工定制费钱耗时,自己抠图换背景还容易边缘粗糙、光影违和,反而掉档次。那么当下有什么AI工具可以轻松打造爆款主图呢,以下这个工具可以解决这个问题。其中包含3种商品更换背景方法&#x…

作者头像 李华
网站建设 2026/4/18 3:40:41

RGBA入门指南:从零开始学颜色表示

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个交互式RGBA学习平台,包含:1) RGBA基础知识讲解 2) 可视化颜色编辑器 3) 实时编码练习区 4) 小测验功能。要求界面友好,有分步引导&#…

作者头像 李华
网站建设 2026/4/18 16:55:21

用雷柏V500Pro键盘打造智能家居控制台的快速方案

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 创建一个雷柏V500Pro键盘智能家居控制原型系统。功能:1. 键盘按键映射智能设备 2. 支持MQTT协议 3. 设备状态反馈显示 4. 场景模式切换 5. 语音控制集成。使用PythonHom…

作者头像 李华
网站建设 2026/4/21 4:56:50

无需安装!浏览器直接运行Java8的5种创新方案

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个基于Web的Java8运行环境原型,要求:1. 使用WebAssembly技术运行Java字节码 2. 内置常用Java8特性示例库 3. 支持Lambda表达式实时调试 4. 提供与本地…

作者头像 李华