如何在Debian和Ubuntu下重新打包Deb檔案

行者武松發表於2018-03-13

本文將會為 Ubuntu、Linux Mint 和 Debian GUN/Linux 使用者講述,如何在它們基於Debian的Linux作業系統上輕鬆的解壓和重新打包.deb檔案。

有時候你在生活中會碰到這樣的問題,你想要修改.deb檔案的部分內容,然後重新打包。下面的例子是剛發生在我身上的真實經歷。一位Linux開發者為一個軟體構建了一個Debian包(.deb),我也成功地將它安裝在我的裝載Ubuntu的電腦上。

當我試圖從一個Git庫中檢索一些檔案時,它總是卡頓,很顯然,該軟體並沒有正常工作。我知道安裝的檔案在哪裡(/opt目錄),所以,我搜查了程式碼並適當地將部分問題修復。之後,當程式試圖檢索需要的包時不再卡頓。

所以長話短說,我要將.deb檔案解包,替換上我的補丁檔案,然後再重新打包回來。這樣我可以其它電腦上安裝,或者將修正的包檔案發給我的朋友。我要怎麼做呢?

在網路上搜尋問題的答案,我發現一個名叫ailoo.net的小型部落格,它給出類似這樣解釋:

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” 資料夾中生成。

這就是本次教程!牢牢地記住上面的命令吧,在你執行第三條命令後,可以通過你的預設檔案管理器,用一個圖形化的文字編輯器視覺化地修改檔案。如果你在學習本教程時遇到問題,不要猶豫,在下面給我們寫下評論。

原文釋出時間:2017-02-15

本文來自雲棲社群合作伙伴“Debian社群”,瞭解相關資訊可以關注“Debian社群”。


相關文章