2025年DEB打包流程—新手入门(附自动化打包shell源码)

DEB打包流程—新手入门(附自动化打包shell源码)目录 一 了解 DEB 包 1 deb 包最简单的格式 1 创建格式 2 control 文件 编写完成后 要空出来最后一行 否则可能找不到 2 编写可执行文件 1 可以编写 C

大家好,我是讯享网,很高兴认识大家。

目录

一:了解DEB包

1、deb包最简单的格式

(1)创建格式

(2)control文件(编写完成后,要空出来最后一行,否则可能找不到)

2、编写可执行文件

(1)可以编写C++/C/Shell,那我就编写个Shell的helloworld.sh。先进入usr/bin并创建helloworld.sh

(2)对helloworld.sh文件添加可执行权限

二、了解dpkg的用法

1、.dpkg参数以及解压

2、进行打包操作

(1)打包

(2)命名

(3)安装和卸载(卸载只需要前面的包名即可)

三、shell自动化脚本打包源码(源码请下载我上传的【Shell自动化打包(DEB包)源码】)


一:了解DEB包

1、deb包最简单的格式

deb包是在linux系统下的一种安装包,它是基于tar包的。所以同样会记录着文件的权限信息(读、写、可执行)、所有者、用户组等 可以使用dpkg -l命令来查看系统以及安装了哪些deb包。

最简单的目录树(02.sh是我的自动化打包代码):

控制信息 DEBIAN/control
数据包 usr/bin/XXX.sh


讯享网

(1)创建格式

1、建立一个目录名称,如ccwy。

mkdir ccwy

讯享网

2、进入ccwy,依次创建DEBIAN、usr目录。进入usr目录在创建bin目录。

讯享网mkdir DEBIAN usr && cd usr && mkdir bin

3、DEBIAN目录用与存放配置信息control文件,bin目录用于存放可执行文件。

4、进入DEBIAN,创建control文件,编辑配置信息。

cd DEBIAN && vim control

(2)control文件(编写完成后,要空出来最后一行,否则可能找不到

Package: ccwy
Version: 1.0.0
Architecture: amd64
Maintainer: WonderThink
Secion: utils
Priority: optional
Installed_Size: 20
Description: This is my second deb package
 

control:这个文件主要描述软件包的名称(Package)版本(Version)Installed-Size(大小)Maintainer(打包人和联系方式)以及描述(Description)等,是deb包必须具备的描述性文件,以便于软件的安装管理和索引。

Package 程序名称(中间不能有空格)
Version 软件版本  
Description 程序说明  
Section 软件类别 utils, net, mail, text, x11
Priority 软件对于系统的重要程度 required, standard, optional, extra等;
Essential 是否是系统最基本的软件包 yes/no,若为yes,则不允许卸载(除非强制性卸载)
Architecture 软件所支持的平台架构 i386, amd64, m68k, sparc, alpha, powerpc等
Source 软件包的源代码名称  
Depends 软件所依赖的其他软件包和库文件 若依赖多个软件包和库文件,采用逗号隔开
Pre-Depends 软件安装前必须安装配置依赖性的软件包和库文件
Recommends 推荐安装的其他软件包和库文件  
Suggests 建议安装的其他软件包和库文件  

2、编写可执行文件

(1)可以编写C++/C/Shell,那我就编写个Shell的helloworld.sh。先进入usr/bin并创建helloworld.sh

讯享网cd usr/bin && vim helloworld.sh
#!/bin/bash echo "hello,world!"

(2)对helloworld.sh文件添加可执行权限

讯享网chmod +x helloworld.sh

二、了解dpkg的用法

1、.dpkg参数以及解压

1、dpkg -i <xxx.deb>
安装一个 Debian 软件包。

2、dpkg -c <xxx.deb>
列出 <xxx.deb> 的内容。

3、dpkg -I <xxx.deb>
从 <xxx.deb> 中提取包信息。

4、dpkg -r <xxx>
删除一个已安装的包。

5、dpkg -P <xxx>
完全清除一个已安装的包。和 remove 不同的是,remove 只是删掉数据和可执行文件,purge 还删除所有的配置文件。

6、dpkg -L <xxx>
列出 <xxx> 安装的所有文件清单。同时dpkg -c 来检查一个 .deb 文件的内容。

7、dpkg -e <xxx>

解压出包的控制信息:dpkg -e xxx.deb 解压路径

8、dpkg -x <xxx>

解压出包中的文件:dpkg -x xxx.deb 解压路径

2、进行打包操作

(1)打包

sudo dpkg -b ccwy

(2)命名

讯享网dpkg-name ccwy.deb

(3)安装和卸载(卸载只需要前面的包名即可)

sudo dpkg -i ccwy_1.0.0_amd64.deb
讯享网sudo dpkg -r ccwy

安装完成之后,你可以在任意目录直接运行你的helloworld.sh就可以打印出hello,world!了。

目前,你的deb包打包成功!

三、shell自动化脚本打包源码(源码请下载我上传的【Shell自动化打包(DEB包)源码】)

小讯
上一篇 2025-03-11 09:16
下一篇 2025-01-26 20:56

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/65547.html