使用ftp搭建yum仓库
此次操作在VMware Workstation虚拟机的CentOS7.5下进行
这里使用两台Linux主机,下表是它们所使用的操作系统以及IP地址。
|
两台Linux主机所使用的操作系统以及IP地址 |
|
| 操作系统 | IP地址 |
| CentOS7.5 | 192.168.5.21 |
| CentOS7.5 | 192.168.5.23 |
操作192.168.5.21主机
在虚拟机设置中选择ISO映像文件,并在设备状态中勾选启动时连接

设置完成后,开启虚拟机
此时再看虚拟机设置里的设备状态,已连接、启动时连接都是被勾选的

鼠标放在右下角光盘图标上也会显示当前使用的ISO镜像

一、挂载光盘
# 以只读方式挂载光盘至/mnt目录下
mount -r /dev/cdrom /mnt/
# 查看/mnt目录下,是否挂载成功
ll /mnt/

二、配置本地yum仓库
mkdir /tmp/yum/ && mv /etc/yum.repos.d/* /tmp/yum/
# 创建repo文件
vim /etc/yum.repos.d/ftp.repo,文件名称可随意,但后缀必须为.repo
写入以下配置参数,并保存退出!
[ftp]
name=ftp
baseurl=file:///mnt
enabled=
gpgcheck=
说明:
[ftp] :Yum软件仓库唯一标识符,避免与其他仓库冲突。
name=ftp:Yum软件仓库的名称描述,易于识别仓库用处。
baseurl=file:///mnt:提供的方式包括FTP(ftp://..)、HTTP(http://..)、本地(file:///..)。
enabled=1:设置此源是否可用;1为可用,0为禁用。
gpgcheck=0:设置此源是否校验文件;1为校验,0为不校验。
gpgkey=file:///mnt/RPM-GPG-KEY-CentOS-7:若上面参数开启校验,那么请指定公钥文件地址。
清除本地yum缓存并测试yum源指向文件是否正常
yum clean all
yum repolist

三、安装配置vsftpd
yum install -y vsftpd
默认创建的vsftpd服务,匿名用户拥有读写删除权限,可在 /etc/vsftpd/vsftpd.conf 文件中对匿名用户做限制,具体配置如下:
anonymous_enable=YES
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO

注意:/etc/vsftpd/vsftpd.conf 配置文件注释里不能有中文,否则vsftpd服务启动会报错
# 启动
systemctl start vsftpd
# 加入开机启动
systemctl enable vsftpd
# 查看状态
systemctl status vsftpd
复制光盘中的相关的文件复制至ftp的 /var/ftp/pub(/var/ftp/pub为ftp匿名默认访问目录)目录
mkdir -p /var/ftp/pub/centos7.5
cd /mnt/
cp -a Packages/ repodata/ RPM-GPG-KEY-CentOS-7 RPM-GPG-KEY-CentOS-Testing-7 /var/ftp/pub/centos7.5/

复制两个目录,两个文件
Packages和repodata,Packages这个目录是yum安装时的rpm包。
repodata目录里面包含了一个以 .xml 结尾的文件,这个文件是yum索引文件,包含了rpm包的一些信息,比如依赖关系这些的。通过它用yum安装才能在自动解决。如果,没有复制repodata命令,可以使用命令 yum install -y createrepo 安装,然后使用 createrepo /var/ftp/pub/centos7.5/ 命令创建 repodata 目录。
其他两个文件是公钥文件,可以在搭建yum仓库时选择yum源是否校验文件,配置 gpgkey 参数使用。
/var/ftp/pub 目录的权限中,other的权限一定要为r_x,否则匿名用户无法访问该文件。
在本地局域网其它主机浏览器上也可以访问ftp
ftp://192.168.5.21/pub/centos7.5/

四、在192.168.5.23主机上搭建ftp的yum仓库
mkdir /tmp/yum/ && mv /etc/yum.repos.d/* /tmp/yum/
vim /etc/yum.repos.d/ftp.repo
写入以下配置参数,并保存退出!
[ftp]
name=ftp
baseurl=ftp://192.168.5.21/pub/centos7.5/
enabled=
gpgcheck=
注意第3行不是这样:baseurl=ftp://192.168.5.21/pub/centos7.5/Packages/,我刚开始写成这样,在使用yum时报如下错误

执行下面的操作,清除本地yum缓存并重新创建缓存
yum clean all
yum makecache

此时ftp的yum仓库就搭建完成了!可以使用yum安装软件,感受一下
本文参考自:https://blog.51cto.com/11975865/2068751
使用ftp搭建yum仓库的更多相关文章
- linux局域网搭建yum仓库(本地(file)、网络(ftp、http))
linux局域网搭建yum仓库(本地(file).网络(ftp.http)) yum配置文件解释: [ ]:定义仓库,base为仓库的名字,可任意 name:仓库的简短文字描述 baseurl:仓库的 ...
- 搭建yum仓库与定制rpm包
笔者Q:972581034 交流群:605799367.有任何疑问可与笔者或加群交流 当我们自动化部署集群的时候,想要快速的安装所有服务,搭建yum仓库与定制rpm包是我们首先要做的 原创作品,转载请 ...
- VMware15.5版本通过挂载系统光盘搭建yum仓库
VMware15.5版本通过挂载系统光盘搭建yum仓库一.1.打开CentOS 7虚拟机. 2.登录虚拟机,选择未列出 用户名:root 密码:输入自己设置的密码 点击登录. 3.右键单击打开终端. ...
- FTP搭建YUM源服务器
一.FTP搭建YUM源服务器 1.服务器 挂载centos镜像[root@localhost ~]#yum install vsftpd[root@localhost ~]#systemctl sta ...
- Linux 制作ftp远程yum仓库
一.下载createrepo yum install createrepo -y 二.安装vsftp软件 yum install vsftpd -y 三.将pub制作为yum仓库 把需要的rpm包拷贝 ...
- 使用FTP搭建YUM
VSFTP搭建YUM源 1.安装FTP [root@FTP kel]# rpm -qa |grep vsftp vsftpd-2.2.2-6.el6_0.1.x86_64 首先需要安装的ftp软件为v ...
- 最简化搭建yum仓库
在使用rpm安装软件包时,时常会遇到一些软件依赖性问题,如果是简单的一两个依赖性还是可以手动解决.要是出现大量的依赖性问题的话会让增大工作量.yum是一个很好的前端程序,可解决软件包相关依赖性,可在多 ...
- 搭建YUM仓库
概述 YUM 主要用于自动安装.升级 rpm 软件包,它能自动查找并解决 rpm 包之间的依赖关系.要功的使用 YUM 工具安装更新软件或系统,就需要有一个包含各种 rpm 软件包的 reposito ...
- 同步阿里云镜像到本地,在本地搭建YUM仓库
1.下载阿里云镜像repo文件 项目使用CentOS6系统,因此我下载的文件是: # CentOS-Base.repo # # The mirror system uses the connectin ...
随机推荐
- [LeetCode] 208. Implement Trie (Prefix Tree) 实现字典树(前缀树)
Implement a trie with insert, search, and startsWith methods. Example: Trie trie = new Trie(); trie. ...
- 这篇文章主要讲解C#中的泛型,泛型在C#中有很重要的地位,尤其是在搭建项目框架的时候。
一.什么是泛型 泛型是C#2.0推出的新语法,不是语法糖,而是2.0由框架升级提供的功能. 我们在编程程序时,经常会遇到功能非常相似的模块,只是它们处理的数据不一样.但我们没有办法,只能分别写多个方法 ...
- JAVA主动抛异常的几种方式及捕捉结果输出对比
测试代码: /** * 测试异常抛出及捕捉 */ @Test public void test() { try { this.testA(); } catch (Exception ex) { Sys ...
- (十六)golang--匿名函数
Go支持匿名函数,如果我们某个函数只是使用一次,可以考虑使用匿名函数,匿名函数也可以实现多次调用: 匿名函数的使用方式:(1)在定义匿名函数的时候就直接调用,这种方式匿名函数只调用一次: (2)将匿名 ...
- laravel中如何执行请求
laravel中如何执行request请求?本篇文章给大家介绍关于laravel中执行请求的方法,需要的朋友可以参考一下,希望对你有所帮助. 我们先来看一下request是什么? 客户端(例如Web浏 ...
- 前端与算法 leetcode 387. 字符串中的第一个唯一字符
目录 # 前端与算法 leetcode 387. 字符串中的第一个唯一字符 题目描述 概要 提示 解析 解法一:双循环 解法二:Set法单循环 算法 传入测试用例的运行结果 执行结果 GitHub仓库 ...
- 【排错】springboot项目,启动报An attempt was made to call the method com.google.gson.GsonBuilder.setLenient()Lcom/google/gson/GsonBuilder; but it does not exist.
pom文件新引入: <dependency> <groupId>com.google.code.gson</groupId> ...
- spring-session-jdbc 使用
这个文档比较有用了,参考: https://www.cnblogs.com/davidwang456/p/10361550.html>https://www.cnblogs.com/davidw ...
- sql server锁表、查询被锁表、解锁被锁表的相关语句
MSSQL(SQL Server)在我的印象中很容易锁表,大致原因就是你在一个窗口中执行的DML语句没有提交,然后又打开了一个窗口对相同的表进行CRUD操作,这样就会导致锁表.锁表是一种保持数据一致性 ...
- 【BZOJ5104】Fib数列(BSGS,二次剩余)
[BZOJ5104]Fib数列(BSGS,二次剩余) 题面 BZOJ 题解 首先求出斐波那契数列的通项: 令\(A=\frac{1+\sqrt 5}{2},B=\frac{1-\sqrt 5}{2}\ ...