如何練好yum的一招一式

 

工作時間越久,就越有這樣一個深刻體會,一個新知識或者新的技能一個人學習起來并不會覺得吃力,反而要想把你學習的新知識或者新技能給講清楚讓普通人聽得懂才是最難的,之前我寫過一篇博客講述linux下的RPM包管理器,今天寫的練好yum的一招一式,同樣都是都是在linux系統的軟件包的安裝、卸載、升級等功能的,為什么我們還需要yum那,記得一位大哲學家黑格爾說說過這樣一句話“存在即合理”,yum的存在也有合乎情理的,首先讓我們來弄明白yum是什么?

yum全稱為 Yellow dog Updater, Modified,是一個以rpm為基礎包能夠從指定的服務器自動下載rpm包,并且自動解決各軟件包的依賴性關系,一次性安裝好所有制定的軟件包的一個工具,我想,稍微接觸過linux的人都知道rpm包管理器出現,主要是解決早期linux系統管理過程中源代碼安裝的不便以及效率底下的問題,雖然rpm很好的提高了軟件安裝的效率,但是rpm依然沒有解決各軟件包之間的依賴關系,而yum的出現就是自行解決了各軟件包直接的依賴關系,從而又將軟件安裝的效率往前推了一步。

首先讓我們先了解一下yum能為我們做什么,yum的主要功能有三類,倉庫管理;軟件包管理;軟件包組的管理,接下來我們詳細來看yum的三大功能和使用方法:

yum的命令形式一般是如下:yum [options] [command] [package …]

其中的[options]是可選的, [command]為所要進行的操作,[package …]是操作的對象。

1、倉庫管理yum的倉庫管理主要有列出已經配置到的所有可用倉庫、緩存管理、以及自動連接至每個倉庫下載元數據,將其創建緩存

列出可用倉庫:yum     repolist [all|enabled|disabled]       

         緩存管理:yum      clean [ packages | metadata | expire-cache | rpmdb | plugins | all ]

         創建緩存:yum      makecache

2、軟件包管理yum對于程序包的管理主要包括:程序包的列出、程序包的安裝、指定程序包的重新安裝、程序包的升級、程序包的降級、程序包的卸載、程序包的查詢、程序包的搜索等功能;

程序包的列出:yum list

   

程序包的安裝:yum install

此時安裝程序包只需要提供程序包名就可以安裝指定的程序包,如果該指定的程序包有在指定的倉庫中有不同版本,默認會安裝最新版本。

指定程序包的重新安裝:yum reinstall

程序包的升級:yum update

程序包的降級:yum downgrade

程序包的卸載:yum remove

     執行該命令,所有依賴于正卸載的程序包也會一并卸載

程序包的查詢:yum info

程序包的搜索:yum search

3、程序包組管理:程序包組管理的與程序包管理類似,主要包括:顯示列出所有包組、顯示包組詳情、安裝包組、卸載包組、升級包組;

顯示列出所有包組:yum grouplist

顯示包組詳情:yum groupinfo
安裝包組:yum groupinstall

卸載包組:yum groupremove

升級包組:yum groupupdate

以上都是yum的常用命令,同時yum還有常用的選項

     -y:表示自動回答為YES

     –disablerepo=   :臨時禁用指定的倉庫

–enablerepo=    :臨時啟用指定的倉庫

–nogpgchenk:禁止包檢驗

 

 

知道了yum能為我們做什么,那如何使用yum的這些功能那,我們前面曾說過早期的linux安裝程序包是通過直接對源代碼的重新編譯、設置一系列的環境變量和配置文件來時間軟件的安裝,而rpm將安裝的軟件先編譯并打包,通過包裝好的套件中默認的數據庫記錄來實現對軟件包的安裝卸載等查詢工作,最大的特點就是省去編譯的過程,但是各軟件包之間的依賴關系卻需要管理員自行手動解決,而yumrpm為基礎包,通過讀取rpmheader對于該rpm的描述、功能、提供的文件、依賴性等信息,并加以分析出來,自行解決依賴各軟件包的依賴關系,大大提供的部署系統的效率,我們都知道,linux有一個重要的哲學思想,就是一切皆文件,所以對于yum的配置就不得不說yum的配置文件,yum的配置文件有兩類,下面來認識一下yum的配置文件;

