转自:https://blog.csdn.net/yygydjkthh/article/details/36695243

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

最新文章

  1. 技术笔记:Indy控件发送邮件
  2. Navicat软件中mysql中int、bigint、smallint和tinyint的区别、布尔类型存储以及乱码问题的解决
  3. 计数排序和桶排序(Java实现)
  4. 如何解决cellIndex在IE下兼容性问题
  5. DRUID连接池的实用 配置详解
  6. linux shell 逻辑运算符、逻辑表达式
  7. sublime text3 插件安装
  8. JS里面匿名函数的调用 & 变量作用域的实验
  9. oracle数据操纵语言(DML)data manipulation language(续集)
  10. Buffer Cache(缓冲区缓存)篇:缓存区块大小
  11. git checkout 命令详解(转)
  12. 信号量机制DOWN操作和UP操作的详细说明
  13. Swift 路由机制设计
  14. Django-F,Q查询,Templatetags,session,中间件
  15. python爬取中国天气网站数据并对其进行数据可视化
  16. SpringMVC——消息转换器HttpMessageConverter(转)
  17. Apache Spark 2.2.0 正式发布
  18. js的with语句,和debugger语句
  19. valgrind使用指南
  20. Ubuntu+Nginx+uWSGI+Flask应用

热门文章

  1. 搜狐eHR团队-曾经一起奋斗过的~
  2. nginx-1-初识nginx
  3. Twitter基于R语言的时序数据突变检测(BreakoutDetection)
  4. 【转】pam_mysql - MySQL error (Can't connect to local MySQL server through socket
  5. VMware-workstation12.5.6 新建虚拟机 安装 centos6.5
  6. 洗礼灵魂,修炼python(17)--跨平台操作三剑客—os,os.path.sys模块
  7. shell中>/dev/null 2>&1
  8. RESTframework简介
  9. Django之views
  10. Pycharm 安装 idea VIM