程序包管理器(上)
????????一個編譯好的二進制程序應用文件的組成部分有二進制文件、庫文件、配置文件、幫助文件,用戶在安裝時設置繁瑣,而且在用戶升級、卸載等操作時更為麻煩。為了提升使用效率及自動簡化操作,這就迫在眉睫的需要有一款程序包管理器。。
程序包管理器的主要功能它到底有哪些呢?它的主要功能是將編譯好的應用程序的各組成文件打包一個或多個程序包文件,從而方便快捷地實現程序包的安裝、卸載、查詢、升級和校驗等管理操作。而現在主要有四種主流的程序包管理器:(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:不執行程序包的腳本片斷
????????????查看過命令使用信息后,大致演示一下安裝命令的使用方式:
????????????????
????????????????????????????
????????????????
????????????????
????????????????
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:程序包自帶的腳本片斷
????????????????
????????????????
????????????????
????????????????
????????????????
????????
? ??
4)?卸載:
????????指導格式:rpm?{-e|--erase}? [--allmatches]? [--nodeps]
????????????????
????????
5) 校驗:
????????指導格式:rpm {-V|--verify} [select-options] [verify-options]
??????6)數據庫重建
?????????????????數據庫目錄: /var/lib/rpm
? ? ? ? ? ????????????????rpm {--initdb | --rebuilddb}
? ? ? ? ? ? ? ?????initdb: 初始化
? ? ? ? ? ? ? ? ? ? ????????????如果事先不存在數據庫,則新建之,否則,不執行任何操作;
? ? ? ? ? ? ? ?????rebuilddb:重建
? ? ? ? ? ? ? ? ? ? ????????????無論當前存在與否,直接重新創建數據庫 ?
????????????今天先寫到這里,晚些時間我將繼續添加rpm包管理器的前端工具:yum工具,寫的不是很具體到位,如果有哪里說錯了還請大神們指點一二,小弟拜謝~~
轉載于:https://blog.51cto.com/corazon/1689908
總結
- 上一篇: 转发离线安装 Android Studi
- 下一篇: HashMap为什么是线程不安全的?