亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

CentOS中yum 源的配置與使用詳解

 更新時(shí)間:2016年12月03日 11:32:18   作者:David_Tang  
這篇文章主要介紹了CentOS中yum 源的配置與使用詳解,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。

一、yum 簡(jiǎn)介

yum,是Yellow dog Updater, Modified 的簡(jiǎn)稱,是杜克大學(xué)為了提高RPM 軟件包安裝性而開發(fā)的一種軟件包管理器。起初是由yellow dog 這一發(fā)行版的開發(fā)者Terra Soft 研發(fā),用python 寫成,那時(shí)還叫做yup(yellow dog updater),后經(jīng)杜克大學(xué)的Linux@Duke 開發(fā)團(tuán)隊(duì)進(jìn)行改進(jìn),遂有此名。yum 的宗旨是自動(dòng)化地升級(jí),安裝/移除rpm 包,收集rpm 包的相關(guān)信息,檢查依賴性并自動(dòng)提示用戶解決。yum 的關(guān)鍵之處是要有可靠的repository,顧名思義,這是軟件的倉(cāng)庫(kù),它可以是http 或ftp 站點(diǎn),也可以是本地軟件池,但必須包含rpm 的header,header 包括了rpm 包的各種信息,包括描述,功能,提供的文件,依賴性等。正是收集了這些header 并加以分析,才能自動(dòng)化地完成余下的任務(wù)。

yum 的理念是使用一個(gè)中心倉(cāng)庫(kù)(repository)管理一部分甚至一個(gè)distribution 的應(yīng)用程序相互關(guān)系,根據(jù)計(jì)算出來(lái)的軟件依賴關(guān)系進(jìn)行相關(guān)的升級(jí)、安裝、刪除等等操作,減少了Linux 用戶一直頭痛的dependencies 的問(wèn)題。這一點(diǎn)上,yum 和apt 相同。apt 原為debian 的deb 類型軟件管理所使用,但是現(xiàn)在也能用到RedHat 門下的rpm 了。

yum 主要功能是更方便的添加/刪除/更新RPM 包,自動(dòng)解決包的倚賴性問(wèn)題,便于管理大量系統(tǒng)的更新問(wèn)題。

yum 可以同時(shí)配置多個(gè)資源庫(kù)(Repository),簡(jiǎn)潔的配置文件(/etc/yum.conf),自動(dòng)解決增加或刪除rpm 包時(shí)遇到的依賴性問(wèn)題,保持與RPM 數(shù)據(jù)庫(kù)的一致性。

二、yum 安裝

CentOS 默認(rèn)已經(jīng)安裝了yum,不需要另外安裝,這里為了實(shí)驗(yàn)?zāi)康?,先將yum 卸載再重新安裝。

1、查看系統(tǒng)默認(rèn)安裝的yum

# rpm -qa|grep yum

2、卸載yum

# rpm -e yum-fastestmirror-1.1.16-14.el5.centos.1 yum-metadata-parser-1.1.2-3.el5.centos yum-3.2.22-33.el5.centos

3、重新安裝yum

這里可以通過(guò)wget 從網(wǎng)上下載相關(guān)包安裝,也可以掛載系統(tǒng)安裝光盤進(jìn)行安裝,這里選擇掛載系統(tǒng)安裝光盤進(jìn)行安裝。

# mount /dev/cdrom /mnt/cdrom/

# rpm -ivh yum-3.2.22-33.el5.centos.noarch.rpm yum-fastestmirror-1.1.16-14.el5.centos.1.noarch.rpm yum-metadata-parser-1.1.2-3.el5.centos.i386.rpm

# yum -v

yum 的基礎(chǔ)安裝包包括:

  • yum  //RPM installer/updater
  • yum-fastestmirror  //Yum plugin which chooses fastest repository from a mirrorlist
  • yum-metadata-parser  //A fast metadata parser for yum

其他安裝包根據(jù)自己需要安裝。

三、yum 配置

yum 的配置文件分為兩部分:main 和repository

  • main 部分定義了全局配置選項(xiàng),整個(gè)yum 配置文件應(yīng)該只有一個(gè)main。常位于/etc/yum.conf 中。
  • repository 部分定義了每個(gè)源/服務(wù)器的具體配置,可以有一到多個(gè)。常位于/etc/yum.repo.d 目錄下的各文件中。

yum.conf 文件一般位于/etc目錄下,一般其中只包含main部分的配置選項(xiàng)。

