直接上例子,安裝一個golang項目,用supervisor來維持,用deb來安裝過程
有一個 stb目錄,下面有三個子文件夾,一個etc存放supervisor的配置,一個opt存放編譯好的可執(zhí)行文件,
stb
----Debian
--------control
--------preinst
--------postinst
----etc
--------supervisor
------------conf.d
---------------opera.conf(supervisor配置文件)
----opt
--------opera(可執(zhí)行文件)
1.Debian 軟件包內(nèi)容解釋
Debian 軟件包中,DEBIAN 目錄包含了軟件包的控制信息和安裝/卸載腳本等元數(shù)據(jù)文件。這些文件對于管理軟件包的安裝、配置和卸載非常重要。以下是一些常見的 DEBIAN 目錄中的文件和它們的作用及用法:
control 文件:
作用:包含軟件包的元數(shù)據(jù)信息,如軟件包名稱、版本、依賴關(guān)系、描述等。
用法:這個文件由軟件包維護(hù)者編輯,以描述軟件包的特性和依賴關(guān)系。它遵循特定的格式,以便 dpkg 工具能夠正確解析和處理這些信息。
preinst、postinst、prerm、postrm 腳本文件:
作用:這些文件包含了軟件包在安裝前、安裝后、卸載前和卸載后執(zhí)行的腳本命令。它們用于執(zhí)行特定的操作,如配置文件、創(chuàng)建用戶、啟動服務(wù)等。
用法:軟件包維護(hù)者可以使用這些腳本文件來自定義軟件包的安裝和卸載過程。這些腳本會在相關(guān)操作時由 dpkg 工具自動執(zhí)行。
conffiles 文件:
作用:列出了軟件包安裝后的配置文件列表。這有助于 dpkg 工具識別哪些文件是配置文件,以便在升級軟件包時保留用戶定制的配置。
用法:這個文件是由 dpkg-deb 自動生成的,通常不需要手動編輯。它用于確保在軟件包更新時不會覆蓋用戶自定義的配置文件。
templates 文件:
作用:用于包含 debconf 模板,允許軟件包與用戶進(jìn)行交互以獲取配置信息。
用法:軟件包維護(hù)者可以使用 debconf 模板在安裝軟件包時向用戶提出問題,以定制軟件包的配置。這些模板通常在 postinst 腳本中使用。
md5sums 文件:
作用:包含了軟件包中文件的 MD5 校驗和,用于驗證軟件包文件的完整性。
用法:這個文件是由 dpkg-deb 自動生成的,通常不需要手動編輯。它用于確保軟件包在傳輸或存儲過程中沒有損壞或被篡改。
2.其他文件作用(etc,opt)
這些不是必須的,看自己按需加其他的目錄,
比如我這里,這兩個文件會在安裝時,自動對應(yīng)到linux 的 etc 和 opt,如果有其他的目錄,也是同樣道理,執(zhí)行 dpkg -i 生成的deb安裝包,會在我的linux 的 /etc 目錄下生成 supervisor/conf.d/opera.conf,同時自動會把 opt內(nèi)的文件資源,對應(yīng)到linux 的 /opt 目錄下