简单制作deb包

dpkg是deb系(debian,ubuntu以及其他使用.deb包的发行版)主要的软件包管理程序,apt包管理器是基于dpkg实现。
1.Linux编写完成程序后保存为c/c++文件,使用gcc/g++工具生成二进制可运行文件;
2.在目录下创建deb文件夹,在deb文件夹中创建DEBIAN文件夹以及usr文件夹


VirtualBox:~/hi-debian$ tree 
.
├── DEBIAN
│   └── control
└── usr
    └── bin
        └── hi_debian

3 directories, 2 files
#mkdir hi-debian
#cd 	hi-debian
#mkdir DEBIAN
#mkdir usr
#cd DEBIAN
#touch control
#vi control
Source: hi-debian //可以无#源码包名 
Package:hi-debian //软件名称 使用dpkg -l命令显示的名字(名字不能用下划线“_”) 
Version:1.0 //软件版本 
Architecture:amd64 //架构 
Section:utils //软件类别 
Priority: extra //#重要程度 
Depends: ${shlibs:Depends}, ${misc:Depends} #安装依赖
Maintainer:puweixi puweixii@126.com //软件制作人信息(电话/邮箱) 
Description:This is hi-debian deb demo//备注信息,使用dpkg -l命令显示的详情信息
#cd ../usr/
#mkdir bin
#touch hi_debian
#vi hi_debian
#!/bin/bash
echo "this is hi-debian test deb"

3.创建完成 在顶目录下使用命令 dpkg -b ./hi-debian hi-debian.deb 命令生成hi-debian.deb包。
4.安装包

#sudo dpkg -i hi-debian.deb
Selecting previously unselected package hi-debian.
(Reading database ... 245439 files and directories currently installed.)
Preparing to unpack hi-debian.deb ...
Unpacking hi-debian (1.0) ...
Setting up hi-debian (1.0) ...

5.查看

#sudo dpkg -l |grep  hi-debian
ii  hi-debian  1.0  amd64        This is hi_debian deb demo

6.执行 hi-debian程序

#hi_debian 
this is hi_debian test deb

7.删除包

#sudo dpkg -r hi-debian.deb

8.其它dpkg命令
sudo dpkg -i <package.deb> #安装包
sudo dpkg -r <package.deb>  #删除包
sudo dpkg -p <package.deb>  #彻底删除包(包括配置文件)
dpkg -l #列出当前已安装的包
dpkg -L package #列出与该包关联的文件
9.其它知识
deb包除DEBIAN目录外,其他文件夹都会解压到系统根目录。
下面对DEBIAN目录下几个重要的文件进行说明
1.软件包安装后,DEBIAN下的文件会按照一定规则存放到 /var/ 目录下
2.DEBIAN/control文件是根据源码debian/control文件修改而来,只包含deb包的信息
3.生成的md5sums记录了除DEBIAN目录外其他文件的摘要值
4.当deb包包含 etc/ 目录(etc目录用于存放系统配置文件)时,DEBIAN目录还会生成conffile文件,里面记录的就是etc下的配置文件位置,当更新软件包时,包管理器从conffile读取配置文件列表,重新计算每个文件的md5值,然后和存放在 /var 目录下的 md5sum 文件记录的md5进行对比,用于判断配置文件是否被修改,如果没有修改则将新包的配置文件覆盖老的配置文件,如果配置文件被修改则会弹出交互页面询问是保留原配置还是使用新包的配置文件
参考文件
https://www.cnblogs.com/ditvelo/p/16662910.html

  • 5
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
dpkg是Debian系统中用于安装、卸载和管理软件包的工具。制作deb就是将软件打成.deb文件,方便在Debian系统中进行安装和管理。下面是一个dpkg制作deb的例子。 首先,我们需要将软件打成一个目录结构,括必要的文件和文件夹。例如,我们要制作一个名为example的软件包,我们可以创建一个example文件夹,并将软件的文件复制到该文件夹中。 在example文件夹中,我们需要创建一个DEBIAN文件夹,用于存放软件包的控制文件。在DEBIAN文件夹中,我们需要创建一个control文件,该文件用于描述软件包的基本信息,例如软件名称、版本、适用的操作系统等。可以使用一个文本编辑器打开control文件,并按照一定的格式填写信息。 控制文件中的一个示例内容如下: Package: example Version: 1.0 Architecture: amd64 Maintainer: Your Name <your@email.com> Description: This is an example package. 除了control文件,如果软件包还依赖其他软件包,我们还需要创建一个文件来描述这些依赖。我们可以创建一个名为package_name.dependencies的文件,并在其中列出软件包的依赖关系。 在完成上述步骤后,我们可以使用dpkg-deb命令将example文件夹打成一个.deb文件。打开终端,切换到example文件夹所在的目录,然后执行以下命令: dpkg-deb -b example 执行完毕后,会生成一个名为example.deb的文件,即制作完成的deb。我们可以通过dpkg命令进行安装、卸载或管理该软件包。例如,要安装example.deb,可以执行以下命令: sudo dpkg -i example.deb 通过上述步骤,我们就完成了一个简单的dpkg制作deb的例子。当然,实际制作deb时可能还涉及其他要求和步骤,例如设置文件权限、预/后安装脚本等,这取决于具体的软件包需求。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值