deb打包

一、deb包结构

deb包本身有三部分组成

 deb 软件包里面的结构:它具有DEBIAN和软件具体安装目录(如etc, usr, opt, tmp等):

复制代码
soft-name
    |--DEBIAN
    |       |--control
    |       |--postinst
    |       |--postrm
    |       |--preinst
    |       |--prerm
    |       |--copyright
    |
    |--opt
    |   |--files
    |--etc
    |   |--files
    ...    
复制代码

二、control文件

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

 三、脚本文件

preinst 文件于软件包安装之前会被调用

postinst 文件于软件包安装之后被调用

prerm 文件于软件包卸载之前调用

postrm 文件于软件包卸载之后调用

四、编写测试用例

1,编写control文件

mkdir -p ~/test/DEBIAN

cd ~/test/DEBIAN

vim control

Package: test
Version: 1
Architecture: amd64
Maintainer: guanghe
Description: test

2,放置需要安装到系统的文件

mkdir -p ~/test/opt/test

cd ~/test/opt/test

touch test.sh

echo 'echo `date`"光何" > /tmp/test.log' > ./test.sh

3,设定安装完成后执行脚本

vim ~/test/DEBIAN/postinst

#!/bin/bash
cd /opt/test
chmod +x /opt/test/test.sh/opt/test/test.sh

修改postinst权限

chmod 755  ~/test/DEBIAN/postinst

五、打包、安装、卸载

1,打包

cd ~

dpkg -b ./test test.deb

第一个参数为将要打包的目录名(./表示当前目录),第二个参数为生成包的名称<.deb file name>,默认则使用文件夹名称

2,安装

dpkg -i test.deb

3,卸载

dpkg --purge test

-r:删除包,--purge:删除包并删除配置文件

posted @   光何  阅读(716)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
历史上的今天:
2018-06-22 TCP的三次握手和四次挥手

点击右上角即可分享
微信分享提示