deb格式属于Debian系列专属安装包格式,它广泛应用在Debian、Ubuntu等Linux发行版本中。deb包的制作过程也比较简单,它由包文件信息以及包内容,经过tar打包而成。实际制作或使用时,只需dpkg相关指令即可完成这些工作。
大部分发行版中,deb包的安装信息记录在“/var/lib/dpkg”文件夹内,参考图1:
接下来,我们通过制作、安装、卸载deb包,了解包信息在系统中的记录情况。
章节预览:
章节内容:
1. 制作一个简单的deb包
首先,创建一个文件夹,比如“testdeb”,参考图2:
进入“testdeb”文件夹,在文件夹中创建“DEBIAN”文件夹,它用来存放包的描述、安装、卸载等信息,参考图3:
进入“DEBIAN”文件夹,在文件中创建“control”文件,在这个文件中,添加包的描述信息,参考图4:
文件中的字段信息在确认、安装、卸载时,可作为我们生成的deb包的独有标识,接下来分析这些含义:
Package: test-deb //包的安装名称,查询或卸载包的时候使用
Version: 1.0.0.0 //包的版本号
Architecture: amd64 //包所支持的架构 amd64可在x86_64等架构使用,arm64可在arch64等架构使用等,应根据实际架构填写
Installed-Size: 1024 //包的大小
Depends: //所依赖的其他包和库文件,如果是依赖多个包和库文件,采用逗号隔开
Section: utils //程序的类别,常见的有utils, net, mail, text, devel等
Priority: optional //程序对于系统的重要程度,如required, standard, optional, extra等
Maintainer: test01 //包的制作者,联系信息等
Description: test //包的描述
保存这些字段信息,可以正常安装、确认、卸载的包,编写完成了。
接下来,我们生成这个包,命令行进入“testdeb”上一级文件夹,输入 dpkg -b testdeb/ testdeb.deb,参考图5:
现在,我们安装这个deb包,输入 sudo dpkg -i testdeb.deb,参考图6:
2. 确认、卸载deb包
在命令行中输入 dpkg --info testdeb.deb,可以看到包中“control”文件填写的内容,参考图7:
接下来,我们从“/var/lib/dpkg”文件夹内查找这部分信息,由于我们的包没有实际功能,只在“status”文件中查找到了安装信息,但也足够应对实际应用场景,参考图8:
接下来卸载安装包,在命令行中输入 sudo dpkg -r test-deb,参考
使用 dpkg -r指令只能卸载包中指定的内容(这篇文章没有讲述),如果deb包编写的不完善或文件占用等情况下,会存在“残留”,使用dpkg -P指令可以强制卸载deb包的所有安装信息。
关于dpkg相关的知识还有很多,比如编写一个完整的deb包、 “DEBIAN”文件夹内的文件,在包安装后的保存路径等。
dpkg相关文章以后有时间会继续写,如果有朋友喜欢可以下方留言,留言内容可以是需要理解的部分。