Linux yum源

(一)yum源概述

  yum須要一個yum庫,也就是yum源。默認狀況下,CentOS就有一個yum源。在/etc/yum.repos.d/目錄下有一些默認的配置文件(能夠將這些文件移到/opt下,或者直接在yum.repos.d/下重命名)。html

  首先要找一個yum庫(源),而後確保本地有一個客戶端(yum這個命令就是客戶端),由yum程序去鏈接服務器。鏈接的方式是由配置文件決定的。經過編輯/etc/yum.repos.d/CentOS-Base.repo文件,能夠修改設置。ios

  打開CentOS-Base.repo文件,能夠看到url路徑是CentOS的官網自身的yum源,http://mirrorlist.centos.org/?release=releasever&arch=releasever&arch= basearch&repo=os。能夠將這個mirrorlist註釋掉,而後將baseurl設置成國內的阿里雲源http://mirrors.aliyun.com/repo/Centos-6.repo,也能夠在用於大量的rpm包的前提下設置成本身的本地文件系統(掛載目錄),須要移除CentOS-Base.repo文件,並編輯CentOS-Media.repo文件。nginx

 

name=Description#一個描述,隨意。web

baseurl=#設置資源庫的地址,能夠寫阿里雲也能夠是本身的yumshell

    ftp://    http://    file:///enabled={1|0}#enabled=1開啓本地更新模式apache

gpgcheck={1|0}# gpgcheck=1表示檢查;能夠不檢查gpgcheck=0vim

gpgkey=#檢查的key;若是上面不檢查這一行能夠不寫。centos

 

(二)yum源配置方法一(阿里雲源)

1) 安裝wget

yum install -y wget瀏覽器

2) 備份/etc/yum.repos.d/CentOS-Base.repo文件

cd /etc/yum.repos.d/mv CentOS-Base.repo CentOS-Base.repo.back安全

3) 下載阿里雲的Centos-6.repo文件

wget -O CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo

4) 從新加載yum

yum clean allyum makecache

(三)yum源配置方法二(本地掛載目錄)

1) 下載iso文件

  從CentOS的官網下載CentOS的完整版iso文件,並上傳到Linux文件系統中,例如/opt/tools/。

2) 建立掛載目錄

  爲iso文件的掛載建立目錄。

mkdir /mnt/vcdrom

3) 掛載

  將iso文件掛載到掛載目錄。

mount -o loop -t iso9660 /opt/tools/CentOS-6.7-x86_64-bin-DVD1.iso /mnt/vcdrom

4) 移除或備份Centos-Base.repo文件

cd /etc/yum.repos.d/mv Centos-Base.repo Centos-Base.repo.back

5) 編輯Centos-Media.repo文件

vim /etc/yum.repos.d/Centos-Media.repo

 

name=CentOS-$releasever - Media

 

baseurl=file:///mnt/vcdrom/#將baseurl修改成DVD的掛載目錄

gpgcheck=1

 

enabled=1#開啓本地更新模式

 

6) 從新加載yum

yum clean allyum makecache

7) 編寫腳本並開機自動掛載

  首先,編寫腳本。

vim /opt/shell/mymount.sh

#!/bin/bash

#mount -o loop -t iso9660 /opt/tools/CentOS-6.7-x86_64-bin-DVD1.iso /mnt/vcdrom

  其次,修改腳本執行權限。

chmod 777 /opt/shell/mymount.sh

  再次,修改/etc/rc.local配置文件。

vim /etc/rc.local

  在文件最後一行加上以下

/opt/shell/mymount.sh

  最後,重啓機器測試。

init 6 

(四)yum源配置方法三(遠程掛載目錄)

1) 服務端配置

  第一,安裝nfs-utils和rpcbind。

yum -y install nfs-utils rpcbind

  第二,設置開機啓動服務。

chkconfig nfs on

chkconfig rpcbind on 

  第三,啓動相關服務。

service rpcbind start #須要先啓動rpcbind

service nfs start

  第四,建立共享目錄。

mkdir -p /mnt/vcdrom/

  第五,編輯/etc/exports文件,添加以下內容。

vi /etc/exports 

