0

0

如何自己制作一个deb安装包_dpkg-deb打包命令教程

蓮花仙者

蓮花仙者

发布时间:2025-09-16 08:44:01

|

436人浏览过

|

来源于php中文网

原创

首先构建符合规范的目录结构并编写control文件,再将可执行文件和配置文件放入对应路径,设置正确权限后使用dpkg-deb命令打包,最后通过dpkg安装测试。

如何自己制作一个deb安装包_dpkg-deb打包命令教程

想自己制作一个 Debian 安装包(.deb),其实并不复杂。只要你理解 deb 包的基本结构,并使用 dpkg-deb 命令,就能快速打包自己的程序或脚本,方便在 Debian、Ubuntu 等系统上安装和分发。

一、deb 包的基本结构

一个标准的 .deb 包本质上是一个归档文件,包含两个核心部分:控制信息和实际数据。你需要手动构建一个符合规则的目录结构:

  • 你的包名/
    • DEBIAN/ —— 存放控制信息(最重要)
    • usr/etc/bin/ 等 —— 实际要安装的文件

例如,假设你要打包一个叫 myapp 的程序,目录结构如下:

/myapp-package/
├── DEBIAN/
│   └── control
├── usr/
│   └── local/
│       └── bin/
│           └── myapp
└── etc/
    └── myapp.conf

二、编写 control 控制文件

control 文件位于 DEBIAN/control,定义了包的元信息,必须存在且格式正确。内容示例:

Package: myapp
Version: 1.0
Section: utils
Priority: optional
Architecture: amd64
Depends: bash, coreutils
Maintainer: Your Name 
Description: A simple custom application
 This is a small tool I made for demonstration.
 It does something useful.
注意:每一行都有意义,字段名后跟冒号加空格。Description 第一行是简短描述,换行后是详细描述,缩进至少一个空格。

三、准备要安装的文件

把你的可执行文件、配置文件等放到对应路径下。比如:

  • 可执行程序放入 myapp-package/usr/local/bin/myapp
  • 配置文件放入 myapp-package/etc/myapp.conf

确保权限正确。通常可执行文件需要设置执行权限:

chmod +x myapp-package/usr/local/bin/myapp

DEBIAN 目录权限也建议设为 755:

chmod 755 myapp-package/DEBIAN

四、使用 dpkg-deb 打包

一切准备就绪后,在终端执行打包命令:

星辰Agent
星辰Agent

科大讯飞推出的智能体Agent开发平台,助力开发者快速搭建生产级智能体

下载
dpkg-deb --build myapp-package

成功后会生成 myapp-package.deb 文件。

你也可以指定输出文件名:

dpkg-deb --build myapp-package myapp_1.0_amd64.deb

五、测试安装与卸载

安装刚生成的 deb 包:

sudo dpkg -i myapp_1.0_amd64.deb

如果提示依赖问题,可运行:

sudo apt-get install -f

卸载包:

sudo dpkg -r myapp

查看包信息:

dpkg -I myapp_1.0_amd64.deb

查看包内文件列表:

dpkg -c myapp_1.0_amd64.deb
基本上就这些。不复杂但容易忽略细节,比如 control 文件格式、路径层级、权限设置。只要结构对了,dpkg-deb 就能顺利打包。

相关专题

更多
常见的linux系统有哪些
常见的linux系统有哪些

linux系统有Ubuntu、Fedora、CentOS、Debian、openSUSE、Arch Linux、Gentoo、Slackware、Linux Mint、Kali Linux。更多关于linux系统的文章详情请阅读本专题下面的文章。php中文网欢迎大家前来学习。

809

2023.10.27

ubunt上安装和配置vnc
ubunt上安装和配置vnc

安装方法:安装VNC服务器、启动VNC服务器、设置VNC密码等等。想了解更多ubuntu的相关内容,可以阅读本专题下面的文章。

412

2023.12.28

ubuntu启动黑屏解决方法
ubuntu启动黑屏解决方法

ubuntu启动黑屏解决方法:检查是否是电源问题、检查内存是否接触不良、检查显卡问题等。想了解更多ubuntu的相关内容,可以阅读本专题下面的文章。

658

2023.12.28

为什么ubuntu有网络连接但不能上网
为什么ubuntu有网络连接但不能上网

ubuntu有网络连接但不能上网的原因:1、dns配置问题;2、代理服务器设置问题;3、网络防火墙设置问题;4、路由器或调制解调器设置问题;5、网络驱动程序问题;6、网络配置文件问题;7、其他问题。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

456

2024.09.05

ubuntu安装golang
ubuntu安装golang

本专题整合了ubuntu安装golang所有方法汇总,阅读下面的文章了解更多详细操作。

106

2025.12.13

常见的linux系统有哪些
常见的linux系统有哪些

linux系统有Ubuntu、Fedora、CentOS、Debian、openSUSE、Arch Linux、Gentoo、Slackware、Linux Mint、Kali Linux。更多关于linux系统的文章详情请阅读本专题下面的文章。php中文网欢迎大家前来学习。

809

2023.10.27

debian重启命令有哪些
debian重启命令有哪些

debian提供以下重启命令:1、reboot:立即重启系统;2、shutdown:指定重启时间(例如:shutdown -r +5 "system will reboot in 5 minutes.");3、systemctl reboot:控制系统服务和进程,包括重启系统;4、init(传统方法,不推荐);5、poweroff:关闭系统(非重启)。

664

2024.06.28

debian关机命令介绍
debian关机命令介绍

命令有:1、shutdown:在指定时间关机或重启系统(shutdown -h/-r -t );2、halt:立即关机(shutdown -h now);3、poweroff:直接关闭系统电源(不等待进程关闭);4、reboot:立即重启系统(不等待进程关闭)。

777

2024.06.28

Golang 性能分析与pprof调优实战
Golang 性能分析与pprof调优实战

本专题系统讲解 Golang 应用的性能分析与调优方法,重点覆盖 pprof 的使用方式,包括 CPU、内存、阻塞与 goroutine 分析,火焰图解读,常见性能瓶颈定位思路,以及在真实项目中进行针对性优化的实践技巧。通过案例讲解,帮助开发者掌握 用数据驱动的方式持续提升 Go 程序性能与稳定性。

9

2026.01.22

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Java 教程
Java 教程

共578课时 | 49.3万人学习

国外Web开发全栈课程全集
国外Web开发全栈课程全集

共12课时 | 1.0万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号