ubuntu制作简陋的deb/rpm包

背景: 自己编写了一套工具,类似于i2ctool,有很多个独立的小工具,一般情况下,直接复制到OS(并安装相关组件/驱动/tool)就可以用了,但是想直接制作成deb/rpm包,这样在ubuntu下直接dpkg -i <package.deb>;CentOS下直接rpm -ivh <package.rpm>便可安装使用(或者-Uvh),安装的时候可以添加一些脚本。

deb包的制作

采用先将工具编译好的方式
(1) 创建工作目录

taddeo@SW-SERVER:~/201909/dpkg-debbb/workspace$ tree debworkkk/
debworkkk/
├── DEBIAN
│   ├── control
│   ├── postinst
│   ├── postrm
│   ├── preinst
│   └── prerm
└── home
    └── my_tools
        ├── bin
        │   ├── my-tool-01
        │   ├── my-tool-02
        │   └── my-tool-03
        ├── configs
        │   ├── my-cfg01.yaml
        │   └── my-cfg02.yaml
        ├── README.txt
        └── tools
            ├── connectionmgrhostx86_64
            ├── dmidecode
            ├── eeupdate64e
            ├── memtool
            ├── slqssdk
            └── smartctl

6 directories, 17 files
taddeo@SW-SERVER:~/201909/dpkg-debbb/workspace$

先创建debwork/DEBIAN目录,然后在DEBIAN目录下添加
control postinst postrm preinst prerm这五个文件,直接用vim创建即可,其中
1)control: 记录deb的版本号,作者信息,运行环境,依赖信息等
2)preinst:在deb包解包前运行的脚本
3)postinst: 在解包后运行的脚本,比如这次用到了yaml库,可以在这里添加把动态库文件(XX.so)复制到/lib文件夹下的命令
4)prerm :在卸载deb包,即删除相应文件前运行的脚本
5)postrm 删除相应文件后运行的脚本

taddeo@SW-SERVER:~/201909/dpkg-debbb/workspace/debworkkk$ cat DEBIAN/*
Package: my-tools
Version: 0.0.7-1
Section: admin
Depends:
Priority: optional
Architecture: all
Maintainer:  me <me@template.com>
Installed-Size: 10240
Description: Suite of tools and libraries for Celestica diagnostics.
#!/bin/sh
#echo "+++==========++++"
#echo "+ postinst test +"
#echo "+++==========++++"
cp /home/my-tool/tools/libmy_yaml.so /lib
#cd /home/my-tool/bin/
#!/bin/sh
#echo "+++========++++"
#echo "+ postrm test +"
#echo "+++========++++"
#!/bin/sh
#echo "+++=========++++"
#echo "+ preinst test +"
#echo "+++=========++++"
#!/bin/sh
#echo "+++=======++++"
#echo "+ prerm test +"
#echo "+++=======++++"
taddeo@SW-SERVER:~/201909/dpkg-debbb/workspace/debworkkk$

(2)放入自己的文件
安装时,之前建立的debwork目录就相当于系统的根目录(/),我想把自己的tool放在home/my-tool

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值