1 Star 0 Fork 40

多多/oneinstack

forked from Justo/oneinstack 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
upgrade.sh 5.58 KB
一键复制 编辑 原始数据 按行查看 历史
Justo 提交于 2022-12-19 10:42 . feat: Add PHP-8.2
#!/bin/bash
# Author: yeho <lj2007331 AT gmail.com>
# BLOG: https://linuxeye.com
#
# Notes: OneinStack for CentOS/RedHat 7+ Debian 9+ and Ubuntu 16+
#
# Project home page:
# https://oneinstack.com
# https://github.com/oneinstack/oneinstack
export PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin
clear
printf "
#######################################################################
# OneinStack for CentOS/RedHat 7+ Debian 9+ and Ubuntu 16+ #
# Upgrade Software versions for OneinStack #
# For more information please visit https://oneinstack.com #
#######################################################################
"
# Check if user is root
[ $(id -u) != "0" ] && { echo "${CFAILURE}Error: You must be root to run this script${CEND}"; exit 1; }
oneinstack_dir=$(dirname "`readlink -f $0`")
pushd ${oneinstack_dir} > /dev/null
. ./versions.txt
. ./options.conf
. ./include/color.sh
. ./include/check_os.sh
. ./include/check_dir.sh
. ./include/download.sh
. ./include/get_char.sh
. ./include/upgrade_web.sh
. ./include/upgrade_db.sh
. ./include/upgrade_php.sh
. ./include/upgrade_redis.sh
. ./include/upgrade_memcached.sh
. ./include/upgrade_phpmyadmin.sh
. ./include/upgrade_oneinstack.sh
# get the out ip country
OUTIP_STATE=$(./include/ois.${ARCH} ip_state)
Show_Help() {
echo
echo "Usage: $0 command ...[version]....
--help, -h Show this help message
--nginx [version] Upgrade Nginx
--tengine [version] Upgrade Tengine
--openresty [version] Upgrade OpenResty
--apache [version] Upgrade Apache
--tomcat [version] Upgrade Tomcat
--db [version] Upgrade MySQL/MariaDB/Percona
--php [version] Upgrade PHP
--redis [version] Upgrade Redis
--memcached [version] Upgrade Memcached
--phpmyadmin [version] Upgrade phpMyAdmin
--oneinstack Upgrade OneinStack latest
--acme.sh Upgrade acme.sh latest
"
}
ARG_NUM=$#
TEMP=`getopt -o h --long help,nginx:,tengine:,openresty:,apache:,tomcat:,db:,php:,redis:,memcached:,phpmyadmin:,oneinstack,acme.sh -- "$@" 2>/dev/null`
[ $? != 0 ] && echo "${CWARNING}ERROR: unknown argument! ${CEND}" && Show_Help && exit 1
eval set -- "${TEMP}"
while :; do
[ -z "$1" ] && break;
case "$1" in
-h|--help)
Show_Help; exit 0
;;
--nginx)
nginx_flag=y; NEW_nginx_ver=$2; shift 2
;;
--tengine)
tengine_flag=y; NEW_tengine_ver=$2; shift 2
;;
--openresty)
openresty_flag=y; NEW_openresy_ver=$2; shift 2
;;
--apache)
apache_flag=y; NEW_apache_ver=$2; shift 2
;;
--tomcat)
tomcat_flag=y; NEW_tomcat_ver=$2; shift 2
;;
--db)
db_flag=y; NEW_db_ver=$2; shift 2
;;
--php)
php_flag=y; NEW_php_ver=$2; shift 2
;;
--redis)
redis_flag=y; NEW_redis_ver=$2; shift 2
;;
--memcached)
memcached_flag=y; NEW_memcached_ver=$2; shift 2
;;
--phpmyadmin)
phpmyadmin_flag=y; NEW_phpmyadmin_ver=$2; shift 2
;;
--oneinstack)
NEW_oneinstack_ver=latest; shift 1
;;
--acme.sh)
NEW_acme_ver=latest; shift 1
;;
--)
shift
;;
*)
echo "${CWARNING}ERROR: unknown argument! ${CEND}" && Show_Help && exit 1
;;
esac
done
Menu() {
while :; do
printf "
What Are You Doing?
\t${CMSG} 1${CEND}. Upgrade Nginx/Tengine/OpenResty
\t${CMSG} 2${CEND}. Upgrade Apache
\t${CMSG} 3${CEND}. Upgrade Tomcat
\t${CMSG} 4${CEND}. Upgrade MySQL/MariaDB/Percona
\t${CMSG} 5${CEND}. Upgrade PHP
\t${CMSG} 6${CEND}. Upgrade Redis
\t${CMSG} 7${CEND}. Upgrade Memcached
\t${CMSG} 8${CEND}. Upgrade phpMyAdmin
\t${CMSG} 9${CEND}. Upgrade OneinStack latest
\t${CMSG}10${CEND}. Upgrade acme.sh latest
\t${CMSG} q${CEND}. Exit
"
echo
read -e -p "Please input the correct option: " Upgrade_flag
if [[ ! "${Upgrade_flag}" =~ ^[1-9,q]$|^10$ ]]; then
echo "${CWARNING}input error! Please only input 1~10 and q${CEND}"
else
case "${Upgrade_flag}" in
1)
[ -e "${nginx_install_dir}/sbin/nginx" ] && Upgrade_Nginx
[ -e "${tengine_install_dir}/sbin/nginx" ] && Upgrade_Tengine
[ -e "${openresty_install_dir}/nginx/sbin/nginx" ] && Upgrade_OpenResty
;;
2)
Upgrade_Apache
;;
3)
Upgrade_Tomcat
;;
4)
Upgrade_DB
;;
5)
Upgrade_PHP
;;
6)
Upgrade_Redis
;;
7)
Upgrade_Memcached
;;
8)
Upgrade_phpMyAdmin
;;
9)
Upgrade_OneinStack
;;
10)
[ -e ~/.acme.sh/acme.sh ] && { ~/.acme.sh/acme.sh --force --upgrade; ~/.acme.sh/acme.sh --version; }
;;
q)
exit
;;
esac
fi
done
}
if [ ${ARG_NUM} == 0 ]; then
Menu
else
[ "${nginx_flag}" == 'y' ] && Upgrade_Nginx
[ "${tengine_flag}" == 'y' ] && Upgrade_Tengine
[ "${openresty_flag}" == 'y' ] && Upgrade_OpenResty
[ "${apache_flag}" == 'y' ] && Upgrade_Apache
[ "${tomcat_flag}" == 'y' ] && Upgrade_Tomcat
[ "${db_flag}" == 'y' ] && Upgrade_DB
[ "${php_flag}" == 'y' ] && Upgrade_PHP
[ "${redis_flag}" == 'y' ] && Upgrade_Redis
[ "${memcached_flag}" == 'y' ] && Upgrade_Memcached
[ "${phpmyadmin_flag}" == 'y' ] && Upgrade_phpMyAdmin
[ "${NEW_oneinstack_ver}" == 'latest' ] && Upgrade_OneinStack
[ "${NEW_acme_ver}" == 'latest' ] && [ -e ~/.acme.sh/acme.sh ] && { ~/.acme.sh/acme.sh --force --upgrade; ~/.acme.sh/acme.sh --version; }
fi
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Shell
1
https://gitee.com/jiaxingweiyi/oneinstack.git
git@gitee.com:jiaxingweiyi/oneinstack.git
jiaxingweiyi
oneinstack
oneinstack
main

搜索帮助

0d507c66 1850385 C8b1a773 1850385