主配置文件:/etc/yum.conf

    該配置文件是為各倉庫指向提供公共的配置信息

各倉庫定義的配置文件:/etc/yum.repo.d/*.repo

    給配置文件是倉庫位置的指向以及各種配置信息,該配置文件都以”.repo”結尾,每個repo配置文件中可以配置一個或多個倉庫;

[  ]  :當中是唯一表示該倉庫的名字,所以必須唯一,不能與其他倉庫重復,

name= :是對當前倉庫的描述信息

baseurl=  :指明repositouy的訪問路徑,支持ftp服務器、http服務器、nfs服務器、或本地目錄;

enabled= 0|1}:指明該倉庫是否可被使用

gpgcheck=0|1}:指明是否對程序包做合法性、完整性驗證

gpgkey=  :指明gpgkey的文件路徑

cost=  :指明當前repositouy的訪問開銷

 

下面我們將以CentOS6.7為平臺,創建自己的第一個本地yum

通常情況下,創建本地yum源,也就是以CentOS6.7光盤為yum倉庫從而實現對yum源的配置,步驟如下:

     1:掛載光盤到:/mnt/cdrom

          mount  /dev/cdrom /mnt/cdrom

     2:創建配置文件:vim  /etc/yum.repo.d/localbase.repo

          [localbase]

name=centOS6

baseurl=file:///mnt/cdrom/

gpgcheck=0

enable=0

注意:如果是以本地某個目錄為yum源,需要檢查該目錄是否有repodata文件,如果沒有該文件需要執行createrepo

 

    3:執行yum repolist查看創建的yum源是否生效

repolist.jpg    4:測試安裝httpd軟件

install.jpg

       這時候我們已經看到yum為我們找到了安裝http軟件包,并且安裝成功

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

(1)
zhangzhang
上一篇 2015-11-10 22:40
下一篇 2015-11-10 22:43

相關推薦

  • lvs DR模型

    LVS 負載均衡 使用lvs部署負載均衡服務器  實現4層tcp調度 lvs一共四種模式   分別是NAT  DR  TUN和FullNAT模式 NAT模式和DR模式部署相對簡單而且實用性強 現在部署一下  LVS的DR模型 首先準備三臺主機  使用的三臺系統都是centos 7…

    2017-05-15
  • grep命令與正則表達式

    grep命令與正則表達式 什么是grep:         grep (縮寫來自Globally search a Regular Expression and Print)是一種強大的文本搜索工具,它能使用正則表達式搜索文本,并把匹配的行打印出來。Unix的…

    Linux干貨 2017-04-08
  • 文件查找命令

    查找命令:local,find local:非實時查找,通過系統數據庫進行搜索,無法查找到在系統數據庫更新后創建的文件,但是查找速度快,模糊查找(不僅會查找到文件名還會找到文件全路徑) find:在硬盤上進行實時搜索,速度較慢,但是可以找到當前所有的數據 系統數據庫在   /var/lib/mlocate/mlocate.db 系統一般會…

    Linux干貨 2016-08-16
  • AWK實現求和、平均數、最小值、最大值

    1.簡單的按列求和]$ cat test123125126]$ awk ‘{sum += $1}END {print sum}’ test2.對符合某些條件的行,按列求和]$ cat  testaaa 123bbb 125aaa 123aaa 123ccc 126對文件test中 第一列為aaa的行求和]$ awk &#82…

    Linux干貨 2017-04-09
  • 730作業

    1、將/etc/issue文件中的內容轉換為大寫后保存至/tmp/issue.out文件中 [root@local ~]# cat /etc/issue |tr "[[:lower:]]" "[[:upper:]]" > /tmp/i…

    Linux干貨 2016-08-02
  • 107-tomcat

    一.編程語言基礎  1.1 編程語言: 硬件級:微碼編程,匯編語言 系統級:C,C++,…

    2016-12-02

評論列表(1條)

  • stanley
    stanley 2015-11-10 22:42

    名字起的很吸睛,內容也有血有肉,格式上稍做修改優化一定上頭條!

欧美性久久久久