/mnt/vcdrom/ 192.168.94.5(rw,async,no_root_squash,no_subtree_check)   

  注:配置文件說明:/mnt/vcdrom/爲共享的目錄,使用絕路徑。對192.168.94.5(rw,no_root_squash,no_all_squash,sync) 爲客戶端的地址及權限,地址能夠是一個網段,一個IP地址或者是一個域名,域名支持通配符,如:*youxia.com。

  權限說明:rw:read-write,可讀寫;ro:read-only,只讀;sync:文件同時寫入硬盤和內存;async:文件暫存於內存,而不是直接寫入內存;no_root_squash:NFS客戶端鏈接服務端時若是使用的是root的話,那麼對服務端分享的目錄來講,也擁有root權限。顯然開啓這項是不安全的。root_squash:NFS客戶端鏈接服務端時若是使用的是root的話,那麼對服務端分享的目錄來講,擁有匿名用戶權限,一般他將使用nobody或nfsnobody身份;all_squash:不論NFS客戶端鏈接服務端時使用什麼用戶,對服務端分享的目錄來講都是擁有匿名用戶權限;anonuid:匿名用戶的UID值,一般是nobody或nfsnobody,能夠在此處自行設定;anongid:匿名用戶的GID值。

  第六,參考yum源配置方法二,將/opt/tools/下的ios文件掛載到/mnt/vcdrom,須要設置開機自動掛載。

2) 客戶端配置

  第一,安裝nfs-utils和rpcbind。

yum install -y nfs-utils rpcbind

   第二,設置開機啓動服務。

chkconfig nfs on

chkconfig rpcbind on

   第三,啓動服務。

service rpcbind start

service nfs start

  第四,建立掛載點。

mkdir -p /mnt/vcdrom/

   第五,掛載目錄。

mount -t nfs server_ip:/mnt/vcdrom /mnt/vcdrom

   第六,編輯/etc/fstab,配置開機自動掛載

  這裏能夠參考yum源配置方法二的介紹,編寫腳本,使腳本開機運行。下面給出第二種方法:

vim /etc/fstab 

server_ip:/mnt/vcdrom /mnt/vcdrom nfs rw,tcp,intr 0 1

  第七,修改yum源設置。

  參考yum源配置方法二。

若是CentOS服務器處在內網環境中時,若是缺乏依賴手動安裝那麼會很是麻煩,要花費不少時間來尋找rpm包,如今若是搭建本地的yum源,就很是方便了,若是搭建http的,那麼局域網內其餘服務器就均可以使用了,使用yum源首先須要一個CentOS安裝鏡像,這裏是:CentOS-7-x86_64-DVD-1511.iso,下面是http yum源搭建和配置過程

  首先須要一個web服務器,好比apache httpd或者nginx都可以,若是是nginx要開啓訪問目錄列表權限,通常安裝CentOS的時候都會安裝httpd服務器,因此這裏直接使用apache httpd;若是沒有安裝的話能夠經過rpm或者從官網下載源碼包來編譯安裝,以前專門寫過一篇文章來安裝apache的,具體過程再也不敘述;若是能聯網的話,能夠直接使用 yum -y install httpd 來安裝,我這裏已經安裝了,因此直接使用 systemctl start httpd.service 啓動httpd服務,啓動以後執行命令 systemctl status httpd.service 來查看運行狀態,以下圖所示,就是啓動成功了:

  

  而後經過瀏覽器訪問測試,以下圖:

        

  如今服務器運行正常,而且服務器的根目錄在/var/www/html下,能夠解析靜態頁面以及顯示目錄列表,接下來須要掛載光盤鏡像,掛載點在/mnt/cdrom下

mkdir /mnt/cdrom
mount -t iso9660 -o loop CentOS-7-x86_64-DVD-1511.iso /mnt/cdrom/

  掛載以後建立軟連接到/var/www/html下

ln -s /mnt/cdrom/ /var/www/html/CentOS7

  而後訪問瀏覽器測試,這裏是:http://192.168.182.128/CentOS7

  

  如今就成功看到光盤內容,yum源配置成功,如今配置主機的yum指向這個yum源

  編輯配置文件:/etc/yum.repos.d/CentOS-Base.repo,[base]塊默認以下:

  

  而後註釋mirrorlist,放開baseurl配置成yum源位置,還有gpgkey也配置成對應位置,以下圖:

  

  配置完這些之後,而後在[updates]和[extras]都添加一個enabled=0配置項,表示不生效,通常只用[base]中的配置便可,配置好以後保存退出

  而後執行 yum repolist 查看yum源信息

  以前聯網狀況以下圖:

  

  能夠看到有互聯網鏡像站來源,配置本地以後以下圖:

  

  如今本地的yum源都配置好了,直接使用yum命令安裝軟件便可

  有些特殊狀況下,若是配置了CentOS-Base.repo仍是會出現鏈接一些網址而且失敗,這時候手動檢查一下/etc/yum.repos.d/下面其餘一些配置文件,看看是否有鏈接外網的配置,若是有的話直接enabled=0禁用掉就能夠了;須要注意一點就是/etc/yum.repos.d/下面全部的配置文件均可以用,包括本身建的好比CentOS.repo也是能夠的,只要是啓用的,yum都會進行加載,通常都是啓用CentOS-Base.repo,其他禁用就能夠了

相關文章
相關標籤/搜索