如何在Debian和Ubuntu下重新打包Deb檔案
本文將會為 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
相關文章
- docker新增檔案重新打包Docker
- 在Ubuntu/Debian上用Unison來同步檔案Ubuntu
- debian Linux下製作deb包的簡便方法(轉)Linux
- Android Apk 檔案反編譯和重新打包的過程分析AndroidAPK編譯
- 如何在 Ubuntu 上比較 PDF 檔案Ubuntu
- 如何在 Debian/Ubuntu 上手動安裝安全更新?Ubuntu
- 如何在Ubuntu/Debian Linux編寫C程式UbuntuLinuxC程式
- 如何在 Ubuntu/Fedora/Debian 中安裝 GitLabUbuntuGitlab
- ubuntu下檔案複製Ubuntu
- ubuntu下修改host檔案Ubuntu
- ubuntu下修改hosts檔案Ubuntu
- ubuntu 下修改host檔案Ubuntu
- Debian/Ubuntu hosts檔案中的 127.0.1.1主機地址Ubuntu
- Linux命令技巧:如何在Linux下重新命名多個檔案Linux
- 如何在CentOS 7、Ubuntu 16.04和Debian 9中安裝Golang 1.8.3CentOSUbuntuGolang
- 如何在Ubuntu上使用FreeFileSync同步檔案Ubuntu
- 如何在 Ubuntu 上使用 ZFS 檔案系統Ubuntu
- ubuntu 下mysql匯入和匯出.sql檔案UbuntuMySql
- Debian 二進位制檔案(華文宋體字型)打包解包
- ubuntu下如何用命令列執行deb安裝包Ubuntu命令列
- Linux有問必答:如何在Linux下重新命名多個檔案Linux
- 如何在雙啟動或單啟動模式下重新安裝 Ubuntu模式Ubuntu
- 如何下載 Ubuntu 映象檔案?Ubuntu
- Nginx下快取靜態檔案(如css js)Nginx快取CSSJS
- 使用apt install安裝本地deb檔案APT
- iOS 逆向程式設計之外掛和APP打包成一個debiOS程式設計APP
- 在Debian/Ubuntu環境下更新chromeUbuntuChrome
- 如何在 Linux 上重新命名一組檔案Linux
- 如何在 Ubuntu 以及 Debian 中安裝 DHCP 伺服器Ubuntu伺服器
- Debian 打包入門
- 利用ant編譯釋出打包jar檔案和打包api文件為rar檔案編譯JARAPI
- 如何在ubuntu下使用Github?UbuntuGithub
- ubuntu下如何解壓rar檔案Ubuntu
- 修改hosts檔案(windows和Ubuntu)WindowsUbuntu
- 如何在Ubuntu保留檔案系統和備份當前開發板映象Ubuntu
- Debian/Ubuntu下L2TP VPN配置Ubuntu
- 如何在 Debian/Ubuntu 系統中檢查程式包是否安裝?Ubuntu
- Ubuntu 安裝基於 DEB 的 FirefoxUbuntuFirefox