linux下製作deb的方法總結

2021-09-28 20:47:32 字數 2425 閱讀 5074

deb簡介

deb是unix系統(其實主要是linux)下的安裝包,基於 tar 包,因此本身會記錄檔案的許可權(讀/寫/可執行)以及所有者/使用者組。 

由於 unix 類系統對許可權、所有者、組的嚴格要求,而 deb 格式安裝包又經常會涉及到系統比較底層的操作,所以許可權等的設定尤其重要。

deb包使用方法

dpkg -c ***.deb // 安裝前根據deb檔案檢視

dpkg -l debname // 安裝後根據包名檢視

dpkg -i ***.deb //安裝deb包,如果提示錯誤,可以加引數—force-all強制安裝,但不推薦這樣做

dpkg -r debname //移除deb包

dpkg -s filepath //檢視某個檔案屬於哪個deb包

dpkg -x ***.deb dirname //釋放安裝內容到dirname目錄中

dpkg -e ***.deb  //釋放控制資訊到當前目錄下的debian子目錄中

deb包的資料組成deb包裡面的結構:debian目錄 和 軟體具體安裝目錄(模擬安裝目錄)(如etc, usr, opt, tmp等)。

控制檔案 描述

control 用了記錄軟體標識,版本號,平台,依賴資訊等資料

preinst 在解包data.tar.gz前執行的指令碼

postinst 在解包資料後執行的指令碼

prerm 解除安裝時,在刪除檔案之前執行的指令碼

postrm 在刪除檔案之後執行的指令碼

control檔案:描述軟體包的名稱(package),版本(version),描述(description)等,是deb包必須劇本的描述性檔案,以便於軟體的安裝管理和索引。為了能將軟體包進行充分的管理,可能還具有以下字段:

section:申明軟體的類別,常見的有`utils』, `net』, `mail』, `text』, `x11′ 等;

priority:申明軟體對於系統的重要程度,如`required』, `standard』, `optional』, `extra』 等;

essential:申明是否是系統最基本的軟體包(選項為yes/no),如果是的話,這就表明該軟體是維持系統穩定和正常執行的軟體包,不允許任何形式的解除安裝(除非進行強制性的解除安裝)

architecture:軟體包結構,如基於`i386′, 『amd64』,`m68k』, `sparc』, `alpha』, `powerpc』 等;

source:軟體包的源**名稱;

depends:軟體所依賴的其他軟體包和庫檔案。如果是依賴多個軟體包和庫檔案,彼此之間採用逗號隔開;

pre-depends:軟體安裝前必須安裝、配置依賴性的軟體包和庫檔案,它常常用於必須的預執行指令碼需求;

suggests:建議安裝的其他軟體包和庫檔案。

control檔案完整示例:

package: mysoftware

version: 2016-02-26

section: free

priority: optional

depends: libssl.0.0.so, libstdc++2.10-glibc2.2

suggests: openssl

architecture: i386

installed-size: 66666

maintainer: simon @ newdivide7037#gmail.com

provides: mysoftware

description: just for test

(此處必須空一行再結束)

使用dpkg命令製作deb包製作如下目錄及檔案:

control檔案內容: 

postinst檔案內容:

# !/bin/sh

echo "my deb" >/home/mydeb.log

postrm檔案內容:

# !/bin/sh

rm -rf /home/mydeb.log

完成第一步的製作目錄及檔案後可以給做好的mydeb目錄進行打包成.deb包

$ dpkg -b mydeb mydeb.deb #第乙個引數為將要打包的目錄名,

#第二個引數為生成包的名稱

現在完成了deb包的製作。

deb 安裝 linux下製作deb的方法總結

deb簡介 deb是unix系統 其實主要是linux 下的安裝包,基於 tar 包,因此本身會記錄檔案的許可權 讀 寫 可執行 以及所有者 使用者組。由於 unix 類系統對許可權 所有者 組的嚴格要求,而 deb 格式安裝包又經常會涉及到系統比較底層的操作,所以許可權等的設定尤其重要。deb包使...

deb 安裝 linux下製作deb的方法總結

deb簡介 deb是unix系統 其實主要是linux 下的安裝包,基於 tar 包,因此本身會記錄檔案的許可權 讀 寫 可執行 以及所有者 使用者組。由於 unix 類系統對許可權 所有者 組的嚴格要求,而 deb 格式安裝包又經常會涉及到系統比較底層的操作,所以許可權等的設定尤其重要。deb包使...

linux的deb包製作

linux的deb包製作 醉清風xf linux的deb包製作 deb包已被廣泛應用但是也在不斷的更新,這裡介紹ubuntu deb包安裝設定使用,幫助大家安裝更新ubuntu deb包系統。製作ubuntu deb包的三種方法 sean s blog 製作ubuntu deb包的三種方法poste...