程序包管理之yum
yum命令參數(shù)使用詳解
一、yum的簡介
? yum,是Yellow dog Updater, Modified 的簡稱,是杜克大學為了提高RPM 軟件包安裝性而開發(fā)的一種軟件包管理器。起初是由yellow dog 這一發(fā)行版的開發(fā)者Terra Soft 研發(fā),用python 寫成,那時還叫做yup(yellow dog updater),后經(jīng)杜克大學的Linux@Duke 開發(fā)團隊進行改進,遂有此名。yum 的宗旨是自動化地升級,安裝/移除rpm 包,收集rpm 包的相關信息,檢查依賴性并自動提示用戶解決。yum 的關鍵之處是要有可靠的repository,顧名思義,這是軟件的倉庫,它可以是http 或ftp 站點,也可以是本地軟件池,但必須包含rpm 的header,header 包括了rpm 包的各種信息,包括描述,功能,提供的文件,依賴性等。正是收集了這些header 并加以分析,才能自動化地完成余下的任務。
? yum的理念是使用一個中心倉庫(repository)管理一部分甚至一個distribution 的應用程序相互關系,根據(jù)計算出來的軟件依賴關系進行相關的升級、安裝、刪除等等操作,減少了Linux 用戶一直頭痛的dependencies 的問題。這一點上,yum 和apt 相同。apt 原為debian 的deb 類型軟件管理所使用,但是現(xiàn)在也能用到RedHat 門下的rpm 了。
? yum主要功能是更方便的添加/刪除/更新RPM 包,自動解決包的倚賴性問題,便于管理大量系統(tǒng)的更新問題。
? yum可以同時配置多個資源庫(Repository),簡潔的配置文件(/etc/yum.conf),自動解決增加或刪除rpm 包時遇到的依賴性問題,保持與RPM 數(shù)據(jù)庫的一致性。
二、yum的配置
??配置文件:
/etc/yum.conf:為所有倉庫提供公共配置
/etc/yum.repos.d/*.repo:為倉庫的指向提供配置
? ?倉庫指向的定義:
[repositoryID]
name=Some name for this repository這個倉的名稱
baseurl=url://path/to/repository/
enabled={1|0}是否啟用此倉庫
gpgcheck={1|0}是否檢查完整性及來源合法性
gpgkey=URL密鑰文件路徑鏈接
enablegroups={1|0}是否在此倉庫上支持使用組,來批量管理程序包
failovermethod={roundrobin|priority按順序}
默認為:roundrobin,意為隨機挑選;
cost= ? ? 開銷
默認為1000
教室里的yum源:http://172.16.0.1/cobbler/ks_mirror/CentOS-6.6-x86_64/
CentOS 6.7 X84_64 epel:?http://172.16.0.1/fedora-epel/6/x86_64/
三、yum命令的用法:
? ? 顯示程序包:
? ??list
? ??? ? ?# yum list [all | glob_exp1] [glob_exp2] [...]
? ??# yum list {available|installed|updates} [glob_exp1] [...]
圖示:
? ? 安裝程序包:
? ??install package1 [package2] [...]
? ??reinstall package1 [package2] [...] ?(重新安裝)
? ? 升級程序包:
? ??update [package1] [package2] [...]
? ??downgrade package1 [package2] [...] (降級)
? ? 檢查可用升級:
? ??check-update
? ? 卸載程序包:
? ??remove | erase package1 [package2] [...]
? ? 查看程序包information:
? ??info [...]
? ? 查看指定的特性(可以是某文件)是由哪個程序包所提供:
? ??provides | whatprovides feature1 [feature2] [...]
? ? 清理本地緩存:
? ? ?clean [ packages | metadata 元數(shù)據(jù)| expire-cache過期數(shù)據(jù) | rpmdb | plugins | all ]
? ? 構建緩存:
? ??makecache
? ? 搜索:
? ??search string1 [string2] [...]
? ??以指定的關鍵字搜索程序包名及summary信息;
? ? 查看指定包所依賴的capabilities:
? ??deplist package1 [package2] [...]
? ? 查看yum事務歷史:
? ??history [info|list|packages-list|packages-info|summary|addon-info|redo|undo|rollback|new|sync|stats]
? ? 安裝及升級本地程序包:
??* localinstall rpmfile1 [rpmfile2] [...]
? ? ? ? ? ?(maintained for legacy reasons only - use install)
? ? ? ? * localupdate rpmfile1 [rpmfile2] [...]
? ? ? ? ? ?(maintained for legacy reasons only - use update)
? ? 包組管理的相關命令:
? ? ? ? * groupinstall group1 [group2] [...]
? ? ? ? * groupupdate group1 [group2] [...]
? ? ? ? * grouplist [hidden] [groupwildcard] [...]
? ? ? ? * groupremove group1 [group2] [...]
? ? ? ? * groupinfo group1 [...]
? ? 如何使用光盤當作本地yum倉庫:
? ??(1) 掛載光盤至某目錄,例如/media/cdrom
? ??# mount -r -t iso9660 /dev/cdrom /media/cdrom
? ??(2) 創(chuàng)建配置文件
? ??[CentOS 6]
? ?
? ? yum的命令行選項:
? ??--nogpgcheck:禁止進行gpg check;
? ??-y: 自動回答為“yes”;
? ??-q:靜默模式;
? ??--disablerepo=repoidglob:臨時禁用此處指定的repo;
? ??--enablerepo=repoidglob:臨時啟用此處指定的repo;
? ??--noplugins:禁用所有插件;
? ? yum的repo配置文件中可用的變量:
? ??$releasever: 當前OS的發(fā)行版的主版本號;
? ??$arch: 平臺;
? ??$basearch:基礎平臺;
? ??$YUM0-$YUM9
? ??http://mirrors.magedu.com/centos/$releasever/$basearch/os
四、創(chuàng)建yum倉庫:
? ??createrepo [options] <directory>
? 1、創(chuàng)建本地repo目錄
? ?[root@localhost]#mkdir -p /yum/repo
? 2、到遠程服務器下載rpm到本地
?3、執(zhí)行createrepo命令,創(chuàng)建repodata
?4、yum源創(chuàng)建完成
?5、配置本地yum源
轉載于:https://blog.51cto.com/liaodijin/1727533
新人創(chuàng)作打卡挑戰(zhàn)賽發(fā)博客就能抽獎!定制產(chǎn)品紅包拿不停!總結
- 上一篇: 常用子网掩码
- 下一篇: 如何VMare虚拟机里安装Mac操作系统