Ubuntu下将现有的文件打包成deb包

转自:http://www.linuxidc.com/Linux/2008-04/12297.htm

 

deb是Debian Linux的软件包格式。一般来说是需要通过编译源码然后制作deb包,今天由于工作需要,想将一些现有的文件打包成deb包,苦苦寻找和研究如何处理,终于在下午3点时分成功制作出一个包。并自己亲手实践以保证每个步骤和最终结果的正确性。详情如下:

我是在Ubuntu 7.10上操作的,欲将/usr/src/soft目录下的文件打包,解包时这些文件也释放到/usr/src/soft目录下。

首先建立一个工作目录,比如在用户lionel目录下建立work目录:

#cd /home/lionel
#mkdir work
#cd work

因为安装软件包的时候默认是将文件释放到根目录下,所以可以设定好它的路径,同时我们还需建立一个DEBIAN目录:

#mkdir -p usr/src
#cp -a /usr/src/soft usr/src
#mkdir DEBIAN

比较关键的一步,用如下的方法在DEBIAN目录下创建一个control文件,并加入以下内容,内容可自定义:

#cat >DEBIAN/control< Package: soft
Version: 1.0.1
Section: utils
Priority: optional
Architecture: i386
Depends:
Installed-Size: 512
Maintainer: Linuxidc@126l.com
Description: soft package
EOF

然后就可以使用dpkg命令构建deb包了:

#dpkg -b . /home/lionel/soft_1.0.1_i386.deb

生成的包在/home/lionel目录下。

从整个过程来看,control文件是比较重要的,因此需要保证它的正确性。至于这些元数据的具体含义,以及为什么需要这些数据,稍后会再认真看一下。并且请注意每条命令前都是“#”,需要使用root权限执行这些操作。

posted @   明明是悟空  阅读(5575)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
点击右上角即可分享
微信分享提示