# cat /etc/yum.conf
[main]
cachedir=/var/cache/yum
  //yum 緩存的目錄,yum 在此存儲(chǔ)下載的rpm 包和數(shù)據(jù)庫(kù),默認(rèn)設(shè)置為/var/cache/yum
keepcache=0
  //安裝完成后是否保留軟件包,0為不保留(默認(rèn)為0),1為保留
debuglevel=2
  //Debug 信息輸出等級(jí),范圍為0-10,缺省為2
logfile=/var/log/yum.log
  //yum 日志文件位置。用戶可以到/var/log/yum.log 文件去查詢過(guò)去所做的更新。
pkgpolicy=newest
  //包的策略。一共有兩個(gè)選項(xiàng),newest 和last,這個(gè)作用是如果你設(shè)置了多個(gè)repository,而同一軟件在不同的repository 中同時(shí)存在,yum 應(yīng)該安裝哪一個(gè),如果是newest,則yum 會(huì)安裝最新的那個(gè)版本。如果是last,則yum 會(huì)將服務(wù)器id 以字母表排序,并選擇最后的那個(gè)服務(wù)器上的軟件安裝。一般都是選newest。
distroverpkg=redhat-release
  //指定一個(gè)軟件包,yum 會(huì)根據(jù)這個(gè)包判斷你的發(fā)行版本,默認(rèn)是redhat-release,也可以是安裝的任何針對(duì)自己發(fā)行版的rpm 包。
tolerant=1
  //有1和0兩個(gè)選項(xiàng),表示yum 是否容忍命令行發(fā)生與軟件包有關(guān)的錯(cuò)誤,比如你要安裝1,2,3三個(gè)包,而其中3此前已經(jīng)安裝了,如果你設(shè)為1,則yum 不會(huì)出現(xiàn)錯(cuò)誤信息。默認(rèn)是0。
exactarch=1
  //有1和0兩個(gè)選項(xiàng),設(shè)置為1,則yum 只會(huì)安裝和系統(tǒng)架構(gòu)匹配的軟件包,例如,yum 不會(huì)將i686的軟件包安裝在適合i386的系統(tǒng)中。默認(rèn)為1。
retries=6
  //網(wǎng)絡(luò)連接發(fā)生錯(cuò)誤后的重試次數(shù),如果設(shè)為0,則會(huì)無(wú)限重試。默認(rèn)值為6.
obsoletes=1
  //這是一個(gè)update 的參數(shù),具體請(qǐng)參閱yum(8),簡(jiǎn)單的說(shuō)就是相當(dāng)于upgrade,允許更新陳舊的RPM包。
plugins=1
  //是否啟用插件,默認(rèn)1為允許,0表示不允許。我們一般會(huì)用yum-fastestmirror這個(gè)插件。
bugtracker_url=http://bugs.centos.org/set_project.php?project_id=16&ref=http://bugs.centos.org/bug_report_page.php?category=yum

# Note: yum-RHN-plugin doesn't honor this.
metadata_expire=1h

installonly_limit = 5

# PUT YOUR REPOS HERE OR IN separate files named file.repo
# in /etc/yum.repos.d

除了上述之外,還有一些可以添加的選項(xiàng),如:

exclude=selinux*  // 排除某些軟件在升級(jí)名單之外,可以用通配符,列表中各個(gè)項(xiàng)目要用空格隔開,這個(gè)對(duì)于安裝了諸如美化包,中文補(bǔ)丁的朋友特別有用。

gpgcheck=1  // 有1和0兩個(gè)選擇,分別代表是否是否進(jìn)行g(shù)pg(GNU Private Guard) 校驗(yàn),以確定rpm 包的來(lái)源是有效和安全的。這個(gè)選項(xiàng)如果設(shè)置在[main]部分,則對(duì)每個(gè)repository 都有效。默認(rèn)值為0。

四、配置本地yum源

1、掛載系統(tǒng)安裝光盤

# mount /dev/cdrom /mnt/cdrom/

2、配置本地yum源

# cd /etc/yum.repos.d/

# ls

會(huì)看到四個(gè)repo 文件

CentOS-Base.repo 是yum 網(wǎng)絡(luò)源的配置文件

CentOS-Media.repo 是yum 本地源的配置文件

修改CentOS-Media.repo

# cat CentOS-Media.repo
# CentOS-Media.repo
#
# This repo is used to mount the default locations for a CDROM / DVD on
# CentOS-5. You can use this repo and yum to install items directly off the
# DVD ISO that we release.
#
# To use this repo, put in your DVD and use it with the other repos too:
# yum --enablerepo=c5-media [command]
# 
# or for ONLY the media repo, do this:
#
# yum --disablerepo=\* --enablerepo=c5-media [command]
 
