dpkg说明

news/2024/11/16 2:40:15/

dpkg与centos中的rpm相似,被用于安装,卸载及查询deb包信息。下面简单介绍基础命令。
已有安装包:test.deb。
安装命令:
dpkg -i test.deb 安装test.deb软件包
dpkg -c test.deb #查看test.deb软件包中包含的文件结构
安装后查询命令:
dpkg -I test查看已安装的test.deb软件包的详细信息,包括软件名称、版本等
dpkg -L test #查看已安装test.deb软件包安装的所有文件
dpkg -s test #查看test.deb软件包的详细信息
dpkg -S filepath#查看某个文件属于哪个deb包
dpkg-query -S filepath #查看某个文件属于哪个deb包
dpkg -X test.deb directory#提取deb包中的文件
dpkg -e test.deb directory #提取deb包的控制信息
更新软件包命令:
dpkg -update-avail test.deb
卸载命令:
dpkg -r test #卸载test.deb软件包 (保留配置信息)
dpkg -P test #卸载test.deb软件包 (包括配置信息)
注:dpkg命令无法自动解决依赖关系。


如何获得命令属于的包

有时候,一个包里面包含非常多的命令,比如coreutils,包含很多有用的命令工具,如果我们看到一个命令,比如ls,应该如果知道他属于哪个包呢?

/bin$ which ls -l
/bin/ls
/bin$ dpkg-query -S /bin/ls 
coreutils: /bin/ls

如何获得包源码

最直接的做法,搜索引擎找这个包,可以找到
www.gnu.org/software/coreutils
再进到网站去下载对应的源码,但是其实apt命令已经帮我们实现了这个路径。

$ apt source coreutils

dpkg编译:

  1. deb源码包由以下文件组成:.debian.tar.xz 文件 .dsc文件和.tar.gz文件。
    得到这三个文件之后,执行dpkg-source -x xxx.dsc ,可生成源码目录
  2. xz -d xx.debian.tar.xz 生成xx.debian.tartar -xvf xx.debian.tar可生成补丁文件。
    路径为:debian/patches/
  3. 编译包:dpkg-buildpackage -us -uc // dpkg-buildpackage -b -rfakeroot -us -uc
  4. 安装包: dpkg -i 包名.deb
使用apt-get 安装以下工具:dh-make ,devscripts。
使用apt-get install dh-make 将安装 debhelper dh-make html2text三个包。
使用apt-get install devscripts ,这个是使用debuild所需要的。

问题1:
dpkg-source: 错误: can’t build with source format ‘3.0 (quilt)’: no upstream tarball found at …/caja_1.24.0.orig.tar.{bz2,gz,lzma,xz}

 rm ./debian/source/format 

在这里插入图片描述

quilt改为native
vim debian/source/format
在这里插入图片描述

可以把format文件中的quilt改为native,否则在未添加quilt的patch文件之前修改代码文件构建源码包会报错(quilt表示上游包,native表示自建包):


http://www.ppmy.cn/news/687276.html

相关文章

DPDK中文-DPDK工具(pdump)

翻译自:http://dpdk.org/doc/guides/tools/pdump.html pdump故名思意:就是packet dump的意思。是DPDK提供给我们意secondary方式运行程序捕获dpdkport报文的app;一句话就是dpdk抓包的工具; 注意: pdump只能是主dpdk程序…

DPDK 多进程

DPDK库里是支持多进程和多线程,本文主要总结多进程的相关的操作。 DPDK多进程使用的关键启动参数: --proc-type:指定一个dpdk进程是主进程还是副进程(参数值就用上面的primary或是secondary,或者是auto)-…

DPDK Ring

无锁环ring是DPDK提供的一种较为基础的数据结构,其支持多生产者和多消费者同时访问。 经过我的经验,无锁结构的实现主要依靠两方面: 最终的数据交换一定要是原子级的操作,最常用到的自然就是比较后交换(Compare And S…

DPDK系列之二DPDK编译

一、DPDK下载 前面把环境基本搭好,今天开始编译DPDK。首先是下载DPDK的源码,地址是: https://core.dpdk.org/download/ 也可以从官网https://www.dpdk.org/跳过来。然后就可以看到排下载的DPDK的版本: 这里下载的是DPDK 19.11.14…

如何在 Tkinter 中检测画布上的前一个项目?

在使用 Python 的 Tkinter 模块创建图形用户界面(GUI)时,有时我们需要检测画布上的前一个项目。这可以通过跟踪鼠标事件和使用适当的方法来实现。下面将介绍如何在 Tkinter 中检测画布上的前一个项目。 首先,让我们了解一下 Tkin…

DPDK概览

背景描述 DPDK的引入 对网卡频繁中断问题,提出DMA方式和设备轮询机制,其中NAPI采用“中断加轮询”的方式工作;网卡驱动在中断量较大(设定阈值)时会关闭中断,并自动采用轮询方式手法报文。 针对网络协议栈…

什么是DPDK

DPDK官网:http://www.dpdk.org/ What it is DPDK is a set of libraries and drivers for fast packet processing. It was designed to run on any processors. The first supported CPU was Intel x86 and it is now extended to IBM Power 8, EZchip TILE-Gx and…

DPDK相关介绍

读前须知 阅读本文前建议了解: 计算机网络基础知识; Linux用户态及内核态的简单介绍; 服务器 Numa 节点相关知识; 简述 概念 DPDK(Data Plane Development Kit,数据平面开发套件)&#xf…