![企业必备——Linux Centos7远程YUM仓库部署 企业必备——Linux Centos7远程YUM仓库部署](/default/index/img?u=aHR0cHM6Ly9jYWNoZS55aXN1LmNvbS91cGxvYWQvaW5mb3JtYXRpb24vMjAyMDAzMDkvMzMvMTE1MC5qcGc=)
本章目的:客户端Centos7-1能享用远程服务器Centos7 的YUM仓库
本章环境:一台服务器Centos7,一台客户端
Centos7-1,VM虚拟机
1.安装vsftpd服务
[root@localhost ~]# yum install vsftpd -y
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirrors.cn99.com
* extras: centos.ustc.edu.cn
* updates: mirrors.aliyun.com
正在解决依赖关系
--> 正在检查事务
---> 软件包 vsftpd.x86_64.0.3.0.2-25.el7 将被 安装
--> 解决依赖关系完成
2.挂载镜像
![企业必备——Linux Centos7远程YUM仓库部署 企业必备——Linux Centos7远程YUM仓库部署](/default/index/img?u=aHR0cHM6Ly9jYWNoZS55aXN1LmNvbS91cGxvYWQvaW5mb3JtYXRpb24vMjAyMDAzMDkvMzMvMTE1My5qcGc=)
[root@localhost ~]# mount /dev/sr0 /mnt/ //挂载到mnt目录
mount: /dev/sr0 写保护,将以只读方式挂载
[root@localhost ~]# df -hT
文件系统 类型 容量 已用 可用 已用% 挂载点
/dev/sda2 xfs 10G 3.9G 6.2G 39% /
devtmpfs devtmpfs 898M 0 898M 0% /dev
tmpfs tmpfs 912M 0 912M 0% /dev/shm
tmpfs tmpfs 912M 9.0M 903M 1% /run
tmpfs tmpfs 912M 0 912M 0% /sys/fs/cgroup
/dev/sda5 xfs 10G 37M 10G 1% /home
/dev/sda1 xfs 6.0G 174M 5.9G 3% /boot
tmpfs tmpfs 183M 20K 183M 1% /run/user/0
/dev/sr0 iso9660 4.3G 4.3G 0 100% /mnt
[root@localhost ~]# cd /var/
[root@localhost var]# ls //在var目录下面看到我们的ftb文件了
account crash ftp kerberos lock nis run tmp
adm db games lib log opt spool yp
cache empty gopher local mail preserve target
3.在ftp站点目录下,创建目录centos7,把我们的YUM源放在下面
[root@localhost var]# cd ftp/
[root@localhost ftp]# ls
pub
[root@localhost ftp]# mkdir centos7 //创建一个目录
[root@localhost ftp]# ls
centos7 pub
[root@localhost ftp]# cp -rf /mnt/* centos7/ & //我们把挂载点里面的所有文件放在我们刚才创建的目录底下
[1] 2705
[root@localhost ftp]# jobs //查看后台运行的进程
[1]+ 运行中 cp -i -rf /mnt/* centos7/ &
4.创建目录other,把我们的扩展源放在目录底下
[root@localhost ftp]# mkdir other //创建一个扩展目录
[root@localhost ftp]# ls
centos7 other pub
[root@localhost ftp]# createrepo -g /mnt/repodata/repomd.xml other/ //扩展目录下放非官方的软件包,第三方组织
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Sqlite DBs complete
[1]+ 完成 cp -i -rf /mnt/* centos7/
5.查看我们的进程,YUM源和扩展源
[root@localhost ftp]# jobs //查看进程状态,我们刚才的镜像已经复制好了
[root@localhost ftp]# cd centos7/
[root@localhost centos7]# ls
CentOS_BuildTag GPL LiveOS RPM-GPG-KEY-CentOS-7
EFI images Packages RPM-GPG-KEY-CentOS-Testing-7
EULA isolinux repodata TRANS.TBL
[root@localhost centos7]# cd ../other/
[root@localhost other]# ls
repodata
[root@localhost other]# cd repodata/ //我们的非官方软件包就放在这个配置文件里
[root@localhost repodata]# ls
01a3b489a465bcac22a43492163df43451dc6ce47d27f66de289756b91635523-filelists.sqlite.bz2
401dc19bda88c82c403423fb835844d64345f7e95f5b9835888189c03834cc93-filelists.xml.gz
5dc1e6e73c84803f059bb3065e684e56adfc289a7e398946574d79dac6643945-primary.sqlite.bz2
5f62201963ee83e178738d9f88078560377cc06f972a4c0094ab3be00cae515f-repomd.xml
6bf9672d0862e8ef8b8ff05a2fd0208a922b1f5978e6589d87944c88259cb670-other.xml.gz
7c36572015e075add2b38b900837bcdbb8a504130ddff49b2351a7fc0affa3d4-other.sqlite.bz2
c48538ac0f65ece36eb71d41b76f1eb1f98c58cc26777348490feaed8f38ab56-repomd.xml.gz
dabe2ce5481d23de1f4f52bdcfee0f9af98316c9e0de2ce8123adeefa0dd08b9-primary.xml.gz
repomd.xml
6.开启服务关闭防火墙
[root@localhost repodata]# cd ~
[root@localhost ~]# systemctl start vsftpd //开启vsftpd服务
[root@localhost ~]# netstat -ntap | grep 21 查看21端口,负责连接
tcp6 0 0 :::21 :::* LISTEN 3244/vsftpd
[root@localhost ~]# netstat -ntap | grep 20
[root@localhost ~]# systemctl stop firewalld.service //关闭防火墙
[root@localhost ~]# setenforce 0 //关闭增强功能
[root@localhost ~]#
7.在客户端Centos7中安装ftp服务
[root@client ~]# yum -install ftp -y 安装ftp服务
已加载插件:fastestmirror, langpacks
Usage: yum [options] COMMAND
List of Commands:
8.连接ftp服务器
[root@client ~]# ftp 192.168.17.128 //我们连接ftp输入服务器的地址
Connected to 192.168.17.128 (192.168.17.128).
220 (vsFTPd 3.0.2)
Name (192.168.17.128:root): ftp //匿名登录
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>
ftp>
9.把我们原来yum仓库的文件放到我们创建的目录中
root@client ~]# cd /etc/yum.repos.d/ //查看我们客户端的YUM仓库配置文件
[root@client yum.repos.d]# ls
CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo
CentOS-CR.repo CentOS-fasttrack.repo CentOS-Sources.repo
[root@client yum.repos.d]# vim centos-Base.repo
[root@client yum.repos.d]# mkdir bak //创建一个目录
[root@client yum.repos.d]# mv *.repo bak/ //把所有的配置文件全放在我们刚才的目录底下
[root@client yum.repos.d]# ls
bak
[root@client yum.repos.d]# ls bak/
CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo
CentOS-CR.repo CentOS-fasttrack.repo CentOS-Sources.rep
10.清除Yum缓存
[root@client yum.repos.d]# yum clean all //清除yum缓存
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
11.我们给客户端Centos7配一个路径
[root@client yum.repos.d]# vim centos7.repo
[base]
name=centos7.Packages //软件包
baseurl=ftp://192.168.17.128/centos7 //输入服务器地址和目录
enabled=1 //开启服务
gpgcheck=1 //密钥验证,因为我们是远程使用YUM仓库
gpgkey=ftp://192.168.17.128/centos7/RPM-GPG-KEY-CentOS-7
//RPM-GPG-KEY-CentOS-7 //这端密钥是服务器端的
[other]
name=other.Packages
baseurl=ftp://192.168.17.128/other
enabled=1
gpgcheck=0
~
~
wq
[root@localhost ftp]# cd centos7/ //把我们服务器的的密钥辅助到我们客户端的路径配置文件里
[root@localhost centos7]# ls
CentOS_BuildTag GPL LiveOS RPM-GPG-KEY-CentOS-7
EFI images Packages RPM-GPG-KEY-CentOS-Testing-7
EULA isolinux repodata TRANS.TBL
12.验证一下YUM源是否能使用
[root@client yum.repos.d]# yum list
yum-plugin-remove-with-leaves.noarch 1.1.31-50.el7 base
yum-plugin-rpm-warm-cache.noarch 1.1.31-50.el7 base
yum-plugin-show-leaves.noarch 1.1.31-50.el7 base
yum-plugin-tmprepo.noarch 1.1.31-50.el7 base
yum-plugin-tsflags.noarch 1.1.31-50.el7 base
yum-plugin-upgrade-helper.noarch 1.1.31-50.el7 base
yum-plugin-verify.noarch 1.1.31-50.el7 base
yum-plugin-versionlock.noarch 1.1.31-50.el7 base
yum-rhn-plugin.noarch 2.0.1-10.el7 base
yum-updateonboot.noarch
以上就是我们的所有内容了
谢谢大家观看