[c5-media]
name=CentOS-$releasever - Media
baseurl=file:///media/CentOS/
  file:///mnt/cdrom/
  file:///media/cdrecorder/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

在baseurl 中修改第2個(gè)路徑為/mnt/cdrom(即為光盤掛載點(diǎn))

將enabled=0改為1

3、禁用默認(rèn)的yum 網(wǎng)絡(luò)源

將yum 網(wǎng)絡(luò)源配置文件改名為CentOS-Base.repo.bak,否則會(huì)先在網(wǎng)絡(luò)源中尋找適合的包,改名之后直接從本地源讀取。

4、執(zhí)行yum 命令

# yum install postgresql

關(guān)于repo 文件的格式

所有repository 服務(wù)器設(shè)置都應(yīng)該遵循如下格式:

[serverid]
name=Some name for this server
baseurl=url://path/to/repository/

  • serverid 是用于區(qū)別各個(gè)不同的repository,必須有一個(gè)獨(dú)一無(wú)二的名稱;
  • name 是對(duì)repository 的描述,支持像$releasever $basearch這樣的變量;
  • baseurl 是服務(wù)器設(shè)置中最重要的部分,只有設(shè)置正確,才能從上面獲取軟件。它的格式是:
baseurl=url://server1/path/to/repository/
     url://server2/path/to/repository/
     url://server3/path/to/repository/

其中url 支持的協(xié)議有 http:// ftp:// file:// 三種。baseurl 后可以跟多個(gè)url,你可以自己改為速度比較快的鏡像站,但baseurl 只能有一個(gè),也就是說(shuō)不能像如下格式:

baseurl=url://server1/path/to/repository/
baseurl=url://server2/path/to/repository/
baseurl=url://server3/path/to/repository/

其中url 指向的目錄必須是這個(gè)repository header 目錄的上一級(jí),它也支持$releasever $basearch 這樣的變量。
url 之后可以加上多個(gè)選項(xiàng),如gpgcheck、exclude、failovermethod 等,比如:

[updates-released]
name=Fedora Core $releasever - $basearch - Released Updates
baseurl=http://download.atrpms.net/mirrors/fedoracore/updates/$releasever/$basearch
     http://redhat.linux.ee/pub/fedora/linux/core/updates/$releasever/$basearch
     http://fr2.rpmfind.net/linux/fedora/core/updates/$releasever/$basearch
gpgcheck=1
exclude=gaim
failovermethod=priority

其中g(shù)pgcheck,exclude 的含義和[main] 部分相同,但只對(duì)此服務(wù)器起作用,failovermethode 有兩個(gè)選項(xiàng)roundrobin 和priority,意思分別是有多個(gè)url可供選擇時(shí),yum 選擇的次序,roundrobin 是隨機(jī)選擇,如果連接失敗則使用下一個(gè),依次循環(huán),priority 則根據(jù)url 的次序從第一個(gè)開始。如果不指明,默認(rèn)是roundrobin。

五、配置國(guó)內(nèi)yum源

系統(tǒng)默認(rèn)的yum 源速度往往不盡人意,為了達(dá)到快速安裝的目的,在這里修改yum源為國(guó)內(nèi)源。

上海交通大學(xué)yum源

a. 修改/etc/yum.repos.d/CentOS-Base.repo為:

# CentOS-Base.repo
#
# The mirror system uses the connecting IP address of the client and the
# update status of each mirror to pick mirrors that are updated to and
# geographically close to the client. You should use this for CentOS updates
# unless you are manually picking other mirrors.
#
# If the mirrorlist= does not work for you, as a fall back you can try the 
# remarked out baseurl= line instead.
#
#

[base]
name=CentOS-$releasever - Base
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
baseurl=http://ftp.sjtu.edu.cn/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

#released updates 
[updates]
name=CentOS-$releasever - Updates
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
baseurl=http://ftp.sjtu.edu.cn/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras
baseurl=http://ftp.sjtu.edu.cn/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus
baseurl=http://ftp.sjtu.edu.cn/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

#contrib - packages by Centos Users
[contrib]
name=CentOS-$releasever - Contrib
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=contrib
baseurl=http://ftp.sjtu.edu.cn/centos/$releasever/contrib/$basearch/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

