本文已参与「新人创作礼」活动,一起开启掘金创作之路。
一、前言
DEBIAN系列的Linux发行版,通用deb格式的标准归档,将包文件信息以及包内容,经过gzip和tar打包而成。
二、打包命令
dpkg -b [待打包文件夹] [打包后的包名].deb 例如: dpkg -b /home/yuan/package/MyApp /home/yuan/package/MyApp-1.0.1-amd64.deb
三、打包说明
1.文件内容
1.1 必须包含一个DEBIAN文件夹,包含control、preinst、postinst、prerm、postrm五个文件,其中control文件是必需的,并且这里的文件并且都是0755权限,否则打包失败
修改权限命令:
chmod 755 /home/yuan/package/MyApp/DEBIAN/*
文件说明:
control: 定义安装包的信息
preinst: 安装前执行脚本,常用于安装前的环境鉴别
postinst: 安装后执行脚本,常用于创建用户配置数据文件
prerm: 卸载前执行脚本,常用于保存用户配置数据
postrm: 卸载后执行脚本,常用于做清理工作
1.2 在DEBIAN同级目录下创建文件夹,安装后会对应在根目录下创建
例如:
/home/yuan/package/MyApp/opt/MyApp/bin/startApp.exe 安装后 /opt/MyApp/bin/startApp.exe
1.3 桌面快捷方式
创建MyApp.desktop文件,并放在/home/yuan/package/MyApp/usr/share/applications/MyApp.desktop这个路径
2.文件说明
2.1 control文件说明:
Package: 软件包名
Version: 版本号
Section: utils (admin(管理),games(游戏),gnome,kde,mail(电子邮件),misc(杂项)<译者注:misc是miscellaneous的简称>,net(网络),sound(声音),text(文本),utils(实用工具)和web(万维网)
Priority: required standard optional extra 表示软件的优先级
Essential: yes no 表示是否是系统最基本的软件包 Architecture: i386 amd64 arm64 mips64el 表示软件的CPU架构
Maintainer: 维护者开发者[邮件地址]
Depends: 依赖
Description: 详细介绍\
四、示例文件
示例control文件:
Package: MyApp
Version: 1.0.1
Section: utils
Priority: optional
Essential: no
Architecture: amd64
Maintainer: 1107839806(a)qq.com
Depends: apt
Description: 这是我开发的一个工具软件