Linux deb包解压、修改等操作方法代码示例

出于多种原因,有的时候需要直接对deb包中的各种文件内容进行修改

主要有三个问题需要解决:

0、如何将deb包文件进行解包呢?

1、修改要修改的文件?

2、对修改后的内容进行生成deb包?

解包命令为

#解压出包中的文件到extract目录下

  lin@lin-host:~/Desktop/100次重启工具$ ls  LongTestTools.sh loong-test-s2s3_1.0.0-2_all.deb readme.txt  lin@lin-host:~/Desktop/100次重启工具$ dpkg -X loong-test-s2s3_1.0.0-2_all.deb extract/  ./  ./usr/  ./usr/bin/  ./usr/bin/BootReplace.sh  ./usr/bin/BootTest.sh  ./usr/bin/LongTestTools.sh  ./usr/bin/RebootReplace.sh  ./usr/bin/RebootTest.sh  ./usr/bin/SleepTest.sh  ./usr/bin/SuspendTest.sh  lin@lin-host:~/Desktop/100次重启工具$ ls  extract LongTestTools.sh loong-test-s2s3_1.0.0-2_all.deb readme.txt

  lin@lin-host:~/Desktop/100次重启工具$ tree extract/  extract/  └── usr    └── bin      ├── BootReplace.sh      ├── BootTest.sh      ├── LongTestTools.sh      ├── RebootReplace.sh      ├── RebootTest.sh      ├── SleepTest.sh      └── SuspendTest.sh

#解压出包的控制信息extract/DEBIAN/下:

  lin@lin-host:~/Desktop/100次重启工具$ dpkg -e loong-test-s2s3_1.0.0-2_all.deb extract/DEBIAN/   lin@lin-host:~/Desktop/100次重启工具$ tree extract/  extract/  ├── DEBIAN  │   ├── control  │   └── md5sums  └── usr    └── bin      ├── BootReplace.sh      ├── BootTest.sh      ├── LongTestTools.sh      ├── RebootReplace.sh      ├── RebootTest.sh      ├── SleepTest.sh      └── SuspendTest.sh    3 directories, 9 files

#修改文件

vi extract/usr/bin/BootTest.sh

Linux deb包解压、修改等操作方法代码示例 Linux 第1张

对修改后的内容重新进行打包生成deb包

  lin@lin-host:~/Desktop/100次重启工具$ dpkg-deb -b extract/   dpkg-deb:正在新建软件包 loong-test-s2s3,包文件为 extract.deb。  lin@lin-host:~/Desktop/100次重启工具$ ls  extract extract.deb LongTestTools.sh readme.txt

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

您可能感兴趣的文章:

参与评论