yum軟件管理使用詳解

  • yum介紹

  • yum客戶端的使用

    • 配置文件項作說明:

    • 案例repo配置文件。

    • 創建yum源命令(yum-config-manager)

  • yum list相關命令

  • yum安裝

  • yum更新和升級

  • yum查找和顯示

  • yum刪除程序

  • 查看倉庫

  • 實戰演練本地yum倉庫(光盤)

  • YUM內置變量

  • 創建YUM倉庫(http)

yum介紹

yum命令是在Fedora和RedHat以及SUSE中基于rpm的軟件包管理器,它可以使系統管理人員交互和自動化地更細與管理RPM軟件包,能夠從指定的服務器自動下載RPM包并且安裝,可以自動處理依賴性關系,并且一次安裝所有依賴的軟體包,無須繁瑣地一次次下載、安裝。

yum提供了查找、安裝、刪除某一個、一組甚至全部軟件包的命令,而且命令簡潔而又好記。

yum客戶端的使用

YUM的配置方式是基于分段配置的,yum 客戶端配置文件:

/etc/yum.conf :為所有倉庫提供公共配置
/etc/yum.repos.d/*.repo :為倉庫的指向提供配置

配置文件項作說明:

[ ... ]:        //倉庫的名稱。不能重復。
name:           //對倉庫的描述,該項必須有。
baseurl:        //配置倉庫的路徑。用于指定一個url。
mirrorlist:     //指向一個鏡像列表,里面有多個url。
enabled:        //是否啟用當前倉庫。值為1或0,默認為1。
gpgcheck:       //是否需要gpg校驗。值為1或0,默認為1。
gpgkey:         //驗證RPM包的密鑰文件路徑。該文件可以在遠處服務器上,也可以在本地。
cost:           //代價,其本質是倉庫優先級的配置。值越低,表示訪問的代價越低,也即優先使用。

案例repo配置文件。

[base]
name=CentOS 6.4 x86_64
baseurl=http://172.16.0.1/cobbler/ks_mirror/centos-6.4-x86_64/
enabled=1
gpgcheck=0

創建yum源命令(yum-config-manager)

生成172.16.0.1_cobbler_ks_mirror_CentOS-X-x86_64_.repo

yum-config-manager --add-repo=http://172.16.0.1/cobbler/ks_mirror/CentOS-X-x86_64/
yum-config-manager --disable “ 倉庫名" 禁用倉庫
yum-config-manager --enable “ 倉庫名”  啟用倉庫

yum list相關命令

獲取yum倉庫中所有的包信息。

命令:yum list all

結果說明:

第一列:軟件包名稱.平臺名稱。 
第二列:軟件版本號-release號。 
第三列:安裝情況。

若顯示@則表示該軟件已經通過倉庫安裝。如@anaconda-CentOS-201303020151.x86_64/6.4 表示已經通過naconda-CentOS-201303020151.x86_64/6.4倉庫安裝。 
install,則表示系統已經安裝,未通過倉庫安裝。 
若無@或不是install,則表示尚未安裝。如base,表示未安裝,包位于base倉庫中。updates,表示未安裝,包位于updates倉庫中。

yum安裝

yum install #全部安裝 
yum install package1 #安裝指定的安裝包package1
yum groupinsall group1 #安裝程序組group1

yum更新和升級

yum update #全部更新 
yum update package1 #更新指定程序包package1
yum check-update #檢查可更新的程序
yum upgrade package1 #升級指定程序包package1
yum groupupdate group1 #升級程序組group1

yum查找和顯示

yum info package1 #顯示安裝包信息package1 
yum list #顯示所有已經安裝和可以安裝的程序包
yum list package1 #顯示指定程序包安裝情況package1
yum groupinfo group1 #顯示程序組group1信息
yum search string 根據關鍵字string查找安裝包

yum刪除程序

yum remove | erase package1 #刪除程序包package1 
yum groupremove group1 #刪除程序組group1
yum deplist package1 #查看程序package1依賴情況 清除緩存
yum clean packages #清除緩存目錄下的軟件包
yum clean headers #清除緩存目錄下的 headers
yum clean oldheaders #清除緩存目錄下舊的 headers

查看倉庫

查看當前能夠使用的yum倉庫

命令:yun repo list

顯示所有倉庫

命令:yum repo list all

顯示禁用的倉庫

命令:yum repo list enabled

顯示啟用的倉庫

命令:yum repo list disabled

實戰演練本地yum倉庫(光盤)

yum倉庫又稱為yum源,yum倉庫一般會支持ftp協議(ftp://),http協議(http://),文件協議(file://)。

本地的YUM倉庫

使用系統安裝盤當作YUM倉庫。對于RHEL系列的Linux,其安裝光盤就是一個yum倉庫。掛在上光盤,將yum客戶端的倉庫指向光盤路徑。

1、掛載光盤

Host:BJ_Web_IP:252.97 User:root Dir:~$ >>mount /dev/cdrom /mnt/

2、移動etc/yum.repos.d目錄所有的repo文件

Host:BJ_Web_IP:252.97 User:root Dir:/etc/yum.repos.d$ >>mv * old

3、創建新文件dvd.repo

Host:BJ_Web_IP:252.97 User:root Dir:/etc/yum.repos.d$ >>vim dvd.repo

4、加入以下內容:

[dvd]
name=install dvd
baseurl=file:///mnt
enabled=1
gpgcheck=0

5、刷新 repos 生成緩存

Host:BJ_Web_IP:252.97 User:root Dir:/etc/yum.repos.d$ >>yum makecache

然后就可以使用yum命令安裝你所需要的軟件包了

YUM內置變量

yum內置變量是關于操作系統、CPU平臺的一些信息??捎糜趧討B的配置yum路徑。

Alt text 
說明: 
$releasever:當前操作系統的主版本號。若CentOS6.4 該值為6。 
$arch:當前平臺版本架構。x86_64 或 i386/i586/i686。 
$basearch:當前平臺的基本架構。x86_64 或 i386。 
$YUM0-9:這十個變量分別被 shell 環境中的同名變量的值所替代。如果 /etc/yum.conf 文件中設置了這些變量,而 shell 環境中沒有同名變量,它的值則不被代替。

創建YUM倉庫(http)

創建基于HTTP訪問的yum倉庫 
搭建Web服務器,讓瀏覽器能訪問到相應的yum倉庫目錄,即可通過HTTP訪問yum倉庫。 
使用createrepo命令創建YUM倉庫。該命令系統中默認是沒有的??梢允褂胷pm或yum安裝上該命令。

[root@localhost ~]# mkdir -p /var/www/html/yum_repo/my/Packages  
[root@localhost ~]# cp /mnt/Packages/* /var/www/html/yum_repo/my/Packages/;  
[root@localhost ~]# cd /var/www/html/yum_repo/my/Packages
[root@localhost Packages]# createrepo .  
[root@localhost Packages]# /etc/init.d/httpd start  

該命令會在指定目錄中生成repodata目錄。該目錄中是所有RPM包的信息文件,及其依賴關系的信息文件。以xml文檔和sqllite數據庫文件的形式存儲。

[root@localhost Packages]# cd repodata/
[root@localhost repodata]# ls
0bbdfd6e17cfa0c748811b501d8561a7da1035277ddd6810dc05d5b89167961e-other.sqlite.bz2
377ca12437cb6e66b02b5329f7b41b59dbe178525a491890b2b49605c73ddfd5-filelists.xml.gz
669fda84c4c170d0fa0b974f5fae3d2e65b47892d7aca1cc3362dca0881ad6ff-filelists.sqlite.bz2
8ecfdeda2f598228c77ad7cf2323c2d91f406f55c4eaea6dfa717aa2f97965d3-primary.xml.gz
8f16e9af726dd61d7c991eff8cc19167f5c30821ae0048699fa6797eb2cc56ed-other.xml.gz
a7d3fe72ec1f0670ae7f01f10f05a8b97777b3c29e39988d89a78e959f47384b-primary.sqlite.bz2
repomd.xml

在測試機器上創建新文件/etc/yum.repos.d/my.repo,內容如下

[my]  
name=my  
baseurl=http://<repos_host>/yum_repos/my/Packages  
enabled=1  
gpgcheck=0  
priority=1
//其中 <repos_host> 是 YUM 源的機器名或IP地址。

更新本地 YUM 緩存

[root@localhost ~]# yum clean all  
[root@localhost ~]# yum makecache

如果以后有新包加入需要重新更新yum庫

cd /var/www/html/yum_repo/my/Packages  
createrepo .

在客戶端更新

yum clean all  
yum makecache  

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

(0)
M20_heM20_he
上一篇 2016-09-05 21:14
下一篇 2016-09-06 08:50

相關推薦

  • 運維工程師技能需求排行

    這是我今天在拉勾網搜索運維,翻完了4四頁也招聘信息之后得到的,我的目的是想要看看之后的學習,哪個更應該成為重點,有些在我意料之中,有些還真的沒想到,算是努力了一個小時的收獲吧,分享給大家。
    注意:其中的看法僅代表個人觀點,很多都是依靠我自己的學習經驗和工作經驗累積的

    Linux干貨 2017-12-12
  • 實驗:路由、bonding、team

    實驗:路由實驗 路由表構成目標網絡:網絡ID 子網掩碼接口:到達目標網絡,從哪個接口出來,此接口網關:gateway,下一個鄰近路由器的鄰近接口的IP地址,如果目標網絡和本路由器直接,網關的地址為接口的IP centos6 關閉NetworkManager服務chkconfig NetworkManagerservice NetworkManager sto…

    Linux干貨 2017-05-06
  • 邏輯卷LVM的實現

    LVM(Logical Volume Manager,邏輯卷管理)可以實現把多個實體硬盤分區整合在一起,當作一個硬盤來重新操作處理。最重要的是LVM不像傳統分區一旦確定分區大小就不能再調整,它允許我們彈性的調整分區及文件系統容量! 通過幾道練習題來說明LVM的實現 1、創建一個至少有兩個PV組成的大小為20G的名為testvg的VG;要求PE大小為16MB,…

    2017-06-25
  • Haproxy+Keepalived+Varnish+LAMP+Memcacked+NFS 實現WordPress站點的動靜分離

    詳細說明,請點擊CSDN博客的連接地址:http://blog.csdn.net/yhy1271927580/article/details/70195158

    2017-04-16
  • haproxy 簡單實現80轉后端8000

    一,安裝 yum -y install gcc automake autoconf libtool make tar -xzf haproxy-1.6.8 cd haproxy-1.6.8 make TARGET=linux2628 make install 二,編輯配置文件 Haproxy配置中分成五部分內容,當然這些組件不是必選的,可以根據需要選擇作為配…

    Linux干貨 2016-09-19
  • Linux文件和目錄管理

    Linux目錄和文件管理 Linux文件信息詳述 文件數據存儲在塊中 文件元數據存儲在inode中 文件名和其對應的inode號碼存儲在目錄項中 數據塊的概念: 文件在硬盤上的最小存儲單位叫做扇區,1扇區=512字節,操作系統讀取硬盤的時候不會一個一個讀,這樣太慢,會一次連續讀多個扇區,即一個讀取一個“塊”,常見的 1塊=八個扇區=4kB inode的概念:…

    Linux干貨 2016-11-04
欧美性久久久久