---
author: ''
category: 技术
comments_data: []
count:
  commentnum: 0
  favtimes: 0
  likes: 1
  sharetimes: 0
  viewnum: 19746
date: '2013-12-30 21:06:00'
editorchoice: false
excerpt: "以下教程将会为Ubuntu、Linux Mint和Debian GUN/Linux用户讲述，如何在它们基于Debian的Linux操作系统上轻松的解压和重新打包.deb文件。\r\n\r\n有时候你在生活中会碰到这样的问题，你想要修改.deb文件的部分内容，然后重
  \ ..."
fromurl: ''
id: 2428
islctt: true
largepic: /images/p/201312/30/2100095l8mokmv52wzp54k.jpg
permalink: /article-2428-1.html
pic: /images/p/201312/30/2100095l8mokmv52wzp54k.jpg.thumb.jpg
related: []
reviewer: ''
selector: ''
summary: "以下教程将会为Ubuntu、Linux Mint和Debian GUN/Linux用户讲述，如何在它们基于Debian的Linux操作系统上轻松的解压和重新打包.deb文件。\r\n\r\n有时候你在生活中会碰到这样的问题，你想要修改.deb文件的部分内容，然后重
  \ ..."
tags:
- Linux
- Debian
- Ubuntu
- 打包
- Deb
- 技巧
- 教程
thumb: false
title: 如何在Debian和Ubuntu下重新打包Deb文件
titlepic: false
translator: Luoxcat
updated: '2013-12-30 21:06:00'
---

**以下教程将会为Ubuntu、Linux Mint和Debian GUN/Linux用户讲述，如何在它们基于Debian的Linux操作系统上轻松的解压和重新打包.deb文件。**


![](/images/p/201312/30/2100095l8mokmv52wzp54k.jpg)


有时候你在生活中会碰到这样的问题，你想要修改.deb文件的部分内容，然后重新打包。不过只有你真正深入了解计算机才能完成这样的黑客技巧。


下面的例子是刚发生在我身上的真实经历。一位Linux开发者为一个软件构建了一个Debian包（.deb），我也成功地将它安装在我的装载Ubuntu的电脑上。


当我试图从一个Git库中检索一些文件时，它总是卡顿，很显然，该软件并没有正常工作。我知道安装的文件在哪里（/opt目录），所以，我搜查了代码并适当地将部分问题修复。之后，当程序试图检索需要的包时不再卡顿。


所以，长话短说，我要将.deb文件解包，替换上我的补丁文件，然后再重新打包回来。这样我可以其它电脑上安装，或者将修正的包文件发给我的朋友。我要怎么做呢？


在网络上搜索问题的答案，我发现一个名叫[ailoo.net](http://ailoo.net/2009/06/repack-a-deb-archive-with-dpkg-deb/)的小型博客，它给出类似这样解释：



```
mkdir -p extract/DEBIAN
dpkg-deb -x package.deb extract/
dpkg-deb -e package.deb extract/DEBIAN [...do something, e.g. edit the control file...]
mkdir build
dpkg-deb -b extract/ build/

```

这五条命令将奇迹般地完成工作。让我为你解释一下：


* 第一条命令创建了一个名为“extract”文件夹和一个名为“DEBIAN”的子文件夹；
* 第二条命令会从你的.deb包提取一些文件到“extract”文件夹；
* 第三条命令会解压.deb包的内容到“DEBIAN”子文件夹，在那里你就可以修改／补丁你想要的文件；
* 第四条命令建立一个名为“build”的文件夹；
* 而第五条命令会将修改后的文件重新构建到一个新的.deb包中，并在 “build” 文件夹中生成。


这就是本次教程！牢牢地记住上面的命令吧，在你执行第三条命令后，可以通过你的默认文件管理器，用一个图形化的文本编辑器可视化地修改文件。如果你在学习本教程时遇到问题，不要犹豫，在下面给我们写下评论。




---


via: <http://news.softpedia.com/news/How-to-Repack-Deb-Files-on-Debian-and-Ubuntu-404930.shtml>


译者：[Luoxcat](https://github.com/Luoxcat) 校对：[Caroline](https://github.com/carolinewuyan)


本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出