什么是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
元数据缓存已建立