yum的配置
yum的配置一般有兩種方式:
1.全局配置檔案/etc/目錄下的yum.conf
2.子配置檔案/etc/yum.repos.d/目錄下的所有.repo檔案
vim /etc/yum.conf
[main]
cachedir=/var/cache/yum/$basearch/$releasever
keepcache=1
debuglevel=2
logfile=/var/log/yum.log
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
installonly_limit=5
bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yum
distroverpkg=centos-release
vim /etc/yum.repos.d/epel.repo
yum倉庫制作
要先了解YUM的配置檔案中的一些參數含義
# 比如:vim /etc/yum.repos.d/CentOS-Base.repo
[base]
name=CentOS-$releasever - Base - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/$releasever/os/$basearch/
http://mirrors.aliyuncs.com/centos/$releasever/os/$basearch/
http://mirrors.cloud.aliyuncs.com/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
......
[] //倉庫名稱
name //倉庫描述資訊
baseurl //YUM源url位址 ,可以是file:// ftp:// http://
enabled //是否激活該YUM源(0代表禁用,1代表激活,預設為激活)
gpgcheck //安裝軟體時是否檢查簽名(0代表禁用,1代表激活)
例子1:本地yum源
#挂載
[root@localhost ~]# mount /dev/cdrom /mnt
#把原來的源打包備份
[root@localhost ~]# gzip /etc/yum.repos.d/*
#建立新倉庫vim
[root@localhost ~]# vim /etc/yum.repos.d/自己起的名.repo
[xxxxx]
name=This is local cdrom
# baseurl=file:///mnt 可以是file:// ftp:// http:// 這裡位址為自己的CD光牒挂載位址/mnt
enabled=1
gpgcheck=0
例子2: 一台虛拟機做yum源,另一台ftp去使用
第一台:
#安裝服務
[root@localhost /var/ftp/pub]# yum install -y vsftpd
#挂載
[root@localhost ~]# mount /dev/cdrom /mnt
# 在 /var/ftp/pub下建立一個/base一個/epel
[root@localhost ~]# cd /var/ftp
[root@localhost /var/ftp]# ll
total 0
drwxr-xr-x. 2 root root 6 Jun 10 2021 pub
[root@localhost /var/ftp/pub]# mkdir base
[root@localhost /var/ftp/pub]# mkdir epel
[root@localhost /var/ftp/pub]# ll
total 0
drwxr-xr-x. 2 root root 6 Aug 31 11:30 base
drwxr-xr-x. 2 root root 6 Aug 31 11:30 epel
#從挂載光驅複制東西過去
[root@localhost ~]# cp /mnt/Packages/tree-1.6.0-10.el7.x86_64.rpm /var/ftp/pub/base
[root@localhost /var/ftp]# cp /mnt/Packages/zip-3.0-11.el7.x86_64.rpm /var/ftp/pub/base
[root@localhost /var/ftp]# cp /mnt/Packages/gzip-1.5-10.el7.x86_64.rpm /var/ftp/pub/base
[root@localhost /var/ftp]# cp /mnt/Packages/pcre-devel-8.32-17.el7.x86_64.rpm /var/ftp/pub/epel
#看一下,已經有了
[root@localhost /var/ftp/pub/base]# ll
total 920
-rw-r--r--. 1 root root 132636 Aug 31 19:29 gzip-1.5-10.el7.x86_64.rpm
-rw-r--r--. 1 root root 47508 Aug 31 11:41 tree-1.6.0-10.el7.x86_64.rpm
-rw-r--r--. 1 root root 266160 Aug 31 19:28 zip-3.0-11.el7.x86_64.rpm
[root@localhost /var/ftp/pub/epel]# ll
total 480
-rw-r--r--. 1 root root 491272 Aug 31 19:34 pcre-devel-8.32-17.el7.x86_64.rpm
#啟動下vsftpd服務
[root@localhost /var/ftp/pub/epel]# vsftpd
這時就可以看到
#安裝createrepo
[root@localhost /var/ftp/pub/epel]# yum install -y createrepo
[root@localhost /var/ftp/pub/epel]# createrepo /var/ftp/pub 用createrepo指令把這個/pub目錄變成倉庫
[root@localhost /var/ftp/pub]# ll 看一下生成了個repodata
total 4
drwxr-xr-x. 2 root root 109 Aug 31 19:34 base
drwxr-xr-x. 2 root root 47 Aug 31 19:34 epel
drwxr-xr-x. 2 root root 4096 Aug 31 19:54 repodata
第二台
#把原來的源打包備份
[root@localhost ~]# gzip /etc/yum.repos.d/*
[root@localhost yum.repos.d]# ll
total 28
-rw-r--r--. 1 root root 549 Nov 23 2018 CentOS-Base.repo.gz
-rw-r--r--. 1 root root 735 Nov 23 2018 CentOS-CR.repo.gz
-rw-r--r--. 1 root root 426 Nov 23 2018 CentOS-Debuginfo.repo.gz
-rw-r--r--. 1 root root 232 Nov 23 2018 CentOS-fasttrack.repo.gz
-rw-r--r--. 1 root root 381 Nov 23 2018 CentOS-Media.repo.gz
-rw-r--r--. 1 root root 506 Nov 23 2018 CentOS-Sources.repo.gz
-rw-r--r--. 1 root root 633 Nov 23 2018 CentOS-Vault.repo.gz
#自己建一個
[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# vim /etc/yum.repos.d/xxx.repo
#在裡面修改下:
[xxxbase_epel]
name=這是我的倉庫臭丁丁
baseurl=ftp://10.0.0.250/pub (第一台機器的位址)
gpgcheck=0
enabled=1
#拿[root@zls ~]# yum repolist看一眼
#拿tree實驗下 發現安裝時裡面Repository項變xxxbase_epel 成功。