什么是yum源?

Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。
说到yum源就必须说到linux系统中特有的依赖关系问题,yum就是为了解决依赖关系而存在的。yum源就相当是一个目录项,当我们使用yum机制安装软件时,若需要安装依赖软件,则yum机制就会根据在yum源中定义好的路径查找依赖软件,并将依赖软件安装好。
YUM是“Yellow dog Updater, Modified”的缩写,是一个软件包管理器,YUM从指定的地方(相关网站的rpm包地址或本地的rpm路径)自动下载RPM包并且安装,能够很好的解决依赖关系问题。
YUM的基本工作机制如下:
服务器端:在服务器上面存放了所有的RPM软件包,然后以相关的功能去分析每个RPM文件的依赖性关系,将这些数据记录成文件存放在服务器的某特定目录内。 
客户端:如果需要安装某个软件时,先下载服务器上面记录的依赖性关系文件(可通过WWW或FTP方式),通过对服务器端下载的纪录数据进行分析,然后取得所有相关的软件,一次全部下载下来进行安装。
yum源的目录
用嘴基本的cd命令进入yum源的目录,请各位查看

ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.255.130  netmask 255.255.255.0  broadcast 192.168.255.255
        inet6 fe80::4e5e:65e5:3659:40cc  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:15:6b:a9  txqueuelen 1000  (Ethernet)
        RX packets 263  bytes 29686 (28.9 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 240  bytes 35088 (34.2 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

看到上面那么多文件,但是我们其实主要配置的就一个(CentOS-Base.repo),配置yum源主要有两种,一种是本地源,一种是网络源。

本地源:自己光盘的rpm包集合(安装光盘)
网络源:163或者是阿里云的yum源都可以,主要是从网络下载
网络源?命令以及其解说

01:主要备份原始的yum源,养成备份的习惯,会让你以后少很多烦恼。

mv ./CentOS-Base.repo ./CentOS-Base.repo.bak

02:下载yum文件,替代我们刚才备份的那个原始yum源。

wget http://mirrors.163.com/.help/CentOS7-Base-163.repo

03:这两条命令主要是清除和生成新的缓存,记得一定要敲着两个命令,重要。

yum clean all
yum makecache

04:下面来个整体示范,各位可以参考参考

[root@localhost ~]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.255.130  netmask 255.255.255.0  broadcast 192.168.255.255
        inet6 fe80::4e5e:65e5:3659:40cc  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:15:6b:a9  txqueuelen 1000  (Ethernet)
        RX packets 263  bytes 29686 (28.9 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 240  bytes 35088 (34.2 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

[root@localhost ~]# cd /etc/yum
[root@localhost yum]# ls
fssnap.d  pluginconf.d  protected.d  vars  version-groups.conf
[root@localhost yum]# cd /etc/yum.
yum.conf     yum.repos.d/ 
[root@localhost yum]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# ls -la
总用量 44
drwxr-xr-x.  2 root root  187 12月 13 19:52 .
drwxr-xr-x. 75 root root 8192 12月 13 21:29 ..
-rw-r--r--.  1 root root 1664 11月 23 21:16 CentOS-Base.repo
-rw-r--r--.  1 root root 1309 11月 23 21:16 CentOS-CR.repo
-rw-r--r--.  1 root root  649 11月 23 21:16 CentOS-Debuginfo.repo
-rw-r--r--.  1 root root  314 11月 23 21:16 CentOS-fasttrack.repo
-rw-r--r--.  1 root root  630 11月 23 21:16 CentOS-Media.repo
-rw-r--r--.  1 root root 1331 11月 23 21:16 CentOS-Sources.repo
-rw-r--r--.  1 root root 5701 11月 23 21:16 CentOS-Vault.repo
[root@localhost yum.repos.d]# mv CentOS-Base.repo CentOS-Base.repo.bak
[root@localhost yum.repos.d]# wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
--2018-12-13 21:52:53--  http://mirrors.163.com/.help/CentOS7-Base-163.repo
正在解析主机 mirrors.163.com (mirrors.163.com)... 59.111.0.251
正在连接 mirrors.163.com (mirrors.163.com)|59.111.0.251|:80... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:1572 (1.5K) [application/octet-stream]
正在保存至: “CentOS7-Base-163.repo”

100%[===============================================================================================================================================================================================>] 1,572       --.-K/s 用时 0s      

2018-12-13 21:52:53 (137 MB/s) - 已保存 “CentOS7-Base-163.repo” [1572/1572])

[root@localhost yum.repos.d]# yum clean all
已加载插件:fastestmirror
正在清理软件源: base extras updates
Cleaning up list of fastest mirrors
[root@localhost yum.repos.d]# yum makecache
已加载插件:fastestmirror
Determining fastest mirrors
base                                                                                                                                                                                                              | 3.6 kB  00:00:00     
extras                                                                                                                                                                                                            | 3.4 kB  00:00:00     
updates                                                                                                                                                                                                           | 3.4 kB  00:00:00     
(1/12): base/7/x86_64/group_gz                                                                                                                                                                                    | 166 kB  00:00:00     
(2/12): base/7/x86_64/primary_db                                                                                                                                                                                  | 6.0 MB  00:00:01     
(3/12): base/7/x86_64/filelists_db                                                                                                                                                                                | 7.1 MB  00:00:02     
(4/12): base/7/x86_64/other_db                                                                                                                                                                                    | 2.6 MB  00:00:00     
(5/12): extras/7/x86_64/filelists_db                                                                                                                                                                              | 189 kB  00:00:00     
(6/12): extras/7/x86_64/prestodelta                                                                                                                                                                               |  36 kB  00:00:00     
(7/12): extras/7/x86_64/other_db                                                                                                                                                                                  | 107 kB  00:00:00     
(8/12): extras/7/x86_64/primary_db                                                                                                                                                                                | 156 kB  00:00:00     
(9/12): updates/7/x86_64/filelists_db                                                                                                                                                                             | 1.3 MB  00:00:00     
(10/12): updates/7/x86_64/primary_db                                                                                                                                                                              | 1.3 MB  00:00:00     
(11/12): updates/7/x86_64/other_db                                                                                                                                                                                | 185 kB  00:00:00     
(12/12): updates/7/x86_64/prestodelta                                                                                                                                                                             | 174 kB  00:00:05     
元数据缓存已建立