yum仓库搭建

时间:2020-04-15 19:30:17   收藏:0   阅读:58

YUM仓库主配置文件

vim /etc/yum.conf
cachedir=/var/cache/yum/$basearch/$releasever   //缓存目录
keepcache=0     //缓存软件包, 1启动 0 关闭
debuglevel=2    //调试级别 debug info warn error 
logfile=/var/log/yum.log    //日志记录位置
exactarch=1     //检查平台是否兼容
obsoletes=1     //检查包是否废弃
gpgcheck=1      //检查来源是否合法,需要有制作者的公钥信息
plugins=1       //是否启用查询
installonly_limit=5
bugtracker_url
# metadata_expire=90m //每小时手动检查元数据
# in /etc/yum.repos.d   //包含repos.d目录

YUM仓库子配置文件

## 仓库名字
[zls-base]

## 注释:说明该仓库的作用
name=CentOS-$releasever - Base - mirrors.aliyun.com

## 仓库地址:可以写变量  支持:http://  file://  ftp://
baseurl=http://mirrors.aliyun.com/centos/$releasever/os/$basearch/
        
        
### 用不上 ###
## 开启公钥认证
gpgcheck=1

## 指定公钥位置 可以是http://  本地:file://   ftp://
gpgkey=file:///root/RPM-GPG-KEY-CentOS-7

制作本地yum仓库

方案一:FTP协议

1.安装ftp服务

[root@twg yum.repos.d]# yum install -y vsftpd

技术分享图片

2.查看vsftpd相关目录和配置文件

[root@twg yum.repos.d]# rpm -ql vsftpd			#查看关于vsftpd服务相关文件或目录
/var/ftp/pub								  #列出此目录后,可在目录中添加rpm包

技术分享图片

3.进入目录

[root@twg yum.repos.d]# cd /var/ftp/pub

4.启动服务

[root@twg pub]# systemctl start vsftpd					#启动服务

5.检测服务是否启动成功

[root@twg pub]# systemctl status vsftpd					#查看服务情况
● vsftpd.service - Vsftpd ftp daemon
   Loaded: loaded (/usr/lib/systemd/system/vsftpd.service; disabled; vendor preset: disabled)
   Active: active (running) since Wed 2020-04-15 17:36:51 CST; 29s ago
  Process: 3991 ExecStart=/usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf (code=exited, status=0/SUCCESS)
 Main PID: 3992 (vsftpd)
   CGroup: /system.slice/vsftpd.service
           └─3992 /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf

Apr 15 17:36:51 twg systemd[1]: Starting Vsftpd ftp daemon...
Apr 15 17:36:51 twg systemd[1]: Started Vsftpd ftp daemon.
[root@twg pub]# netstat -lntup|grep 21					#或者检查端口是否开启
tcp6       0      0 :::21                   :::*                    LISTEN      3992/vsftpd  

技术分享图片

6.打开浏览器访问

7.将rpm包放入ftp站点目录

[root@twg pub]# ll							#提前将rpm包准备好,放入站点目录中
total 128								    #zabbix为官网中抓取包,详细过程可以参考yum的另外一章
drwxr-xr-x. 2 root root 77824 Apr 15 11:31 base
drwxr-xr-x. 2 root root  4096 Apr 15 15:46 repodata
drwxr-xr-x. 2 root root 16384 Apr 15 11:55 zabbix

8.安装创建yum仓库的命令

[root@twg pub]# yum install -y createreop				#安装creaerepo文件

技术分享图片

9.将ftp服务的站点目录/var/ftp/pub创建成yum仓库

[root@twg pub]# createrepo /var/ftp/pub			#指定将目录作为我的epel源
[root@twg pub]# ll							   #生成repodata文件,一般在客户端中访问就是访问此目录中
total 128									  # 的xml文件
drwxr-xr-x. 2 root root 77824 Apr 15 11:31 base
drwxr-xr-x. 2 root root  4096 Apr 15 15:46 repodata
drwxr-xr-x. 2 root root 16384 Apr 15 11:55 zabbix

