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: mysoftwareversion: 2016-02-26section: freepriority: optionaldepends: libssl.0.0.so, libstdc++2.10-glibc2.2suggests: opensslarchitecture: i386installed-size: 66666maintainer: simon @ newdivide7037#gmail.comprovides: mysoftwaredescription: just for test (此處必須空一行再結束)
使用dpkg命令製作deb包製作如下目錄及檔案:
control檔案內容:
postinst檔案內容:
# !/bin/shecho "my deb" >/home/mydeb.log
postrm檔案內容:
# !/bin/shrm -rf /home/mydeb.log
完成第一步的製作目錄及檔案後可以給做好的mydeb目錄進行打包成.deb包
$ dpkg -b mydeb mydeb.deb #第乙個引數為將要打包的目錄名, #第二個引數為生成包的名稱
現在完成了deb包的製作。
deb 安裝 linux下製作deb的方法總結
deb簡介 deb是unix系統 其實主要是linux 下的安裝包,基於 tar 包,因此本身會記錄檔案的許可權 讀 寫 可執行 以及所有者 使用者組。由於 unix 類系統對許可權 所有者 組的嚴格要求,而 deb 格式安裝包又經常會涉及到系統比較底層的操作,所以許可權等的設定尤其重要。deb包使...
linux下 deb檔案安裝
deb是debian linux的安裝格式,跟red hat的rpm非常相似,最基本的安裝命令是 dpkg i file.deb dpkg 是debian package的簡寫,是為debian 專門開發的套件管理系統,方便軟體的安裝 更新及移除。所有源自debian的linux發行版都使用dpkg...
linux下製作deb的方法總結
deb簡介 deb是unix系統 其實主要是linux 下的安裝包,基於 tar 包,因此本身會記錄檔案的許可權 讀 寫 可執行 以及所有者 使用者組。由於 unix 類系統對許可權 所有者 組的嚴格要求,而 deb 格式安裝包又經常會涉及到系統比較底層的操作,所以許可權等的設定尤其重要。deb包使...