• 对一个deb包的解压、改动、又一次打包全过程方法


    /*********************************************************************
     * 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 :_(


  • 相关阅读:
    yum源
    存储计量单位排序
    博客园代码高亮
    磁盘配置
    软件包安装
    网络配置
    用户、组及权限控制
    Android开发项目中常用到的开源库
    使用百度地图时,Application类的onCreate执行两次的解决方案
    计算从1到n中,出现某位数字的次数
  • 原文地址:https://www.cnblogs.com/cynchanpin/p/7145354.html
Copyright © 2020-2023  润新知