/*********************************************************************
 * Author  : Samson
 * Date    : 07/03/2014
 * Test platform:
 *              3.11.0-12-generic #19-Ubuntu
 *              GNU bash, version 4.2.45
 * *******************************************************************/

Reference:
http://www.debian.org/doc/manuals/maint-guide/build.zh-cn.html

出于多种原因,有的时候须要直接对deb包中的各种文件内容进行改动,比如:在没有源码的情况下的改动,还有…… %_~

那么就有三个问题须要解决:

0、怎样将deb包文件进行解包呢?

1、改动要改动的文件?

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



以openssh-client的某个版本号的deb包为例:

解决方法:

-0、准备工作:

mkdir extract

mkdir extract/DEBIAN

mkdir build



0、解包命令为:



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

dpkg -X ../openssh-client_6.1p1_i386.deb extract/



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

dpkg -e ../openssh-client_6.1p1_i386.deb extract/DEBIAN/



1、改动文件(此处以改动ssh连接时禁止以root身份进行远程登录,原来是可以以root登录的):

sed -i 's/PermitRootLogin yes/PermitRootLogin no/g' extract/etc/ssh/sshd_config



2、对改动后的内容又一次进行打包生成deb包

dpkg-deb -b extract/ build/

ufo@ufo:~$ ll build/

总用量 1016

-rw-r--r-- 1 ufo ufo 1020014  7月  3 20:20 openssh-client_6.1p1_i386.deb



验证方法为:再次解开又一次打包的deb文件,查看在etc/ssh/sshd_config文件是否已经被改动;



done :_(

对一个deb包的解压、改动、又一次打包全过程方法的更多相关文章

  1. (转)对一个deb包的解压、修改、重新打包全过程方法

    转自:https://blog.csdn.net/yygydjkthh/article/details/36695243 Reference: http://www.debian.org/doc/ma ...

  2. Ubuntu下deb包的解压、打包、安装、卸载及常用命令参数

    1.首先下载deb包,比如:将其放在 /home/tools/ 根目录下: 2.进入到tools根目录下的终端,输入下面命令创建文件夹extract,并在extract文件夹下创建DEBIAN文件夹 ...

  3. .NetCore(Avalonia) 项目dll混淆,Ubuntu 或者deepin操作系统 deb安装包解压,重新打包

    .NetCore(Avalonia) 项目dll混淆,deb安装包解压,重新打包 本文分为两部分,一部分是介绍使用 DotNetReactor6.0 及以上版本混淆.netcore项目的dll. 另一 ...

  4. mvn打war包以及解压包的方法

    有时候我们需要查看打成war包之后的目录,如果是maven项目我们可以直接用maven打包. 1.maven打包: 第一种: mvn package 如果不行先 mvn clean一下 第二种:(掌握 ...

  5. linux下rar包的解压方法

    linux下rar包的解压方法 学习了:https://blog.csdn.net/yonggeit/article/details/72190246?utm_source=itdadao&u ...

  6. war包的解压与打包

    转: war包的解压与打包 2018年03月22日 14:59:56 Jitwxs 阅读数:21421   版权声明:本文版权归Jitwxs所有,欢迎转载,但未经作者同意必须保留原文链接. https ...

  7. [Java] Java 打包成jar包 和 解压jar包

    解压jar包 jar xf xxx.jar 打包成jar包 方法一:通过jar命令 jar命令的用法: 下面是jar命令的帮助说明: 用法:jar {ctxui}[vfm0Me] [jar-file] ...

  8. 【Linux】war包的解压与压缩

    现在存在一个war包test.war(以下是在Linux上操作) 1.解压war包 jar –xvf test.war 说明:直接解压到当前文件夹,如果需要解压到指定的文件夹下,需要将test.war ...

  9. src.rpm包的解压

    有时候,我们在找源码包时候,发现有src.rpm的包:而不是tar.gz/tgz/zip结尾的. 那么如何去看这个src.rpm里面的详细信息呢? 看完下面这个例子,基本上明白了. 1,首先,生成sp ...

随机推荐

  1. [转]Android开发要看的网站(不断更新中)

    Android网址或Blog Android官网 身为Android开发者不知道这个网站就太说不过去了,上面有你任何你需要的东西 Android Developers Blog Android官网博客 ...

  2. MySQL学习随笔--通过实例理解merge ,temptable算法的差异

    实例1 使用视图的两种算法merge和temptable分别统计 表tb_phone中market_price大于4000的手机,然后查询视图查找出小于6000的手机 简单总结最终获取的结果:查询出m ...

  3. Node.js——render封装

    封装 挂在到res上

  4. MySql 基础知识-常用命令及sql语句

    一.常用mysql命令行命令 1,启动mysql服务 net start mysql.      停止mysql服务 net stop mysql 2,netstart -na|findstr 330 ...

  5. sql server 强制关闭连接

    USE master; GO DECLARE @SQL VARCHAR(MAX); SET @SQL='' SELECT @SQL=@SQL+'; KILL '+RTRIM(SPID) FROM ma ...

  6. Linux之基础命令——打包压缩

    tar(备份与打包) linux中tar命令相当于win下的多个文件压缩成一个压缩文件. -c:创建新的备份文件 -x:还原压缩的备份文件 -f:需要备份归档的文件名 -j:使用bzip2解压缩 -z ...

  7. shell高级用法

    参考链接: http://bbs.chinaunix.net/forum.php?mod=viewthread&tid=218853&page=7#pid1628522

  8. java_String类的功能

    String类使用了final修饰不能被继承 实现类Serializable接口,字符串支持序列化 实现了Comparable接口,字符串可以比较大小 内部定义final char[] value用于 ...

  9. filezilla server FTP 安装报错 "could not load TLS network. Aborting start of administration interface"

    filezilla server FTP 安装报错   "could not load TLS network. Aborting start of administration inter ...

  10. cc.AudioSource

    cc.AudioSource1:AudioSource组件是音频源组件, 发出声音的源头2: AudioSource组件面板: clip: 声源的播放的音频对象: AudioClip, mp3, wa ...