在實際的產品研發和運維過程當中,會有須要將程序部署到幾10、上百甚至幾萬臺Linux服務器集羣的時候。這種狀況下,僅僅是簡單的RPM和yum工具是不夠的。html
如何將Linux軟件包的管理工做變得更加輕鬆,軟件管理服務可以統一,整合不一樣的倉庫和配置等,須要對軟件管理平臺進行統一管理。linux
軟件包管理工具的發展歷程算法
層次一:腳本文件或編譯生成的二進制文件、依賴的動態庫(.so或.dll等)以及配置文件等複製到一個文件夾目錄中centos
層次二:將該文件夾壓縮,生成一個壓縮文件,用校驗算法校驗複製的完整性。 ==》 爲了更加方便且快速地複製到別的機器,且校驗複製過程正確。服務器
層次三:不只支持文件壓縮,還提供依賴維護、腳本的嵌入等功能。 ==》 如.rpm或.deb格式的軟件包運維
從層次二到層次三,是由於咱們想要支持ide
查看軟件包的基本信息工具
讓軟件包具備一些特殊功能,如生成配置文件,服務註冊等ui
軟件依賴檢查.net
升級時最小更新
[]CentOS HowTos https://wiki.centos.org/zh/HowTos
[]Taking the Red Hat Package Manager to the Limit
http://www.rpm.org/max-rpm/index.html
[]Fedora RPM Guide
https://docs.fedoraproject.org/en-US/Fedora_Draft_Documentation/0.1/html-single/RPM_Guide/
[]RPM包rpmbuild SPEC文件深度說明
http://blog.chinaunix.net/uid-20448327-id-3972920.html
[]用 RPM 打包軟件
http://www.ibm.com/developerworks/cn/linux/management/package/rpm/part1/
https://www.ibm.com/developerworks/cn/linux/management/package/rpm/part2/
https://www.ibm.com/developerworks/cn/linux/management/package/rpm/part3/
[]rpm 中文手冊
http://www.jinbuguo.com/redhat/rpm.html
http://www.rpm.org/max-rpm-snapshot/rpm.8.html
http://www.rpm.org/max-rpm-snapshot/rpmbuild.8.html
[]Chapter 16. Making a Package That Can Build Anywher
http://www.rpm.org/max-rpm/ch-rpm-anywhere.html