阶段一 (服务端配置):
1. 准备好 Centos 7.9 虚拟机一台,配置 C 4核 M 8GB H 1024GB
2. 需要能够上网下载,开通上网连接即可:需要测试网络联通是否正常
---- yum update //更新 Yum
---- yum -y install rsync //安装 rsync组件
---- systemctl stop firewalld.service //关闭防火墙
---- systemctl disable firewalld.service //关闭闭防火墙开机自启动
——————————————————————————————————————————
如果出现这个情况就是没有设置好上网:需要开通或者检查 DNS 设置:设置 这台 20.155 可以上网
[root@localhost ~]# yum update ----更新 Yum
[root@localhost ~]# yum -y install rsync ----安装 Rsync
[root@localhost ~]# vi rsync.sh ----- 编辑 rsync.sh BASH
#!/bin/bash
#rsync 一键脚本 可以直接用vim 创建一个123.sh文件然后把这里面的全部复制到里面直接执行以下就可以了
#nginx-install
NG_DIR="/usr/local/nginx"
NG_CS="--user=www --group=www --with-http_stub_status_module --with-http_ssl_module"
yum install wget gcc pcre pcre-devel openssl-devel openssl gzip createrepo make cmake zlib-devel tar lrzsz -y
wget -c http://nginx.org/download/nginx-1.14.0.tar.gz
tar -xzf nginx-1.14.0.tar.gz
cd nginx-1.14.0
useradd www -s /sbin/nologin
./configure --prefix=$NG_DIR $NG_CS
make
make install
echo $?
echo "
[Unit]
Description=nginx service
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true
[Install]
WantedBy=multi-user.target
">/lib/systemd/system/nginx.service
echo "
worker_processes 2;
worker_rlimit_nofile 65535;
worker_cpu_affinity 1000 0100;
events {
worker_connections 15000;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
#include /usr/local/nginx/conf.d/*.conf;
server {
listen 80;
#server_name mirror.9527edu.com;
root /var/ftp/pub/;
# access_log /var/log/nginx/access.log main;
location / {
autoindex on;
autoindex_exact_size off;
autoindex_localtime on;
}
}
}" >/usr/local/nginx/conf/nginx.conf
#设置为nginx开机自启动,并设置为开机自启动
systemctl start nginx.service
systemctl enable nginx.service
ss -ntl
#安装vsftpd
yum install vsftpd -y
systemctl enable vsftpd
systemctl start vsftpd
#创建yum源存放目录
mkdir -p /var/ftp/pub/epel/7/
mkdir -p /var/ftp/pub/centos/7/os/x86_64/
mkdir -p /var/ftp/pub/centos/7/updates/x86_64/
mkdir -p /var/ftp/pub/centos/7/extras/x86_64/
mkdir -p /var/ftp/pub/centos/7/centosplus/x86_64/
echo "
SRPMS
aarch64
ppc64
repodata
EFI
LiveOS
CentOS_BuildTag
EULA
GPL
drpms
" >/var/ftp/pub/exclude.list
echo "
#epel
rsync -avz --exclude-from=/var/ftp/pub/exclude.list rsync://mirrors.tuna.tsinghua.edu.cn/epel/7/ /var/ftp/pub/epel/7/
createrepo /var/ftp/pub/epel/7/
#centos7-base
rsync -avz --exclude-from=/var/ftp/pub/exclude.list rsync://mirrors.tuna.tsinghua.edu.cn/centos/7/os/x86_64/ /var/ftp/pub/centos/7/os/x86_64/
createrepo /var/ftp/pub/centos/7/os/x86_64/
#centos7-updates
rsync -avz --exclude-from=/var/ftp/pub/exclude.list rsync://mirrors.tuna.tsinghua.edu.cn/centos/7/updates/x86_64/ /var/ftp/pub/centos/7/updates/x86_64/
createrepo /var/ftp/pub/centos/7/updates/x86_64/
#centos7-extras
rsync -avz --exclude-from=/var/ftp/pub/exclude.list rsync://mirrors.tuna.tsinghua.edu.cn/centos/7/extras/x86_64/ /var/ftp/pub/centos/7/extras/x86_64/
createrepo /var/ftp/pub/centos/7/extras/x86_64/
#centos7-centosplus
rsync -avz --exclude-from=/var/ftp/pub/exclude.list rsync://mirrors.tuna.tsinghua.edu.cn/centos/7/centosplus/x86_64/ /var/ftp/pub/centos/7/centosplus/x86_64/
createrepo /var/ftp/pub/centos/7/centosplus/x86_64/
" >/var/ftp/pub/centos7-rsync.sh
#这条命令可以做一个定时任务,每星期1的凌晨2点定时同步一下
sh /var/ftp/pub/centos7-rsync.sh
将代码 拷贝到 rsync.sh
[root@localhost ~]# sh rsync.sh ----执行安装刚刚拷贝好的脚本,全部自动执行
等下载完成就可以了,
测试连接能够正常访问
———————————————————————————————————————————____________________________________
阶段二 (客户端配置):
[root@Centostest02 ~]# cd /etc/yum.repos.d/
[root@Centostest02 yum.repos.d]# mkdir bak
[root@Centostest02 yum.repos.d]# mv *.repo bak/
[root@Centostest02 ~]# vi /etc/yum.repos.d/centos7.repo
[base]
name=Base
baseurl=http://192.168.20.155/centos/7/os/x86_64/
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
[epel]
name=epel
baseurl=http://192.168.20.155/epel/7/
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
#released updates
[updates]
name=Updates
baseurl=http://192.168.20.155/centos/7/updates/x86_64/
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
#additional packages that may be useful
[extras]
name=Extras
baseurl=http://192.168.20.155/centos/7/extras/x86_64/
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
#additional packages that extend functionality of existing packages
[centosplus]
name=Plus
baseurl=http://192.168.20.155/centos/7/centosplus/x86_64/
gpgcheck=0
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS
[root@Centostest02 ~]# yum clean all ---- 原有的缓存清空一下
[root@Centostest02 ~]# yum makecache ---- 生成一下缓存[root@Centostest02 ~]# yum update ----执行更新
“” 这样安装rpm包软件的时候就直接走本地的仓库而不需要走外网了 “”