Deb打包教程
2019-04-09 本文已影响0人
安以北往南
部署-V1.0.0
安全带
项目手册
1.项目简介
2.项目部署
3.联系方式
一、项目简介
1.项目简介
二、项目部署
1.deb打包
#需要打包的目录
sudo mkdir apache-traffic
#打包控制文件创建
cd /data/apache-traffic
sudo mkdir DEBIAN
#控制文件
cd DEBIAN
#创建文件
sudo touch control conffiles md5sums config preinst preinst postinst prerm postrm templates
#授权
sudo chmod 755 control conffiles md5sums config preinst preinst postinst prerm postrm templates
control : 用了记录软件标识,版本号,平台,依赖信息等数据
conffiles : 当软件包升级的时候,你将会被询问是否要保留你的旧配置文件。
md5sums : md5校验
preinst : Debian软件包(".deb")解压前执行的脚本, 为正在被升级的包停止相关服务,直到升级或安装完成.(成功后
执行 'postinst' 脚本).
postinst : 在解包后运行的脚本,主要完成软件包(".deb")安装完成后所需的配置工作. 通常, postinst 脚本要求用
户输入, 和/或警告用户如果接受默认值, 应该记得按要求返回重新配置这个软件. 一个软件包安装或升级完成后。
config : 启动配置
templates : 定制模板
prerm : 卸载时,在删除文件之前运行的脚本(停止一个软件包的相关进程, 要卸载软件包的相关文件前执行。)
postrm : 在删除文件之后运行的脚本(修改相关文件或连接, 和/或卸载软件包所创建的文件)
其中 preinst, postinst, prerm, 和 postrm 脚本,是软件包安装前后自动运行的可执行脚本. 统称为控制文件,
是 Deian 软件包的"控制"部分
Package: deb #包的名称
Version: 1.0.0 #版本号
Architecture: amd64
Maintainer: Jason<jasonandy@hotmail.com> #维护者
Installed-Size: #安装所需大小
Pre-Depends:
Depends:
Recommends:
Conflicts:
Replaces:
Provides:
Section:
Priority: extra
Description: This is a deb dpkg made by jason.
#prerm文件:软件卸载前需要执行的脚本
#! /bin/sh
# prerm script for #PACKAGE#
#
# see: dh_installdeb(1)
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
# Automatically added by dh_installinit
# End automatically added section
if [ -x "/etc/init.d/xxx-deb" ]; then
invoke-rc.d xxx-deb stop || true
fi
exit 0
#!/bin/sh
## postrm文件:软件卸载后需要执行的脚本。
# postrm script for #PACKAGE#
#
# see: dh_installdeb(1)
set -e
# summary of how this script can be called:
# * <postrm> `remove'
# * <postrm> `purge'
# * <old-postrm> `upgrade' <new-version>
# * <new-postrm> `failed-upgrade' <old-version>
# * <new-postrm> `abort-install'
# * <new-postrm> `abort-install' <old-version>
# * <new-postrm> `abort-upgrade' <old-version>
# * <disappearer's-postrm> `disappear' <overwriter>
# <overwriter-version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package
if [ -d "/xxx/xxx/xxxxxx" ]; then
rm -rf "/xxx/xxxx/xxxxx"
fi
if [ "$1" = "purge" ] ; then
update-rc.d xxx-deb remove >/dev/null
fi
# In case this system is running systemd, we make systemd reload the unit files
# to pick up changes.
if [ -d /run/systemd/system ] ; then
systemctl --system daemon-reload >/dev/null || true
fi
# Automatically added by dh_installdebconf
if [ "$1" = purge ] && [ -e /usr/share/debconf/confmodule ]; then
. /usr/share/debconf/confmodule
db_purge
fi
# End automatically added section
exit 0
image.png