diff --git a/00base/07env-install-centos.sh b/00base/07env-install-centos.sh index 728085b..4147bf3 100644 --- a/00base/07env-install-centos.sh +++ b/00base/07env-install-centos.sh @@ -197,7 +197,7 @@ function command::exec() { fi command="$sudo_options bash -c $(utils::quote "$command")" fi - command="$(utils::quote "$command")" +# command="$(utils::quote "$command")" if [[ "${host}" == "127.0.0.1" ]]; then # 本地执行 log::exec "[command]" "bash -c $(printf "%s" "${command//${SUDO_PASSWORD:-}/zzzzzz}")" @@ -228,23 +228,23 @@ function command::exec() { function init:add_user() { log::info "[add-user]" "新增用户[${ADD_USER_NAME}]..." local host="127.0.0.1" + local add_sudoers="${ADD_USER_NAME} ALL=(ALL) NOPASSWD:ALL" command::exec "${host}" " - # 创建用户 - adduser ${ADD_USER_NAME} - " - local code="$?" - if [[ "${code}" == "0" ]]; then - command::exec "${host}" " - # 设置密码 - echo ${ADD_USER_NAME}:${ADD_USER_PASSWORD} | chpasswd - # 新增修改权限 - chmod -v u+w /etc/sudoers - echo -e \"\n${ADD_USER_NAME} ALL=(ALL) NOPASSWD:ALL\n\" >> /etc/sudoers - # 收回修改权限 - chmod -v u-w /etc/sudoers - " - check::exit_code "$?" "add-user" "$host 新增用户[${ADD_USER_NAME}]" "exit" + if [ \`id -u ${ADD_USER_NAME} >/dev/null 2>&1\` -ne '0' ]; then + # 创建用户 + adduser ${ADD_USER_NAME} + # 设置密码 + echo ${ADD_USER_NAME}:${ADD_USER_PASSWORD} | chpasswd fi + if [ \`grep -c $add_sudoers /etc/sudoers\` -ne '0' ];then + # 新增修改权限 + chmod -v u+w /etc/sudoers + echo -e \"\n$add_sudoers\n\" >> /etc/sudoers + # 收回修改权限 + chmod -v u-w /etc/sudoers + fi + " + check::exit_code "$?" "add-user" "$host 新增用户[${ADD_USER_NAME}]" "exit" log::info "[add-user]" "新增用户[${ADD_USER_NAME}]成功!" }