linux系统创建deb安装包
创建文件夹:
文件夹格式:
mydeb ├── DEBIAN │ ├── control #记录软件包各种信息 ,比较重要 │ ├── postinst #安装后运行脚本(文件拷贝到系统后运行的脚本) │ ├── postrm #卸载包后运行脚本 │ ├── preinst #安装前运行脚本(拷贝文件到系统前运行的脚本) │ └── prerm #卸载前运行的脚本 ├── etc ├── lib │ └── systemd │ └── system │ └── xxx.service └── usr └── local ├── bin ├── include └── lib …
详细描述:
DEBIAN
目录下存放的是程序的信息和处理脚本。
其中control 内容实例:
Package: kellan-test
Version: 1.0
Architecture: arm64
Maintainer: Kellan Fan
Installed-Size: 128
Recommends:
Suggests:
Section: devel
Priority: optional
Multi-Arch: foreign
Description: just for test
-
Package 包名 -
Version 版本 -
Architecture 目标机架构(i386, arm等) -
Maintainer 维护者 -
Depends 依赖软件包 -
Description 描述
需要注意目标架构Architecture ,deb在不同架构的平台上运行会不一样,要求此处的描述要跟目标主机一致(区分大小写),不然会安装失败。
其他的内容都是安装前后和卸载前后运行的脚本命令。
etc
里面放的是程序的配置文件,如 xxx.ini 之类的。
lib
里面存放的是服务service,包含让可执行文件开机后自启动。具体的内容如下:
usr
这是存放我们最重要的应用程序的文件夹,大致格式如开头所写。
include装头文件、lib装库、bin装可执行文件。
一般应用程序会安装在/usr/loacl/目录下,如有特殊要求自行设定。
其他
1、打包命令: dpkg -b [文件夹路径] [生成deb名] (文件夹路径到DEBIAN上级目录即可)
2、除了DEBIAN安装后不会存在,其他的文件夹及其里面内容会按mydeb为根目录,依次安装到路径下。没有则创建。
3、安装时出现报错,报错会不全面,尝试修改mydeb里面内容,重新打包,再安装,会有不一样的报错。
4、官方的debian制作手册(比较长)
|