`
lesorb
  • 浏览: 123445 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

在ubuntu中打包deb包

    博客分类:
  • it
阅读更多
公司要使用deb包发布产品,具体原因不明,可能是由于deb格式安装包又经常会涉及到系统较底层的操作,对Unix类系统对权限、所有者、组的严格要求吧!

不论,先来了解下什么是deb?
Debian包是Unixar的标准归档,将包文件信息以及包内容,经过gzip和tar打包而成。
处理这些包的经典程序是dpkg。
deb包本身有三部分组成:
数据包,包含实际安装的程序数据,文件名为test.tar.xxx;
安装信息及控制脚本包,包含deb的安装说明,标识,脚本等,文件名为control.tar.gz;
最后一个是deb文件的一些二进制数据,包括文件头等信息,一般看不到,在某些软件中打开可以看到。

如何制作?
我使用dpkg方法。
首先制作bz2包
tar -cjf test_150713.tar.bz2 test

创建deb子文件夹,并copy压缩包bz2到deb子中
cp test_150713.tar.bz2 deb

解压bz2包
tar xvjf test_150713.tar.bz2

改目录名为,格式(包名-版本号)
mv test_150713 test-1.0
cd test-1.0

生成制作deb包所需的默认信息
dh_make -s -e lesorb@163.com -f ../test_150713.tar.bz2

此时当前目录下生成了debian目录,此时通常修改两个文件:
修改debian/control文件,配置信息,具体字段见参考部分
修改debian/rules脚本,编译参数(可不改)
打包deb
dpkg-buildpackage -rfakeroot -b -uc

这里 '-rfakeroot' 指定命令使用 fakeroot 程序来模仿 root 权限 (来实现所有者(ownership)目的),'-uc' 表示 "Don't cryptographically sign the changelog", '-b' 代表只建立二进制包.
此时,上层目录中deb包已建立好了

参考
1. debian/control文件中信息说明
1) Package 包名
2) Version 版本
3) Architecture 目标机架构(i386, arm等)
4) Maintainer 维护者
5) Depends 依赖软件包
6) Description 描述

------------查看包信息------------------
dpkg -c test-2.0.1.0.deb
------------直接打包--------------------
dpkg-deb --build test-2.0.1.0/
分享到:
评论

相关推荐

    QT程序打包成deb文件的一个目录结构,放这里用来备忘,前面有打包成deb的文章

    QT程序打包成DEB文件是将Qt应用程序转化为适用于Debian系Linux系统(如Ubuntu、Debian等)安装包的过程。DEB是Debian软件包格式,它包含程序的执行文件、依赖关系、元数据等。以下是对这个过程的详细解释: 1. **...

    ubuntu deb包的解开与合起

    重新打包deb包 将修改后的文件重新打包成新的deb包。首先,需要将data目录下的文件重新打包成data.tar.gz文件。例如: ``` tar cvzf data.tar.gz data ``` 然后,使用ar命令将debian-binary、control.tar.gz和data...

    ubuntu下构建deb包

    在 Ubuntu 系统中,构建 deb 包是一种常见的软件包管理方式。deb 包是 Debian 软件包的文件格式,用于存储和分发软件。下面将详细介绍 Ubuntu 下构建 deb 包的过程。 安装打包环境 首先,需要安装打包环境,包括 ...

    ubuntu deb包及依赖库下载地址打包2011年

    DEB 包是 Ubuntu 和其他 Debian 基础发行版中使用的软件包格式。本文将详细探讨给定的 DEB 包列表及其相关的依赖库。 ### DEB包与依赖管理 #### DEB包的概念 DEB 包是由 Debian 开发的一种标准软件包格式。这种...

    deb包制作+软件图标+加到系统菜单实例

    在Linux世界中,DEB包是Debian及其衍生系统(如Ubuntu)中广泛使用的软件打包格式,用于分发和安装应用程序。本实例将带你深入了解如何制作DEB包、添加软件图标以及将其集成到系统菜单中。我们将涉及以下几个关键...

    Ubuntu下的deb包制作详解

    在 Linux 系统中,deb 包是最常用的软件包格式之一,ubuntu 作为 Linux 发行版之一,deb 包的制作和使用是非常重要的。本文将详细介绍如何使用 QT 程序制作 deb 包,并安装到应用程序菜单中。 deb 包的制作主要可以...

    ubuntu操作系统的Deb包制作过程

    这样做的目的是为了让Deb包在安装时能够正确地放置每个文件。 ##### 3. 创建DEBIAN子目录 在`package`目录中创建一个名为`DEBIAN`的子目录,这个子目录用于存放Deb包的关键元数据,包括控制文件(control)等。 ``` ...

    linux下javaSwing开发的jar包CS打包完整步骤.docx

    **第五步:打包DEB安装包** 进入`szbb-1.0.1`的上一级目录,执行`dpkg -b szbb-1.0.1 szbb_v1.0.1_mips64el.deb`命令来创建DEB安装包。打包完成后,可以在当前目录下找到生成的`.deb`文件。 **第六步:安装和卸载...

    麒麟桌面V10-软件打包开发者指南_.pdf

    deb包是Debian及其衍生版,如Ubuntu中使用的软件包格式。 接下来,文档提到了“银河麒麟.deb”,这可能是指在银河麒麟系统中广泛使用的软件包类型,即Debian风格的包。 文档还详细列举了软件打包的步骤,包括开发...

    Ubuntu下Python2.7及DockerY一键安装的deb离线包

    在没有网络连接的离线环境中安装这些组件可能会变得复杂,但通过提供的deb离线包,我们可以简化这一过程。DEB是Debian和Ubuntu系统中用于安装软件的标准包格式。在Ubuntu环境下,`dpkg`工具用于处理这些DEB包,它...

    Deb安装包的制作方法

    【Deb安装包的制作方法】是Linux系统中软件分发的一种常见方式,主要用于Ubuntu、Debian等基于Debian的发行版。以下是制作Deb安装包的详细步骤和相关知识点: 1. **源代码准备** - 首先,确保项目在Eclipse中以...

    制作deb包的三种方法

    制作deb包的三种方法_Ralph的空间制作deb包的三种方法_Ralph的空间制作deb包的三种方法_Ralph的空间

    ubuntu_16_ansible.tar.gz

    1. `locales_2.27-3ubuntu1_all.deb`:这是Ubuntu系统中的语言环境包,提供不同地区的本地化支持。 2. `ansible_2.5.1+dfsg-1ubuntu0.1_all.deb`:Ansible的主要安装包,版本为2.5.1,适用于Ubuntu 16.04。 3. `libc...

    Ubuntu 1804 server Gcc 7.5 离线安装包 deb

    在给定的压缩包文件"gcc7.5_offline"中,可能包含了GCC 7.5的所有必要组件和依赖,以.deb格式打包,方便在Ubuntu 18.04服务器上进行离线安装。安装步骤通常包括以下步骤: 1. 首先,需要将该压缩包传输到目标服务器...

    有道词典在Ubuntu16.04安装的deb

    有道官网的deb包在ubuntu16.04无法安装,是因为有个依赖在16.04已经废弃不存在了,所以可以删掉,目前没有发现问题。 下载后使用sudo dpkg -i youdao-dict-new.deb 进行安装,如果安装出错试试 sudo apt-get -f ...

    deb-downloader:一个简单的工具,可从Ubuntu存储库下载deb软件包及其依赖项列表

    deb-downloader是一个简单的工具,可以从标准Ubuntu存储库中下载deb软件包及其依赖项的列表。 它可以用于下载i386和amd64体系结构的软件包。 如果需要,可以为特定的APT配置加载定制文件并扩展源列表。 要求 您需要...

    Ubuntu下安装qq的deb包

    大家都知道Ubuntu下安装qq用官方下载的deb包根本安装不了,只能自己重写编译打包,具体方法见:http://www.cnblogs.com/lanxuezaipiao/p/3307381.html,如果不想那么麻烦直接用我已经打好的包就行了

    Ubuntu之下载包-解压-打包-安装-卸载一条龙服务1

    总结来说,这个教程详细介绍了在Ubuntu系统中处理deb包的全过程,包括新建工作目录、解压包、编辑控制信息、打包新包以及安装和卸载软件包。这对于开发者和系统管理员来说是非常实用的操作技能,特别是当需要对...

    Linux deb安装包例子,包含制作一个deb安装包需要的相关文件

    这个例子中的压缩包包含了创建自定义deb安装程序所需的基本文件和步骤,这对于我们理解和掌握如何在Linux环境中打包和分发应用程序至关重要。 首先,我们要了解deb安装包的结构。一个deb文件实质上是一个被归档的...

    ubuntu 20.04 离线安装Nginx(nginx-full-1.18.0)及相关依赖

    在Ubuntu 20.04系统中,Nginx的版本是1.18.0,对应的包名为`nginx-full_1.18.0_amd64.deb`。你可以通过访问Nginx的官方网站或使用`apt download`命令来获取这个文件。同时,不要忘记下载所有相关的依赖包,这些依赖...

Global site tag (gtag.js) - Google Analytics