關(guān)于變量

  • $releasever:代表發(fā)行版的版本,從[main]部分的distroverpkg獲取,如果沒(méi)有,則根據(jù)redhat-release包進(jìn)行判斷。
  • $arch:cpu體系,如i686,athlon等
  • $basearch:cpu的基本體系組,如i686和athlon同屬i386,alpha和alphaev6同屬alpha。

b. 導(dǎo)入GPG KEY

yum 可以使用gpg 對(duì)包進(jìn)行校驗(yàn),確保下載包的完整性,所以我們先要到各個(gè)repository 站點(diǎn)找到gpg key,一般都會(huì)放在首頁(yè)的醒目位置,一些名字諸如RPM-GPG-KEY-CentOS-5 之類的純文本文件,把它們下載下來(lái),然后用rpm --import RPM-GPG-KEY-CentOS-5 命令將key 導(dǎo)入。

c. 執(zhí)行yum 命令

其他國(guó)內(nèi)yum源列表如下:

1. 企業(yè)貢獻(xiàn):

搜狐開源鏡像站:http://mirrors.sohu.com/

網(wǎng)易開源鏡像站:http://mirrors.163.com/

2. 大學(xué)教學(xué):

北京理工大學(xué):
http://mirror.bit.edu.cn (IPv4 only)
http://mirror.bit6.edu.cn (IPv6 only)

北京交通大學(xué):
http://mirror.bjtu.edu.cn (IPv4 only)
http://mirror6.bjtu.edu.cn (IPv6 only)
http://debian.bjtu.edu.cn (IPv4+IPv6)

蘭州大學(xué):http://mirror.lzu.edu.cn/

廈門大學(xué):http://mirrors.xmu.edu.cn/

清華大學(xué):
http://mirrors.tuna.tsinghua.edu.cn/ (IPv4+IPv6)
http://mirrors.6.tuna.tsinghua.edu.cn/ (IPv6 only)
http://mirrors.4.tuna.tsinghua.edu.cn/ (IPv4 only)

天津大學(xué):http://mirror.tju.edu.cn/

中國(guó)科學(xué)技術(shù)大學(xué):
http://mirrors.ustc.edu.cn/ (IPv4+IPv6)
http://mirrors4.ustc.edu.cn/
http://mirrors6.ustc.edu.cn/

東北大學(xué):
http://mirror.neu.edu.cn/ (IPv4 only)
http://mirror.neu6.edu.cn/ (IPv6 only)

電子科技大學(xué):http://ubuntu.uestc.edu.cn/

六、使用第三方軟件庫(kù)

Centos/RHEL默認(rèn)的yum軟件倉(cāng)庫(kù)非常有限,僅僅限于發(fā)行版本那幾張盤里面的常規(guī)包和一些軟件包的更新,利用RpmForge,可以增加非常多的第三方rpm軟件包。RpmForge庫(kù)現(xiàn)在已經(jīng)擁有超過(guò)10000種的CentOS的軟件包,被CentOS社區(qū)認(rèn)為是最安全也是最穩(wěn)定的一個(gè)第三方軟件庫(kù)。

1、安裝yum-priorities插件

這個(gè)插件是用來(lái)設(shè)置yum在調(diào)用軟件源時(shí)的順序的。因?yàn)楣俜教峁┑能浖?,都是比較穩(wěn)定和被推薦使用的。因此,官方源的順序要高于第三方源的順序。如何保證這個(gè)順序,就需要安裝yum-priorities這插件了。

# yum -y install yum-priorities

 

2、安裝完yum-priorities插件后需要設(shè)置/etc/yum.repos.d/ 目錄下的.repo相關(guān)文件(如CentOS-Base.repo),在這些文件中插入順序指令:priority=N (N為1到99的正整數(shù),數(shù)值越小越優(yōu)先)

一般配置[base], [addons], [updates], [extras] 的priority=1,[CentOSplus], [contrib] 的priority=2,其他第三的軟件源為:priority=N (推薦N>10)

以CentOS-Base.repo 為例:

[base]
name=CentOS-$releasever - Base
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
baseurl=http://ftp.sjtu.edu.cn/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
priority=1

3、下載與安裝相應(yīng)rpmforge的rpm文件包

# wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.i386.rpm

4、安裝DAG的PGP Key

# rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt

5、驗(yàn)證rpmforge的rpm文件包

# rpm -K rpmforge-release-0.5.2-2.el5.rf.*.rpm

6、安裝rpmforge的rpm文件包

# rpm -i rpmforge-release-0.5.2-2.el5.rf.i386.rpm

