DEB 是 Debian 软件包格式的文件扩展名,是 Unixar 的标准归档,将包文件信息以及包内容,经过 gzip 和 tar 打包而成。
deb 基于 tar 包,因此本身会记录文件的权限以及所有者/用户组。
deb 包组成部分:
数据包——包含实际的安装的程序数据,文件名为 data.tar.XXX;在安装过程中,改包里的数据会被直接解压到根目录(/),因此在打包之前需要根据文件所在位置设置好相应的文件目录树。如下:
安装信息及控制脚本包——包含deb的安装说明,标识,脚本等,文件名为 control.tar.gz;一般有5个文件:control,用于记录软件标识,版本号,平台,依赖信息等数据;preinst,在解包data.tar.gz前运行的脚本;postinst,在解包数据后运行的脚本;prerm,卸载时,在删除文件之前运行的脚本;postrm,在删除文件之后运行的脚本。如下:
package: package-name version: 1.0.0-2021.05.20 section: Software architecture: arm64 maintainer: lsm description: some package description
deb文件的二进制数据,包括文件头等信息,一般看不到,在某些软件中打开可以看到。
dpkg -b MyProject MyProject-linux_arm64.deb
安装
dpkg -i MyProject-linux_arm64.deb
卸载
dpkg -P myproject