程序包管理:rpm/yum/編譯

程序包管理:rpm/yum/編譯數據庫

       在紅帽軟件包管理器(RPM)公佈以前要想在Linux系統中安裝軟件只能採起「源碼包」的方式安裝,早期在Linux系統中安裝程序是一件很是困難,耗費耐心的事情,由於大多數的服務程序僅僅提供編譯源碼,須要運維人員自行編譯代碼並解決許多的依賴關係,源碼安裝須要運維人員有不少的知識、高超的技能、甚至很好的耐心才能安裝好一個程序,並且在安裝、升級、卸載時還要考慮到其餘程序、庫的依賴關係,因此管理員在校驗、安裝、卸載、查詢、升級等管理軟件操做時難度很是大。緩存

    而RPM機制則爲解決這些問題而設計的,服務器

       RPM爲「Redhat Package Manager」,因其卓越的優點很快被公衆承認,目前使用範圍也已不侷限在紅帽系統中了。RPM會創建統一的數據庫文件,詳細的記錄軟件信息並可以自動分析依賴關係,很有一些「軟件控制面板」的感受。運維


紅帽軟件包管理器(rpm):ide


查詢軟件的描述信息:rpm -qpi    filename.rpm學習

wKiom1br5WCifCoNAAD_Ci8NX-U294.jpg

列出軟件的文件信息:rpm -qpl    filename.rpmui

wKiom1br5e_iBVM_AAFiq3u-93s502.jpg    

安裝軟件:rpm -ivh    filename.rpmurl

wKiom1br5mux-jxDAADGKY25ZMo531.jpg

升級軟件:rpm  -Uvh filename.rpmspa

wKioL1br52nwlqiYAADEpb1HNLo459.jpg

卸載軟件:rpm   -e      filename.rpmdebug

查詢文件屬於那個RPM:rpm -qf  filenamewKioL1br57-DXcVdAAA03dAr2Kg565.jpg

雖然RPM可以幫助用戶查詢軟件相關的依賴關係,但問題仍是要本身解決,有些大型軟件須要數十個依賴包也是不小的負擔。

Yum軟件倉庫:

Yum倉庫則是爲進一步簡化RPM管理軟件難度而設計的,Yum可以根據用戶的要求分析出所需軟件包及其相關依賴關係,自動從服務器下載軟件包並安裝到系統,聽起來就已經很爽了


wKiom1br4QOwjQG9AABCksPGSFk177.jpg

yum軟件倉庫的使用拓撲圖


用戶可以根據需求來指定Yum倉庫與是否校驗軟件包,而這些只需幾條關鍵詞便可完成,如今來學習下配置的方法.

全部Yum倉庫的配置文件均需以.repo結尾並存放在/etc/yum.repos.d/目錄中的。


[rhel-media]: yum源的名稱,可自定義。

baseurl=file:///media/cdrom :提供方式包括FTP(ftp://..)、HTTP(http://..)、本地(file:///..)

enabled=1 : 設置此源是否可用,1爲可用,0爲禁用。

gpgcheck=1 : 設置此源是否校驗文件,1爲校驗,0爲不校驗。

gpgkey=file:///media/cdrom/RPM-GPG-KEY-redhat-release :若爲校驗請指定公鑰文件地址。

wKioL1br6y6CMzk5AABkXtC9YkY371.jpg

命令做用

yum repolist all   列出全部倉庫。

wKioL1br7JPjmObVAAH9GSDh-oU792.jpg

yum list all  列出倉庫中全部軟件包

wKiom1br7IewJ1V4AAFW3nTNK60903.jpg

yum install 軟件包名稱安裝軟件包

wKiom1br7ViDNn0YAAEFw0ZvlpU641.jpgwKioL1br7hKzGyS2AACAk4Y7hWM307.jpg

yum update 軟件包名稱  升級軟件包

wKioL1br8CDjI3JUAADrhSN0RBA421.jpgyum remove 軟件包  移除軟件包

wKioL1br7wbxEM22AAHxw1P6HeI487.jpg

yum clean all    清除全部倉庫緩存

wKioL1br7yaAMl4wAAB10WVF5Yg331.jpg

yum check-update   檢查可更新的軟件包

wKiom1br8DeQASbrAAGaNqcuXqU700.jpg

yum grouplist 查看系統中已經安裝的軟件包組

wKioL1br8RCBDuD9AAGpFw9p31Q121.jpg

yum groupinstall 軟件包組   安裝指定的軟件包組

wKioL1br8maATEWYAAKVjAF7krc762.jpgyum groupremove軟件包組     移除指定的軟件包組

wKiom1br8pjhqqvPAABnd0Ej9lQ747.jpgyum groupinfo 軟件包組查詢指定的軟件包組信息

wKioL1br8kKAIukpAADvEK5_jXo218.jpg

Yum倉庫中的RPM軟件包能夠是由紅帽官方發佈的,也能夠是第三方組織發佈的,固然用戶也能夠編寫的.

將源碼編譯成rpm包的詳細步驟:

# tar -xvzf glusterfs-2.0.0.tar.gz

# cp glusterfs-2.0.0.tar.gz /usr/src/redhat/SOURCES/

# rpmbuild -ba glusterfs-2.0.0/glusterfs.spec

# cp /usr/src/redhat/RPMS/i386/glusterfs* .

# rm glusterfs-debuginfo-2.0.0-1.i386.rpm

# rpm -ivh glusterfs-*.rpm

相關文章
相關標籤/搜索