#!/bin/bash
clear
echo -e "\033[31m 在使用此脚本前,请检查ISO光盘镜像文件是否已经加载到虚拟光驱中,同时请查看虚拟光驱是否处于已连接状态. \033[0m"
sleep 5
yum clean all > /dev/null 2>&1
yumrepo=$(yum repolist | sed -n '/repolist:/p' | awk -F: '{print $2}')
if [[ $yumrepo -eq 0 ]]
then
echo -e "\033[31m 正在尝试卸载/dev/cdrom现有挂载... \033[0m"
sleep 3
umount /dev/cdrom > /dev/null 2>&1
echo -e "\033[31m 正在尝试卸载/mnt现有挂载... \033[0m"
sleep 3
umount /mnt/ > /dev/null 2>&1
echo -e "\033[31m 正在将/dev/cdrom挂载至/mnt目录下... \033[0m"
sleep 3
mount /dev/cdrom /mnt/ > /dev/null 2>&1
echo -e "\033[31m 正在创建YUM配置文件备份目录... \033[0m"
sleep 3
mkdir /root/old/
echo -e "\033[31m 正在清空现有配置文件,移动至已创建的文件备份目录... \033[0m"
sleep 3
mv /etc/yum.repos.d/* /root/old/ > /dev/null 2>&1
echo -e "\033[31m 正在创建新的YUM配置文件,并写入本地YUM配置... \033[0m"
sleep 5
touch /etc/yum.repos.d/new.repo
echo "[new-repo]" >> /etc/yum.repos.d/new.repo
echo "name=new-repo" >> /etc/yum.repos.d/new.repo
echo "baseurl=file:///mnt" >> /etc/yum.repos.d/new.repo
echo "enabled=1" >> /etc/yum.repos.d/new.repo
echo "gpgcheck=0" >> /etc/yum.repos.d/new.repo
mv /root/old/ /etc/yum.repos.d/
yum clean all > /dev/null 2>&1
echo -e "\033[31m YUM配置已写入完毕,即将重新读取该配置文件... \033[0m"
sleep 3
yumrepo2=$(yum repolist | sed -n '/repolist:/p' | awk -F: '{print $2}')
if [[ $yumrepo2 -ne 0 ]]
then
sleep 3
echo -e "\033[31m 本地YUM配置完毕,可正常使用了. \033[0m"
else
sleep 3
echo -e "\033[31m 请检查ISO光盘镜像文件是否已经加载到虚拟光驱中,同时请查看虚拟光驱是否处于已连接状态,检查完毕后可尝试重新运行次脚本. \033[0m"
fi
else
sleep 3
echo -e "\033[31m 已有本地YUM,可直接使用. \033[0m"
fi
CentOS7.5在VMware workstations环境下自动配置本地YUM源Shell脚本(个人练习)
最新推荐文章于 2021-12-31 15:41:51 发布