12_02_Linux软件管理之二rpm
2019獨角獸企業重金招聘Python工程師標準>>>
rpm命令:
????? ? rpm:
????????????? ? 數據庫:/var/lib/rpm
????? ? rpmbuild
安裝、查詢、卸載、升級、校驗、數據庫的重建、驗證數據包等工作:
rpm命令:
包組成部分
????? ? 主包:bind-9.7.1-1.el5.i586.rpm
????? ? 子包:bind-libs-9.7.1-1.el5.i586.rpm(bind-libs為子包的包名)
????? ? 包名格式:
????? ? name-version-release(釋放、發布).arch(平臺架構).rpm
eg: ? bind.-major.minor.release-release.arch.rpm
主版本號:重大改進
次版本號:某個子功能發生重大變化
發型號(第一個):修正了部分bug,調整了一點功能
bind-9.7.1.tar.gz
rpm包種類:
????????? ? 二進制格式
????????????????? ? rpm包作者下載源程序,編譯配置完成后,制作成rpm包(這時加上第二個release)
????????????????? ? bind-9.7.1-1.el6(紅帽6).i586(32位).rpm ?(uname ?-a ?查看內核版本)
????????? ? 源碼格式
1、安裝:
rpm ? ?-i ? /PATH/TO/PACKAGE_FILE
????????? ?-h ?:顯示進度,-v:顯示詳細過程
????? ? ? --nodeps ?: 忽略依賴關系,強行安裝
????????? --replacepkgs:重新安裝,替換原有的安裝
????????? ?--force:強行安裝,可以實現重裝或降級
????????? ? --test:測試
2、查詢
rpm ? -q ?PACKAGE_NAME
rpm ?-qa ?:查詢已經安裝的所有的包
rpm ?-qi? ? PACKAGE_NAME:查詢指定包的說明信息
rpm -ql ? ?PACKAGE_NAME :? ? 查詢指定安裝包生成的文件列表
rpm ?-qc ?PACKAGE_NAME : ? 查詢指定安裝包安裝的配置文件
rpm ?-qd ?PACKAGE_NAME:? ? 查詢指定包安裝的幫助文件
rpm ?-q ?--scripts ? PACKAGE_NAME:查詢指定包中包含的腳本
(有四類腳本,安裝前、安裝后、卸載前、卸載后)
rpm ?-qf ? /path/to/somefile ? :查詢指定文件是由哪個rpm包安裝生成的
如果某個rpm包尚未安裝,我們需要查詢其說明信息、安裝以后會生成的文件
rpm ?-qpl ?package_name.rpm
3、升級
rpm -Uvh ? /path/to/new_package_file:如果裝有老版本的,則升級;否則,則安裝;
rpm -Fvh ? /path/to/new_package_file:如果裝有老版本的,則升級;否則,則退出;
降級
rpm ?-ivh ?--oldpackage ? ?package_file
4、卸載
rpm ?-e ?PACKAGE_NAME
????? ? --nodeps?
5、校驗(查看某軟件是否可用)
rpm ? -V ? package_name
6、重建數據庫
????? ? rpm ??
????????????? ? --rebuilddb:重建數據庫,一定會重建數據庫
????????????? ? --initdb:初始化數據庫(沒有建立,有就不建立)
7、檢驗來源合法性,及軟件包完整性;
加密、解密
加密類型:
????? ? 對稱:加密解密使用同一個秘鑰
????? ? 公鑰:一對秘鑰,公鑰,私鑰;公鑰隱含在私鑰中,可以提取出來,并且公開出去;(不是加密數據本身,而是加密數據驗證碼)
????? ? 單向:
/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release ? ? 秘鑰文件
rpm ? ?--import ? ?key ? :導入秘鑰文件
rpm ?-K ? package_file ?:驗證安裝包的合法性
? ?????????? ? dsa,gpg:驗證來源合法性,也即驗證簽名;也可以使用 ?--nosignnature ?,略過此項
????????????? ? sha1,md5:驗證軟件包完整性,也可以使用 ?--nodigest,略過此項
?
轉載于:https://my.oschina.net/captainliu/blog/876323
總結
以上是生活随笔為你收集整理的12_02_Linux软件管理之二rpm的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android开发学习——Android
- 下一篇: 前端学习 -- 颜色