7、設(shè)置/etc/yum.repos.d/rpmforge.repo文件中源的級(jí)別

[root@TS-DEV yum.repos.d]# cat rpmforge.repo

### Name: RPMforge RPM Repository for RHEL 5 - dag
### URL: http://rpmforge.net/
[rpmforge]
name = RHEL $releasever - RPMforge.net - dag
baseurl = http://apt.sw.be/redhat/el5/en/$basearch/rpmforge
mirrorlist = http://apt.sw.be/redhat/el5/en/mirrors-rpmforge
#mirrorlist = file:///etc/yum.repos.d/mirrors-rpmforge
enabled = 1
protect = 0
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag
gpgcheck = 1
priority=12

8、測(cè)試安裝

# yum install htop

其他第三方軟件庫(kù)如 EPEL(Extra Packages for Enterprise Linux ) 和 RPMFusion 的安裝與使用和RPMForge類似,可自行查找資料安裝。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • bash命令使用詳解

    bash命令使用詳解

    在本篇文章里小編給大家分享的是關(guān)于bash命令使用的技巧和方法,有需要的朋友們學(xué)習(xí)下。
    2019-01-01
  • centos 7中添加一個(gè)新用戶并授權(quán)的步驟詳解

    centos 7中添加一個(gè)新用戶并授權(quán)的步驟詳解

    這篇文章主要給大家介紹了關(guān)于在centos 7中添加一個(gè)新用戶并授權(quán)的步驟,文中將實(shí)現(xiàn)的步驟介紹的非常詳細(xì),通過(guò)文中介紹的步驟可以輕松的創(chuàng)建一個(gè)新用戶并授權(quán),需要的朋友可以參考借鑒,下面來(lái)一起看看吧。
    2017-08-08
  • YUM解決RPM包安裝依賴關(guān)系及yum工具介紹本地源配置方法詳解

    YUM解決RPM包安裝依賴關(guān)系及yum工具介紹本地源配置方法詳解

    這篇文章主要介紹了YUM解決RPM包安裝依賴關(guān)系及yum工具介紹本地源配置方法詳解,本文給大家介紹的非常詳細(xì)具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-10-10
  • VMWare中CentOS ifcfg-eth0配置方法(親測(cè)直接可用)

    VMWare中CentOS ifcfg-eth0配置方法(親測(cè)直接可用)

    本篇文章主要介紹了VMWare中CentOS ifcfg-eth0配置,這些配置是基于VMware Network Adapter VMnet8,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。
    2017-03-03
  • Linux下gdb調(diào)試打印字符串方式

    Linux下gdb調(diào)試打印字符串方式

    這篇文章主要介紹了Linux下gdb調(diào)試打印字符串方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • Linux系統(tǒng)刪除文件夾和文件的命令

    Linux系統(tǒng)刪除文件夾和文件的命令

    筆者給大家介紹Linux系統(tǒng)刪除文件夾和文件的命令,很多朋友喜歡是rmdir命令來(lái)刪除文件,不過(guò)當(dāng)遇到目錄非空,就會(huì)麻煩,下面閱讀本文學(xué)習(xí)下linux刪除文件夾和文件的命令吧
    2018-02-02
  • CentOS安裝Python2.7與Python2.6并存的方法

    CentOS安裝Python2.7與Python2.6并存的方法

    這篇文章主要介紹了CentOS安裝Python2.7與Python2.6并存的方法,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2017-08-08
  • Ubuntu16.04 中 locate文件查找命令

    Ubuntu16.04 中 locate文件查找命令

    這篇文章主要介紹了Ubuntu16.04 中 locate文件查找命令,需要的朋友可以參考下
    2018-06-06
  • Logrotate實(shí)現(xiàn)Catalina.out日志每倆小時(shí)切割示例

    Logrotate實(shí)現(xiàn)Catalina.out日志每倆小時(shí)切割示例

    Logrotate是一個(gè)日志文件管理工具,它是Linux默認(rèn)自帶的一個(gè)日志切割工具。本篇文章主要介紹了Logrotate實(shí)現(xiàn)Catalina.out日志每倆小時(shí)切割示例,有一定的參考價(jià)值,有需要的朋友可以參考一下,希望對(duì)你有所幫助
    2019-02-02
  • CentOS7設(shè)置ssh服務(wù)以及端口修改方式

    CentOS7設(shè)置ssh服務(wù)以及端口修改方式

    這篇文章主要介紹了CentOS7設(shè)置ssh服務(wù)以及端口修改方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-12-12

最新評(píng)論