rpm 詳解

 rpm 包詳解

程序包的命名格式:name-VERSION.tar.gz

拆包:主包和分包

主包:name-VERSION-release.arch.rpm

支包:name-function-VERSION-release.arch.rpm

 

注意:程序包之間有時會存在依賴關系,依靠前端工具解決依賴關系

yum

Rhel系列系統上的rpm包管理工具

apt-get

debian/ubuntu包管理前端工具

zipper

suserpm包管理工具

dnf

Fedora 22+系統上的rpm包管理前端工具

 

程序包管理器:位置/var/lib/rpm/

 

 

rpm命令:rpm[OPTION]+PACKETFILE

*安裝:-i/–install

*升級:-U/–update,

         -F/–freshen

*卸載:-e/–erase

*查詢:-q/–query

*校驗:-V/–verify

*數據庫維護:–builddb,–initdb

 

 

rpm安裝

rpm
{-i|–install} [install-options] PACKAGE_FILE …

rpm -ivh +PACKETFILE

-ivh:i是安裝;v是顯示詳細信息(vv)更詳細的輸出;h輸出進度條,每個#表示2%進度

       –test:測試安裝,檢查并報告依賴關系及沖突消息等

       –nodeps:忽略依賴關系;(不建議)

       –replacepkgs:重新安裝

注意:rpm包可以自帶腳本

perinstall

安裝過程開始之前運行的腳本

%pre

postinstall

安裝過程完成之后運行的腳本

%post

preuninstall

卸載過程真正開始執行之前運行的腳本

%pre

postuninstall

卸載過程完成之后運行的腳本

%postun

 

 

rpm升級:

rpm {-U|–upgrade} [install-options]
PACKAGE_FILE …

rpm {-F|–freshen} [install-options]
PACKAGE_FILE …

-U存在舊包,想刪除舊包安裝新包就用-Uvh

-F在舊包的基礎上升級,就用-Fvh

 

rpm降級:–oldpackage

 

注意:1、不要對內核做升級,Linux支持多內核版本并存,因此,直接安裝新版本內核

         2、如果某原程序包的配置文件安裝后曾被修改過,升級時,新版本的程序提供的同一個配置文件不會覆蓋原有版本的配置文件,而是把新版本的配置文件重命名(FILENAME.rpmnew)后提供

 

 

rpm卸載

rpm -e  PACKGE_NAME..

       –allmatches 卸載所有匹配指定名稱的程序包的各種版本

       –nodeps 忽略依賴關系

       –test 測試卸載

 

 

rpm查詢

rpm +OPTION +PACKGE_NAME

       -qa 查詢所有安裝的包

       -qf 查詢所有已經安裝過的包

       -qp 用于實現對未安裝程序包的查詢

       -ql  查詢程序安裝生成的多有文件列表

       -qi 查詢軟件包的詳細信息

       -qc 查詢指定的程序包提供的配置文件

       -qd 查詢指定的程序包提供的文檔

       -q
–provides
列出指定的程序包提供的所有的CAPABILITY

       -qR 查詢指定的程序包的依賴關系

 

 

rpm校驗

rpm
-V +PACKAGE_NAME

       如未導入則導入公鑰:rpm –import  /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-(6/7)

 

 

數據庫的重建

rpm {–initdb|–rebuilddb}
[–dbpath DIRECTORY] [–root DIRECTORY]

       –initdb:初始化數據庫,當前無任何數據庫可實始化創建一個新的;當前有時不執行任何操作;

       –rebuilddb:重新構建,通過讀取當前系統上所有已經安裝過的程序包進行重新創建;

rpm 詳解rpm 詳解

 rpm 詳解

原創文章,作者:N27_flypig,如若轉載,請注明出處:http://www.www58058.com/84871

(0)
N27_flypigN27_flypig
上一篇 2017-08-17 18:28
下一篇 2017-08-19

相關推薦

  • 系統啟動和內核管理

    Linux組成 Linux:kernel+rootfs kernel:進程管理、內存管理、網絡管理、驅動程序、文件系統、安全功能 rootfs:程序和glibc 庫:函數集合,function,調用接口(頭文件負責描述) 過程調用:procedure,無返回值; 函數調用:function;有返回值,可以賦值于變量中; 程序:二進制執行文件 包括根目錄以及包…

    Linux干貨 2017-05-14
  • 第三周作業

    1、列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次,則只顯示一次即可。     who | cut -d ' ' -f 1 | uniq 2、取出最后登錄到當前系統的用戶的相關信息。    egrep "^$(who | tail -1 | cut -d ' …

    Linux干貨 2016-12-19
  • Linux-raid的工作原理與管理

    本章內容:        1、RAID詳細描述        2、mdadm 工具        3、創建raid        4、磁盤陣列的管理 RAID描述:     &nb…

    2017-06-24
  • linux文件、目錄基本操作命令及bash特性介紹

    1、文件層級FHS介紹: Filesystem Hierarchy Standard(文件系統層次化標準)的縮寫,多數Linux版本采用這種文件組織形式,類似于Windows操作系統中c盤的文件目錄,FHS采用樹形結構組織文件。 FHS定義了系統中每個區域的用途、所需要的最小構成的文件和目錄,同時還給出了例外處理與矛盾處理。 /:linux文件系統根目錄 /…

    2017-09-17
  • bash腳本基礎認知

    編程基礎:程序:指令+數據                過程式:以指令為中心,數據服務于指令              &nbs…

    Linux干貨 2017-03-02
  • 馬哥教育網絡班21期+第9周課程練習

    1、寫一個腳本,判斷當前系統上所有用戶的shell是否為可登錄shell(即用戶的shell不是/sbin/nologin);分別這兩類用戶的個數;通過字符串比較來實現; #!/bin/bash while read line; do     if [[ $line&n…

    Linux干貨 2016-09-06
欧美性久久久久