標籤:資料庫 應用程式 設定檔 程式包rpmlinux
一個編譯好的二進位程式應用檔案的組成部分有二進位檔案、庫檔案、設定檔、協助檔案,使用者在安裝時設定繁瑣,而且在使用者升級、卸載等操作時更為麻煩。為了提升使用效率及自動簡化操作,這就迫在眉睫的需要有一款封裝管理員。。
封裝管理員的主要功能它到底有哪些呢?它的主要功能是將編譯好的應用程式的各組成檔案打包一個或多個程式包檔案,從而方便快捷地實現程式包的安裝、卸載、查詢、升級和校正等管理操作。而現在主要有四種主流的封裝管理員:(1)Debian開發的封裝管理員,封裝管理員叫做dpt封裝管理員,(2)RedHat公司的rpm封裝管理員,(3)Gentoo公司的封裝管理員 (4)ArchLinux封裝管理員。而這四個主流的程式包管理中的紅帽公司的封裝管理員已經成為了Linux程式包的工業標準,所以今天的主角是紅帽公司的rpm管理器。
我們今天會簡單的介紹一下CentOS7系統上的rpm封裝管理員上的命令及使用。主要分為六部分:安裝、卸載、升級、查詢、校正、以及資料庫維護。
rpm :RPM程式包管理命令
1)安裝
指導格式: rpm { -i | install } [ install-options ] PACKAGE_FILE ....
具體用法就是: rpm { 安 裝 命 令 } [ 安 裝 選 項 ] 程式包檔案....
-v:顯示詳細
-vv:顯示更詳細的資訊
-h:以#號顯示安裝的進度,每個#代表2%的進度
-i|install:安裝程式包,安裝後面可以跟具體的安裝程式包的選項
常用安裝選項有:
--tet:測試安裝,但不會真正的執行安裝過程,僅作測試使用.
--nodeps:忽略程式包的依賴關係
--replacepkgs:重新安裝程式包
--nodigest:不檢查包的完整性
--signature:不檢查包的來源合法性
--noscipts:不執行程式包的指令碼片斷
查看過命令使用資訊後,大致示範一下安裝命令的使用方式:
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/72/68/wKiom1Xi4juCQ5fDAAGpWbgDA1c673.jpg" style="float:none;" title="圖片1.png" alt="wKiom1Xi4juCQ5fDAAGpWbgDA1c673.jpg" />
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M01/72/64/wKioL1Xi5FiDUDV9AAGyr36rX8Y203.jpg" style="float:none;" title="圖片2.png" alt="wKioL1Xi5FiDUDV9AAGyr36rX8Y203.jpg" />
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M01/72/68/wKiom1Xi4jyh9ktDAANS0vnC3zU248.jpg" style="float:none;" title="圖片3.png" alt="wKiom1Xi4jyh9ktDAANS0vnC3zU248.jpg" />
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/72/64/wKioL1Xi5FrggoXAAAHy5YzjXhE421.jpg" style="float:none;" title="圖片4.png" alt="wKioL1Xi5FrggoXAAAHy5YzjXhE421.jpg" />
2)升級:
指導格式:rpm {-U|--upgrade} [install-options] PACKAGE_FILE
rpm {-F|--freshen} [install-options] PACKAGE_FILE
此升級命令為兩類:
U|--upgrade:安裝是有舊版本的程式包-->升級,如果沒有舊版本的程式包-->安裝.
F|freshen: 安裝時有舊版本的程式包-->升級,如果沒有舊版本的程式包--> 不做操作
---lodpackage: 降級安裝包的版本
--force:進行強制的操作
升級需要的注意事項:
1、不要對核心進行升級操作,Linux支援多版本的核心並存機制,因此可以直接安裝新版本的核心即可.
2、如果原程式包的設定檔安裝後本修改、升級時,新版本的設定檔不會覆蓋舊版本的設定檔,而是單獨建立一個以.rpmnew結尾的心設定檔.
因為小弟沒有可用相應的包,所以暫不示範升級操作.
3)查詢:
指導格式:rpm {-q|--query} [select-options] [query-options]
查詢選項:
-a:尋找所有ALL
-p:針對尚未安裝的包進行查詢工作
-f:查詢指定的檔案是由哪個程式包產生
-c:查詢程式包的設定檔資訊
-d:查詢程式文檔
-i:詳細資料
-l:查詢包的產生所有檔案
-r:查詢指定的程式包所依賴的功能
--provides:列出指定程式包所提供的功能
--script:程式包內建的指令碼片斷
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/72/64/wKioL1Xi5U3ROzqqAACo3M62vpk864.jpg" style="float:none;" title="圖片5.png" alt="wKioL1Xi5U3ROzqqAACo3M62vpk864.jpg" />
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/72/68/wKiom1Xi4zDyASHGAADqe_t0w_o536.jpg" style="float:none;" title="圖片6.png" alt="wKiom1Xi4zDyASHGAADqe_t0w_o536.jpg" />
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M01/72/64/wKioL1Xi5U2hKvlvAAQsddvfOKA779.jpg" style="float:none;" title="圖片7.png" alt="wKioL1Xi5U2hKvlvAAQsddvfOKA779.jpg" />
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M01/72/68/wKiom1Xi4zGzseBKAAMZWEFt1Oo045.jpg" style="float:none;" title="圖片8.png" alt="wKiom1Xi4zGzseBKAAMZWEFt1Oo045.jpg" />
4) 卸載:
指導格式:rpm {-e|--erase} [--allmatches] [--nodeps]
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/72/64/wKioL1Xi5ZbBK7GOAAGsT6_t41Y979.jpg" title="圖片9.png" alt="wKioL1Xi5ZbBK7GOAAGsT6_t41Y979.jpg" />
5) 校正:
指導格式:rpm {-V|--verify} [select-options] [verify-options]
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/72/68/wKiom1Xi44jjp4nGAALWRT1XNQQ721.jpg" title="圖片10.png" width="529" height="378" border="0" hspace="0" vspace="0" style="width:529px;height:378px;" alt="wKiom1Xi44jjp4nGAALWRT1XNQQ721.jpg" />
6)資料庫重建
資料庫目錄: /var/lib/rpm
rpm {--initdb | --rebuilddb}
initdb: 初始化
如果事先不存在資料庫,則建立之,否則,不執行任何操作;
rebuilddb:重建
無論當前存在與否,直接重新建立資料庫
今天先寫到這裡,晚些時間我將繼續添加rpm包管理器的前端工具:yum工具,寫的不是很具體到位,如果有哪裡說錯了還請大神們指點一二,小弟拜謝~~
封裝管理員(上)