对一个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 :_(
对一个deb包的解压、改动、又一次打包全过程方法的更多相关文章
- (转)对一个deb包的解压、修改、重新打包全过程方法
转自:https://blog.csdn.net/yygydjkthh/article/details/36695243 Reference: http://www.debian.org/doc/ma ...
- Ubuntu下deb包的解压、打包、安装、卸载及常用命令参数
1.首先下载deb包,比如:将其放在 /home/tools/ 根目录下: 2.进入到tools根目录下的终端,输入下面命令创建文件夹extract,并在extract文件夹下创建DEBIAN文件夹 ...
- .NetCore(Avalonia) 项目dll混淆,Ubuntu 或者deepin操作系统 deb安装包解压,重新打包
.NetCore(Avalonia) 项目dll混淆,deb安装包解压,重新打包 本文分为两部分,一部分是介绍使用 DotNetReactor6.0 及以上版本混淆.netcore项目的dll. 另一 ...
- mvn打war包以及解压包的方法
有时候我们需要查看打成war包之后的目录,如果是maven项目我们可以直接用maven打包. 1.maven打包: 第一种: mvn package 如果不行先 mvn clean一下 第二种:(掌握 ...
- linux下rar包的解压方法
linux下rar包的解压方法 学习了:https://blog.csdn.net/yonggeit/article/details/72190246?utm_source=itdadao&u ...
- war包的解压与打包
转: war包的解压与打包 2018年03月22日 14:59:56 Jitwxs 阅读数:21421 版权声明:本文版权归Jitwxs所有,欢迎转载,但未经作者同意必须保留原文链接. https ...
- [Java] Java 打包成jar包 和 解压jar包
解压jar包 jar xf xxx.jar 打包成jar包 方法一:通过jar命令 jar命令的用法: 下面是jar命令的帮助说明: 用法:jar {ctxui}[vfm0Me] [jar-file] ...
- 【Linux】war包的解压与压缩
现在存在一个war包test.war(以下是在Linux上操作) 1.解压war包 jar –xvf test.war 说明:直接解压到当前文件夹,如果需要解压到指定的文件夹下,需要将test.war ...
- src.rpm包的解压
有时候,我们在找源码包时候,发现有src.rpm的包:而不是tar.gz/tgz/zip结尾的. 那么如何去看这个src.rpm里面的详细信息呢? 看完下面这个例子,基本上明白了. 1,首先,生成sp ...
随机推荐
- 面向对象编程(OOP)基础知识(一)
Java是一个支持并发.基于类和面向对象的计算机编程语言. 下面列出了面向对象软件开发的优点: 1.代码开发模块化,更易维护和修改. 2.代码复用. 3.增强代码的可靠性和灵活性. 4.增加代码的可理 ...
- Python_练习_VS清理器
#导入os import os #创建列表放入后缀 d=[ '.txt','obj','tlog','lastbuildstate','idb','pdb','pch','res','ilk','sd ...
- sql server使用的注意点及优化点 自备
1.字符类型建议采用varchar/nvarchar数据类型,并且禁止使用varchar(max).nvarchar(max) 2.金额货币建议采用money数据类型 (*) 3.自增长标识建议采用 ...
- thinkphp5入口文件对应模块绑定
在配置文件config.php中找到或者添加 // 入口自动绑定模块 'auto_bind_module' => true, 修改其属性为true
- linux 批量修改文件名 文件名只保留部分,去掉部分
问题:linux系统中文件名包含中文,导致页面访问不了文件.就是上条博客中的解决方法二遗留问题. 文件名中有以下格式:TC2_诺而达铜管(中山)有限公司.pdf ,要改为TC2.pdf,去掉中文部分 ...
- ORM之创建数据库
ORM之创建数据库 样板:创建表名为UserInfo的表,表的主键可自行写,Django的ORM也可自行创建. from django.db import models class UserInfo( ...
- vue-router 根据路由动态添加目录 控制目录权限
<template> <el-row class="el-menu" > <el-menu router :default-active='$rout ...
- LeetCode(60) Permutation Sequence
题目 The set [1,2,3,-,n] contains a total of n! unique permutations. By listing and labeling all of th ...
- 技能CD 效果 shader
技能CD特效 这个效果主要是利用反正切函数完成.atan2(x,y)的返回值是[-PI,PI],这个支持4个象限的反正切函数.关于圆角计算,在上篇文章中有介绍. 现在,我们来看看反正切函数的效果: 在 ...
- ASP.NET MVC的帮助类HtmlHelper和UrlHelper
在ASP.NET MVC框架中没有了自己的控件,页面显示完全就回到了写html代码的年代.还好在asp.net mvc框架中也有自带的HtmlHelper和UrlHelper两个帮助类.另外在MvcC ...