From 741e9912900af5e17d5623391689242b6a7602b1 Mon Sep 17 00:00:00 2001 From: lizw <1183409807@qq.com> Date: Sun, 30 Oct 2022 20:01:58 +0800 Subject: [PATCH] 07env-install-centos.sh --- 00base/07env-install-centos.sh | 50 +++++++++++++++++++++++++++++++----------- 1 file changed, 37 insertions(+), 13 deletions(-) diff --git a/00base/07env-install-centos.sh b/00base/07env-install-centos.sh index 0a21814..bdf94db 100644 --- a/00base/07env-install-centos.sh +++ b/00base/07env-install-centos.sh @@ -15,6 +15,7 @@ ADD_USER_PASSWORD="MoXF2Zi6u7f7lqZu" BASE_DIR="/opt" # 软件 +YUM_REPOS="http://mirrors.aliyun.com/repo/Centos-7.repo" #--- jdk JDK_URL="https://d6.injdk.cn/oraclejdk/11/jdk-11.0.16.1_linux-x64_bin.tar.gz" JDK_FILE_NAME="jdk-11.0.16.1_linux-x64_bin.tar.gz" @@ -40,6 +41,7 @@ SUDO_PASSWORD="" #--- 指令 INIT_TAG="0" #--- 指令参数 +UPDATE_YUM_REPOS="1" ADD_USER_TAG="1" GIT_TAG="1" DSTAT_TAG="1" @@ -224,6 +226,23 @@ function command::exec() { ###################################################################################################### # 安装函数 ###################################################################################################### +# 更新yum源 +function init:update_yum_repos() { + log::info "[update-yum-repos]" "更新yum源..." + local host="127.0.0.1" + local repo_bak="/etc/yum.repos.d/CentOS-Base.repo_bak" + command::exec "${host}" " + $(declare -f utils::download_file) + if [ ! -f "$repo_bak" ]; then + mv /etc/yum.repos.d/CentOS-Base.repo $repo_bak + utils::download_file ${YUM_REPOS} /etc/yum.repos.d/CentOS-Base.repo + yum makecache + fi + " + check::exit_code "$?" "update-yum-repos" "$host 更新yum源" "exit" + log::info "[update-yum-repos]" "yum源更新成功!" +} + # 新增用户 function init:add_user() { log::info "[add-user]" "新增用户[${ADD_USER_NAME}]..." @@ -371,20 +390,21 @@ Usage: env-install-centos.sh [command] Available Commands: - init 初始化系统 + init 初始化系统 Flag: - -add-user 是否新增用户, 默认: '1' - -user-name 新增用户名, 默认: 'www' - -base-dir 新增用户名, 默认: '/opt' - -git 是否安装git环境, 默认: '1' - -dstat 是否安装dstat, 默认: '1' - -htop 是否安装htop, 默认: '1' - -nginx 是否安装nginx, 默认: '1' - -nodejs 是否安装nodejs环境, 默认: '1' - -java 是否安装java环境, 默认: '1' - -gradle 是否安装gradle环境, 默认: '1' - -maven 是否安装maven环境, 默认: '1' - -jenkins 是否安装jenkins环境, 默认: '1' + -update-yum-repos 是否更新yum源, 默认: '1' + -add-user 是否新增用户, 默认: '1' + -user-name 新增用户名, 默认: 'www' + -base-dir 新增用户名, 默认: '/opt' + -git 是否安装git环境, 默认: '1' + -dstat 是否安装dstat, 默认: '1' + -htop 是否安装htop, 默认: '1' + -nginx 是否安装nginx, 默认: '1' + -nodejs 是否安装nodejs环境, 默认: '1' + -java 是否安装java环境, 默认: '1' + -gradle 是否安装gradle环境, 默认: '1' + -maven 是否安装maven环境, 默认: '1' + -jenkins 是否安装jenkins环境, 默认: '1' Example: env-install-centos.sh init \\ @@ -406,6 +426,9 @@ while [ "${1:-}" != "" ]; do init ) INIT_TAG="1" ;; # -------------------------------------------------------------- 指令参数 + -update-yum-repos ) shift + UPDATE_YUM_REPOS=${1:-UPDATE_YUM_REPOS} + ;; -add-user ) shift ADD_USER_TAG=${1:-ADD_USER_TAG} ;; @@ -452,6 +475,7 @@ done log::info "[start]" "bash $0 ${SCRIPT_PARAMETER}" # 动作 if [[ "${INIT_TAG:-}" == "1" ]]; then + [[ "${UPDATE_YUM_REPOS:-}" == "1" ]] && { init:update_yum_repos; } [[ "${ADD_USER_TAG:-}" == "1" ]] && { init:add_user; } [[ "${GIT_TAG:-}" == "1" ]] && { init:git; } [[ "${DSTAT_TAG:-}" == "1" ]] && { init:dstat; }