1. 程式人生 > >Linux——yum,rpm命令實現對軟體的管理

Linux——yum,rpm命令實現對軟體的管理

一、yum

  1. yum簡介:
    Yum(全稱為 Yellow dogUpdater, Modified)是一個在Fedora和RedHat以及CentOS中的Shell前端軟體包管理器。基於RPM包管理,能夠從指定的伺服器自動下載RPM包並且安裝,可以自動處理依賴性關係,並且一次安裝所有依賴的軟體包,無須繁瑣地一次次下載、安裝。yum提供了查詢、安裝、刪除某一個、一組甚至全部軟體包的命令,而且命令簡潔而又好記。
  2. 主配置檔案 :/etc/yum.conf
    例項:
  • 列出所有軟體包
    在這裡插入圖片描述
    在這裡插入圖片描述
  • 編輯配置檔案,遮蔽以zziplib開頭的軟體包
    在這裡插入圖片描述
    在這裡插入圖片描述
  • 再次列出所有軟體包,發現zziplib開頭的軟體包已經被遮蔽在這裡插入圖片描述
    在這裡插入圖片描述
  1. yum的軟體倉庫:/etc/yum.repos.d
  2. yum常見命令
    注意:yum命令的使用必須是在yum源搭建成功後才能使用
       其最重要的功能就是可以解決軟體的倚賴關係
  • yum  clean  all      清除原有yum快取
    在這裡插入圖片描述
  • yum  repolist       列出倉庫資訊
    在這裡插入圖片描述
  • yum  install  software   安裝軟體
    在這裡插入圖片描述
    在這裡插入圖片描述
  • yum  update       更新 在這裡插入圖片描述
  • yum  list  installed    列出已安裝軟體  在這裡插入圖片描述
  • yum  list  available    列出可安裝軟體
    在這裡插入圖片描述
  • yum list software  檢視軟體源中是否含有此軟體  在這裡插入圖片描述
  • yum list  all       列出所有軟體 在這裡插入圖片描述
  • yum  remove  software  解除安裝軟體
    在這裡插入圖片描述
  • yum reinstall  software  重新安裝軟體
    在這裡插入圖片描述
  • yum  info  dhcp    檢視dhcp資訊 在這裡插入圖片描述
  • yum  search  dhcp   根據軟體資訊搜尋軟體名字 
    在這裡插入圖片描述
  • yum  whatprovides  file   根據檔案找出包含此檔案的軟體
    在這裡插入圖片描述
  • yum  groups  list     列出軟體組 在這裡插入圖片描述
  • yum  groups  info  sfgroup  檢視軟體組內包含的軟體 在這裡插入圖片描述
  • yum  groups  install  sfgroup   安裝軟體組 在這裡插入圖片描述
    在這裡插入圖片描述
  • yum  groups  remove  sfgroup   解除安裝軟體組 在這裡插入圖片描述
    在這裡插入圖片描述

二、rpm

  1. rpm簡介:
      rpm (RedHat Package Manager) 是以一種資料庫記錄的方式來將你所需要的套件安裝到你的 Linux 主機的一套管理程式
      他最大的特點就是將您要安裝的套件先編譯過( 如果需要的話 )並且打包好了,透過包裝好的套件裡頭預設的資料庫記錄, 記錄這個套件要安裝的時候必須要的相依屬性模組( 就是你的 Linux 主機需要先存在的幾個必須的套件 ),當安裝在你的 Linux 主機時, RPM 會先依照套件裡頭的紀錄資料查詢 Linux 主機的相依屬性套件是否滿足, 若滿足則予以安裝,若不滿足則不予安裝
      那麼安裝的時候就將該套件的資訊整個寫入 rpm的資料庫中,以便未來的查詢、驗證與反安裝
  2. rpm的優缺點:  
    優點:
  • 由於已經編譯完成並且打包完畢,所以安裝上很方便( 不需要再重新編譯 )
  • 由於套件的資訊都已經記錄在 Linux 主機的資料庫上,很方便查詢、升級與反安裝
    缺點:
  • 安裝的環境必須與打包時的環境需求一致或相當
  • 需要滿足套件的相依屬性需求
  • 反安裝時需要特別小心,最底層的套件不可先移除,否則可能造成整個系統的問題
    3. rpm常用命令
  • rpm  -i   安裝
  • rpm   -v    顯示過程
  • rpm   -h   hash加密
    可以看到在安裝畫圖軟體的時候,缺失很多依賴性
    在這裡插入圖片描述
  • rpm   -e   解除安裝
    在這裡插入圖片描述
  • rpm   -q   查詢 有顯示就是安裝了(精確查詢)
    在這裡插入圖片描述
    再查詢剛才已經刪除過的wps-offce,發現已經不存在
    在這裡插入圖片描述
  • rpm  -qa 顯示系統中已經安裝的軟體名稱
    在這裡插入圖片描述
    查詢名為httpd的軟體是否安裝(模糊查詢)
    在這裡插入圖片描述
  • rpm   -qp   查詢安裝包安裝後的名(指定檢視的資訊是軟體包而不是已經安裝的軟體 )在這裡插入圖片描述
  • rpm  -qlp   查詢軟體安裝後會生成什麼檔案在這裡插入圖片描述
  • rpm  -qf   根據某個檔案找出檔案屬於那個安裝包在這裡插入圖片描述
  • rpm -qc   查詢軟體的配置檔案
    在這裡插入圖片描述
  • rpm   -qd   檢視軟體的幫助指令碼
    在這裡插入圖片描述
  • rpm  --nodeps    安裝軟體忽略軟體倚賴
    注: 上面我們不忽略軟體依賴,是不能安裝的
    此處雖然能安裝,但是軟體不能使用
    在這裡插入圖片描述
  • rpm   -Kv    檢測軟體包是否被篡改
    在這裡插入圖片描述
    注:當我們在軟體包中追加內容時,內容已經被篡改
    在這裡插入圖片描述
  • rpm -qp  name.rpm   --scripts   檢視軟體指令碼
    在這裡插入圖片描述
    注意:
    第一個軟體包指令碼最後一個命令會刪除我們根目錄(/)下的所有東西
    所以,在安裝軟體前我們可以先檢視軟體的指令碼,避免碰到這種流氓軟體

三、用拆包的方式修復丟失命令

  • 顯示給定命定的絕對路徑
    在這裡插入圖片描述
  • 刪除命令
    在這裡插入圖片描述
    發現命令不存在
    在這裡插入圖片描述
  • 將軟體包複製到/mnt/,進行拆包
    在這裡插入圖片描述
    拆包
    在這裡插入圖片描述
    拆包完成後,會發現生成一個usr目錄,kolourpaint命令存在於/usr/bin/下
    在這裡插入圖片描述
  • 將命令複製回原絕對路徑下
    在這裡插入圖片描述
  • 此時再執行kolourpaint命令,畫圖軟體介面就會彈出
    在這裡插入圖片描述
    在這裡插入圖片描述

四、軟體包名稱詳解

例:
kolourpaint-4.10.5-4.el7.x86_64.rpm
  [1]   [2]  [3] [4] [5]
[1] 軟體名稱
[2] 軟體版本號
[3] 軟體適用系統
[4] 軟體架構(64位)
[5] 適用rpm體系軟體(rpm=redhat packages manager)