使用3种协议搭建yum仓库
制作本地yum仓库
开启服务一般要关闭防火墙,selinux之后再reboot
## 方案一:FTP协议------ftp://IP
下载vsftpd---启动vsftpd---ftp://10.0.0.200---填充站点目录---createrepo把站点目录做出yum仓库(yum clean all ,yum makecache)---客户机手写yum子配置文件---yum访问
小心防火墙,selinux,vpn(翻墙软件,防止国家防火墙拦住我们访问国外的网站),浏览器(xIE),(有时候加-a不加-a不一样,跟权限有关),小心权限,小心缓存(导致刷新不出来,强制刷新几次就好)
# 1.安装 ---ftp服务(平台)
[root@localhost ~]# yum install -y vsftpd
# 2.查看vsftpd相关目录和配置文件
[root@localhost pub]# rpm -ql vsftpd (任何位置都可以使用,不用去光驱),查看vsftpd相关目录
[root@oldboy ~]# rpm -ql vsftpd | grep /var/ftp/pub
/var/ftp/pub # 这个目录可以联网公开 (站点目录)
[root@oldboy ~]# rpm -qc vsftpd
/etc/logrotate.d/vsftpd 日志切割
/etc/pam.d/vsftpd
/etc/vsftpd/ftpusers
/etc/vsftpd/user_list
/etc/vsftpd/vsftpd.conf ## 该服务的配置文件
[root@oldboy ~]# egrep -v '^$|^#' /etc/vsftpd/vsftpd.conf
anonymous_enable=YES
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
# 3.进入目录
[root@localhost ~]# cd /var/ftp/pub/
# 4.启动服务---关闭服务的话,访问不到平台了(只要服务开着,那么就可以访问该镜像站)
[root@localhost pub]# systemctl start vsftpd (vsftpd d是守护进程的意思)
# 5.检测服务是否启动成功 (该服务使用的是21号端口)
[root@localhost pub]# netstat -lntup|grep 21
tcp6 0 0 :::21 :::* LISTEN 128349/vsftpd
[root@oldboy pub]# ll /var/ftp/pub/ -d 查看权限
drwxr-xr-x 5 root root 43 Apr 18 11:21 /var/ftp/pub/
[root@oldboy base]# chmod 777 /var/ftp/pub/ 授权
[root@oldboy pub]# netstat -lntup (netstat是检查端口的命令,没装的话要安装)
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1323/nginx: master
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 774/sshd (共用端口???)
tcp6 0 0 ::1:25 :::* LISTEN 856/master
tcp6 0 0 :::80 :::* LISTEN 1323/nginx: master (特殊端口80,可以省略)
tcp6 0 0 :::21 :::* LISTEN 29054/vsftpd (vsftpd使用21号端口)
tcp6 0 0 :::22 :::* LISTEN 774/sshd (xhsll只要连接就会启动这个端口)
[root@oldboy pub]# systemctl stop firewalld
[root@oldboy pub]# setenforce 0
setenforce: SELinux is disabled
[root@oldboy pub]# getenforce
Disabled
firewalld的基本使用
启动: systemctl start firewalld
关闭: systemctl stop firewalld
查看状态: systemctl status firewalld
开机禁用 : systemctl disable firewalld #永久
开机启用 : systemctl enable firewalld
用status看不到源码安装的nginx,systemctl命令也无法操作源码
# 6.打开浏览器访问 英文的 (不能用IE浏览器)
ftp://10.0.0.200 使用ftp://协议,使用浏览器(不用IE),访问仓库机
[root@oldboy pub]# mkdir syy base
[root@oldboy pub]# cd base/
[root@oldboy base]# ll
total 0
[root@oldboy base]# cp -a /mnt/Packages/* . 移动光驱base源,要加-a=-r-p
爬虫 #有时候克隆虚拟机可能会导致光驱挂载断开
# 7.安装创建yum仓库的命令
[root@localhost ~]# yum install -y createrepo (创建 仓库)
# 8.将ftp服务的 站点目录 /var/ftp/pub 创建成yum仓库,不做成yum仓库的话,只能用windows访问(ftp://IP),用createrepo命令配合vsftpd可以把linux里的目录做出yum仓库(镜像站),这样Linux用户就可以用yum命令通过仓库URL指向访问(带上/repodate/repomod.xml一起)该镜像站(下载)
createrepo:
浏览器仓库---》yum仓库
[root@localhost ~]# createrepo /var/ftp/pub/ (目录的上一级目录,该目录下的目录都是yum仓库内容),在该目录下会生成repodata(里面有.xml),包越多越卡
[root@localhost ~]# createrepo /var/ftp/pub/base 当然也可以这样(注意客户机URL指向问题,指向上一级目录)
createrepo 指向谁谁下面就会生成一个/pub/repodate/repomd.xml,(小心客户机URL指向,指向和createrepo一致就对了),xml和html都是一种前端的语法
小技巧,createrepo 100次
[root@oldboy pub]# ll
total 304
drwxr-xr-x 2 root root 237568 May 1 2020 base
drwxr-xr-x 2 root root 4096 Apr 16 22:58 repodata (里面有.xml)
-------------------------------------------------------------客户机
[root@oldboy yum.repos.d]# gzip ./*
####实时更新仓库包? 或者创建一个用来更新的仓库(同步中)
yum clean (尽量用all) 清除
= yum clean all
yum makecache 生成
#一般重新 createrepo 一下
# 9.在- 客户端 -写配置文件
[root@qls yum.repos.d]# vim /etc/yum.repos.d/zls.repo
#手写yum仓库
[zls_repo] (yum repolist 的时候用)
name='This is zls's repo'
baseurl=ftp://10.0.0.200/pub/ createrepo目录 (ftp://)(两个//)(浏览器:21)
gpgcheck=0 (检查)
enabled=1 (开启自启动)
[root@oooppp pub]# ll
total 60
drwxr-xr-x 2 root root 40960 Apr 16 08:25 base
drwxr-xr-x 2 root root 4096 Apr 16 08:35 repodata
drwxr-xr-x 2 root root 6 Apr 16 08:20 zabbix
# 10.查看仓库信息-------先清除缓存再 yum repolist
[root@qls yum.repos.d]# yum repolist
ftp://10.0.0.200/pug/base/repodata/repomd.xml (分析报错)
ftp://10.0.0.200/pub/repodata/repomd.xml
baseurl=ftp://10.0.0.200/pug/ 指向错误要重新修改指向(一致性)
[root@oooppp yum.repos.d]# yum repolist all
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
repo id repo name status
!syy_repo zhe si zhu shi enabled: 4,067
repolist: 4,067
虚拟机只要开着,自己或者客户机就可以使用yum访问该镜像站(ftp://IP)
## 方案二:本地协议,只能本机使用yum仓库----file:// (浏览器输入3个///)跟浏览器没关系,别的Linux用户,无法访问,跟vsftpd没关系
createrepo做yum仓库----yum子配置文件指向本地路径--file:///var/ftp/pub/---yum使用仓库
[root@oooppp yum.repos.d]# createrepo /mnt/Packages/
Directory /mnt/Packages/ must be writable. 光驱只读,不能制作成yum仓库
[root@localhost yum.repos.d]# vim zls_local.repo
[local_repo]
name=123
baseurl=file:///var/ftp/pub/ (当设置了file,那么就只能本机使用,指向有包才可以使用这个仓库)
gpgcheck=0
enabled=1 (可以省略)
## 方案三:使用nginx方案 http:// (跟阿里云一样)用nginx的好处就是随便定义目录在哪里
# 1.安装nginx服务,类似vsftpd,通过浏览器工作
一台虚拟机只能启动一个nginx,同时启动会报错(阿里云nginx,源码nginx),因为80端口一次只能给一个服务使用
nginx -t
#nginx 的站点目录是实时更新的
有时候需要执行:
1.清理浏览器缓存,三点---更多工具---清除浏览器数据
2.没有清理浏览器缓存的话,多刷新几次
3.yum alean all yum mack cache
4.修改nginx配置文件后重启浏览器或虚拟机
[root@localhost yum.repos.d]# yum install -y nginx 安装阿里云nginx
[root@oldboy yum.repos.d]# rpm -q nginx
nginx-1.16.1-1.el7.x86_64
[root@oldboy yum.repos.d]# rpm -qc nginx
/etc/logrotate.d/nginx
/etc/nginx/fastcgi.conf
/etc/nginx/nginx.conf
[root@oldboy yum.repos.d]# rpm -ql nginx
/etc/nginx/nginx.conf #这个是他的主配置文件
/usr/share/nginx/html/index.html
/var/log/nginx # 日志
钱导 16:48:39
nginx.conf 这个是他的主配置文件
钱导 16:49:03
conf.d这个目录下面可以放你自己写的nginx配置文件
# 2.修改nginx配置文件 (自定义一个nginx的配置文件,位置随便)
[root@localhost zls_repo]# vim /etc/nginx/conf.d/yum.conf
# 3.删除nginx的 默认配置文件------就留一个nginx的配置文件
[root@localhost zls_repo]# rm -f /etc/nginx/conf.d/default.conf (我的安装好ngnx为什么没有这个默认的配置文件)
# 4.自己 手写 nginx配置文件
[root@localhost zls_repo]# cat /etc/nginx/conf.d/yum.conf
server {
listen 80;
server_name localhost; (这里用IP10.0.0.55,也可以改成域名www.syyrepo.com,provides)
location / {
root /syy_repo; 以绝对路径表示站点目录
autoindex on;
access_log off;
}
}
mkdir /syy_repo 创建目录,添加包,做成yum仓库,这样自己或其他人就可以通过yum命令下载使用我的镜像源的包
###注释/etc/nginx/nginx.conf 里默认的脚本
# server {
# listen 443 ssl http2 default_server;
# listen [::]:443 ssl http2 default_server;
# server_name _;
# root /usr/share/nginx/html;
#
# ssl_certificate "/etc/pki/nginx/server.crt";
# ssl_certificate_key "/etc/pki/nginx/private/server.key";
# ssl_session_cache shared:SSL:1m;
# ssl_session_timeout 10m;
# ssl_ciphers HIGH:!aNULL:!MD5;
# ssl_prefer_server_ciphers on;
#
# # Load configuration files for the default server block.
# include /etc/nginx/default.d/*.conf;
#
# location / {
# }
#
# error_page 404 /404.html;
# location = /40x.html {
# }
#
# error_page 500 502 503 504 /50x.html;
# location = /50x.html {
# }
# }
------------------------------------------------
# 5.启动nginx
[root@localhost zls_repo]# systemctl start nginx
# 6.检测端口----检查端口是否被占用--------
[root@localhost zls_repo]# netstat -lntup|grep 80
tcp 0 0 0.0.0.0:80 (特殊的80端口) 0.0.0.0:* LISTEN 67732/nginx: master #占用端口的服务名称
当nginx启动之后,就可以直接通过ip(不用手动添加fttp://,系统自动添加了,:80是Linux了的特殊端口,也是最常用是端口,可以省略)或域名访问虚拟机了
---------现在是默认页面
# 7.创建仓库
[root@localhost Packages]# createrepo /zls_repo/centos/ (注意其他用户指向一致)
# 8.客户端手写配置文件
[root@qls yum.repos.d]# vi zls_aliyun.repo
[zls_aliyun]
name=123
baseurl=http://10.0.0.200/centos/
gpgcheck=0
enabled=1
# 9.检测yum仓库------能检测出来就可以 yum下载
[root@qls yum.repos.d]# yum repolist
使用3种协议搭建yum仓库的更多相关文章
- linux局域网搭建yum仓库(本地(file)、网络(ftp、http))
linux局域网搭建yum仓库(本地(file).网络(ftp.http)) yum配置文件解释: [ ]:定义仓库,base为仓库的名字,可任意 name:仓库的简短文字描述 baseurl:仓库的 ...
- 搭建yum仓库与定制rpm包
笔者Q:972581034 交流群:605799367.有任何疑问可与笔者或加群交流 当我们自动化部署集群的时候,想要快速的安装所有服务,搭建yum仓库与定制rpm包是我们首先要做的 原创作品,转载请 ...
- 使用ftp搭建yum仓库
此次操作在VMware Workstation虚拟机的CentOS7.5下进行 这里使用两台Linux主机,下表是它们所使用的操作系统以及IP地址. 两台Linux主机所使用的操作系统以及IP地址 操 ...
- VMware15.5版本通过挂载系统光盘搭建yum仓库
VMware15.5版本通过挂载系统光盘搭建yum仓库一.1.打开CentOS 7虚拟机. 2.登录虚拟机,选择未列出 用户名:root 密码:输入自己设置的密码 点击登录. 3.右键单击打开终端. ...
- 使用3种协议搭建本地yum仓库
关闭防火墙和selinux [root@qls yum.repos.d]# systemctl stop firewalld (stop,start,disable,enable) [root@qls ...
- 自动化部署必备技能—搭建YUM仓库
导言: YUM主要用于自动安装.升级rpm软件包,它能自动查找并解决rpm包之间的依赖关系.要成功的使用YUM工具安装更新软件或系统,就需要有一个包含各种rpm软件包的repository(软件仓库) ...
- CentOS7下搭建yum仓库
服务端配置: 1.开启yum缓存 sed -i 's#keepcache=0#keepcache=1#g' /etc/yum.conf [root@control /]# cat /etc/yum.c ...
- 搭建YUM仓库
概述 YUM 主要用于自动安装.升级 rpm 软件包,它能自动查找并解决 rpm 包之间的依赖关系.要功的使用 YUM 工具安装更新软件或系统,就需要有一个包含各种 rpm 软件包的 reposito ...
- 最简化搭建yum仓库
在使用rpm安装软件包时,时常会遇到一些软件依赖性问题,如果是简单的一两个依赖性还是可以手动解决.要是出现大量的依赖性问题的话会让增大工作量.yum是一个很好的前端程序,可解决软件包相关依赖性,可在多 ...
随机推荐
- P1627 [CQOI2009]中位数 题解
CSDN同步 原题链接 简要题意: 给定一个 \(1\) ~ \(n\) 的排列,求以 \(b\) 为中位数的 连续子序列且长度为奇数 的个数. 显然这段序列包含 \(b\). 中位数的定义:排序后在 ...
- Java8 学习笔记--函数式接口与lambda表达式的关系
在java中,lambda表达式与函数式接口是不可分割的,都是结合起来使用的. 对于函数式接口,我们可以理解为只有一个抽象方法的接口,除此之外它和别的接口相比并没有什么特殊的地方.为了确保函数式接口的 ...
- Iscsi技术
Iscsi技术 1案例1:发布iSCSI网络磁盘 1.1问题 本 ...
- Shell:homework
1.判断/etc/inittab文件是否大于100行,如果大于,则显示”/etc/inittab is a big file.”否则显示”/etc/inittab is a small file.”# ...
- 面向对象核心技术(java)
一.类的封装详解 在“面向对象编程基础(java)”的时候讲过,封装是面向对象编程的核心思想.同时我们也知道类是载体,只不过我们把对象的属性和行为封装在载体中. 现我们用封装的方式来实现,一个顾客去一 ...
- Python之利用jieba库做词频统计且制作词云图
一.环境以及注意事项 1.windows10家庭版 python 3.7.1 2.需要使用到的库 wordcloud(词云),jieba(中文分词库),安装过程不展示 3.注意事项:由于wordclo ...
- Android UIAutomator自动化测试
描述:UiAutomator接口丰富易用,可以支持所有Android事件操作,事件操作不依赖于控件坐标,可以通过断言和截图验证正确性,非常适合做UI测试. UIAutomator不需要测试人员了解代码 ...
- 【Java】 语言基础习题汇总 [2] 面向对象
30 面向对象的三条主线和面向对象的编程思想? 类与类的成员 : 属性.方法.构造器.代码块.内部类. 面向对象的三大特征:封装.继承.多态[如果还有一个,那就是抽象] 关键字:this.super. ...
- 用Python绘制全球疫情变化地图
目前全球疫情仍然比较严重,为了能清晰地看到疫情爆发以来至现在全球疫情的变化趋势,我绘制了一张疫情变化地图,完整代码共 230 行,需要的朋友在公众号回复关键字 疫情地图 即可. 废话不多说,先上图 下 ...
- ActiveMQ支持的消息协议
ActiveMQ支持哪些协议 ActiveMQ支持多种协议传输和传输方式,允许客户端使用多种协议连接ActiveMQ支持的协议:AUTO,OpenWire,AMQP,Stomp,MQTT等Active ...