10.在客户端写配置文件

[root@oldboy yum.repos.d]# cat ftp.repo		 #在客户端中新建文件以.repo结尾
[ftp_repo]								   #指定仓库名
name=‘zhe shi wo de ftp cangku‘				 #仓库注释信息,随意写
baseurl=ftp://10.0.0.200/pub				#指定仓库路径,也就是服务器中createrepo的路径
gpgcheck=0								   #公钥检查,为0不检查,一般为了保证rpm包没有进行篡改使用
enabled=1								   #仓库1为开启,0为关闭

11.查看仓库信息

[root@oldboy yum.repos.d]# yum repolist		  #查看得知仓库中包一共有1626个
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
repo id                                                               repo name                                                                               status
ftp_repo                                                              ‘zhe shi wo de ftp cangku‘                                                              1,626
repolist: 1,626

方案二:本地协议,只能本机使用yum仓库

[root@twg yum.repos.d]# cat tcy.repo 		#在此目录下写入以.repo结尾的文件
[tcy_filename]							  #仓库名
name=‘tcy_filename‘						   #仓库的注释信息,随意写
baseurl=file:///twg/					   #路径为服务器createrepo的创建路径,为本地使用,
gpgcheck=0								  #公钥检查,为0不检查,一般为了保证rpm包没有进行篡改使用
enabled=1							       #仓库1为开启,0为关闭


方案三:使用nginx方案 http://

1.安装nginx服务

[root@twg yum.repos.d]# yum install -y nginx

2.手写nginx配置文件

[root@twg yum.repos.d]# cd /etc/nginx/conf.d/	#进入目录
[root@twg conf.d]# cat tcy.conf 			    #自己写一个配置文件,随意命名为.conf
server {			
    listen       80;						  #监听端口
#修改为域名,如果为localhost可能会与主配置文件冲突,这里修改为域名需要在客户端同样改hosts文件
    server_name  www.tcy.com;				  	
    location / {
	autoindex on;
        root   /twg;						  #网页访问路径
    }
}

3.启动nginx

[root@twg conf.d]# systemctl start nginx

4.检测端口

[root@twg conf.d]# netstat -lntup|grep 80
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      3899/nginx: master  
tcp6       0      0 :::80                   :::*                    LISTEN      3899/nginx: master 

5.将自己的获取的rpm包全部放入到手写配置文件中路径指定地址/twg中

[root@twg twg]# ll								#自己随意命名了两个目录
total 296
drwxr-xr-x. 2 root root 221184 Apr 15 16:36 base
drwxr-xr-x. 2 root root  16384 Apr 15 16:35 zabbix

6.创建仓库

[root@twg twg]# createrepo /twg					#将自己的目录创建成repo文件,以便用户能访问

7.生成文件

[root@twg twg]# ll							  #当前目录下生成了一个repodate文件
total 296
drwxr-xr-x. 2 root root 221184 Apr 15 16:36 base
drwxr-xr-x  2 root root   4096 Apr 15 18:09 repodata
drwxr-xr-x. 2 root root  16384 Apr 15 16:35 zabbix

8.客户端手写配置文件

[root@oldboy yum.repos.d]# cat nginx.repo 		#客户端配置文件内容,路径指向服务器域名地址
[nginx_repo]							
name=‘zhe shi wo de nginx cangku‘				
baseurl=http://www.tcy.com/					#因为是域名,所以客户端的hosts文件也需要修改,否则无法识别
gpgcheck=0								   #检查公钥
enabled=1								   #开启仓库

9.检测yum仓库

[root@oldboy yum.repos.d]# yum repolist			#查看仓库开启信息
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
repo id                                                               repo name                                                                               status
ftp_repo                                                              ‘zhe shi wo de ftp cangku‘                                                              1,626
repolist: 1,626

原文:https://www.cnblogs.com/tcy1/p/12707334.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!