yum本地仓库脚本编写

cd /etc/yum.repos.d/ && curl -O http://mirrors.aliyun.com/repo/Centos-7.repo

Linux内网Yum仓库自动化部署脚本

先放个链接,万一有人关注呢

运维book思议
李小白,一个北漂的运维。希望能够通过本公众号与业内各位大神交流技术问题。
93篇原创内容

优质文章推荐

↓ ↓ ↓ ↓ 

Linux系统初始化脚本

能够监控100台服务器的磁盘利用率的脚本——16行代码实现

Linux系统初始化脚本之二

Linux系统巡检脚本——快速获取当前系统信息

Linux远程执行脚本——Python运维脚本

哪个Linux发行版会成为CentOS的平替?

在当今快节奏的互联网时代,Linux系统在企业和组织中扮演着至关重要的角色。为了保证服务器环境的高效运行和软件的稳定性,及时进行软件包的安装和更新显得尤为重要。然而,在某些情况下,网络访问受限或不可行,这就给软件管理带来了挑战。为了解决这一问题,部署内网Yum仓库成为了一种有效的解决方案。

优势

1、高效软件管理: 内网Yum仓库为企业和组织提供了一种高效的软件管理方式。通过在内网环境中搭建Yum仓库,管理员可以集中存储和管理所需的软件包。无需依赖公网下载,可以加快软件的安装和更新速度。这不仅节省了管理员的时间和精力,还提高了整体的工作效率。2、稳定环境控制: 内网Yum仓库允许管理员对软件的版本和依赖关系进行精确控制。在企业和组织中,特定的软件版本可能对系统稳定性和兼容性具有重要意义。通过部署内网Yum仓库,管理员可以选择适合自身环境需求的软件版本,确保系统的稳定性和一致性。3、解决网络限制: 在一些安全性较高的网络环境中,公网访问可能受到限制。这对于软件更新和安装带来了挑战。部署内网Yum仓库可以绕过公网限制,通过本地网络提供软件包的访问和下载。这使得在受限环境中管理和维护软件变得更加便捷和可控。适用场景1、企业内部网络: 大型企业往往拥有庞大的内部网络,为了确保系统的稳定性和数据的安全性,限制对公网的访问是常见的做法。在这种情况下,内网Yum仓库成为了必不可少的工具,以便在内部网络中管理和更新软件包。2、高度安全的环境: 在一些对安全性要求极高的环境中,包括政府机构、金融机构等,对公网的访问通常会受到严格控制。通过部署内网Yum仓库,可以在满足安全要求的前提下,高效地进行软件管理和维护,避免公网带来的潜在风险。3、离线环境: 在一些没有互联网连接或有限互联网访问的场景下,内网Yum仓库可以满足软件安装和更新的需求。例如,在离岸油田、船舶、飞机等远程场所,通过内网Yum仓库可以方便地提供所需的软件包,维护系统的稳定性和安全性。

脚本示例

#!/bin/bash
# 检查是否为root用户if [[ $EUID -ne 0 ]]; then echo "请以root用户身份运行此脚本" exit 1fi
# 设置变量YUM_REPO_DIR="/var/www/html/yum"YUM_CONF_FILE="/etc/yum.repos.d/local.repo"REMOTE_REPO_URL="http://example.com/yum"
# 安装必要的软件install_dependencies() { echo "安装所需的软件..." yum install -y createrepo echo "安装完成." echo}
# 创建本地Yum仓库create_local_repo() { echo "创建本地Yum仓库..." mkdir -p "$YUM_REPO_DIR" cp "$YUM_CONF_FILE" "$YUM_CONF_FILE.bak" sed -i 's/enabled=1/enabled=0/g' "$YUM_CONF_FILE"
createrepo "$YUM_REPO_DIR" echo "本地Yum仓库创建完成." echo}
# 同步远程仓库到本地sync_remote_repo() { echo "同步远程仓库到本地..." reposync -g -l -d -m --repoid=base --newest-only --download_path="$YUM_REPO_DIR" echo "远程仓库同步完成." echo}
# 生成Yum仓库配置文件generate_repo_config() { echo "生成Yum仓库配置文件..." cat <<EOT > "$YUM_CONF_FILE"[local]name=Local Yum Repositorybaseurl=file://$YUM_REPO_DIRenabled=1gpgcheck=0EOT echo "Yum仓库配置文件生成完成." echo}
# 清理临时文件和目录cleanup() { echo "清理临时文件和目录..." rm -rf "$YUM_REPO_DIR/.repodata" rm -rf "$YUM_REPO_DIR/repodata" echo "清理完成." echo}
# 主函数main() { install_dependencies create_local_repo sync_remote_repo generate_repo_config cleanup
echo "Yum仓库部署完成." echo}
# 执行主函数main

结束!如有不足之处,欢迎指正!

我们的组织在这里:

图片

欢迎新的小伙伴加入!在这里,我们鼓励大家积极参与群内讨论和交流,分享自己的见解和经验,一起学习和成长。同时,也欢迎大家提出问题和建议,让我们不断改进和完善这个平台。

图片

 

 

李逸皓

赞赏二维码喜欢作者

人喜欢

收录于合集 #Linux
 26
上一篇Python脚本实现Linux文件内容批量修改
阅读 707
 
 
posted @ 2023-05-31 15:16  往事已成昨天  阅读(35)  评论(0编辑  收藏  举报