From b3bd5ad13b6186cb2510abc848a7c8a1fabb614b Mon Sep 17 00:00:00 2001 From: xubiaolin Date: Fri, 1 Mar 2024 21:06:50 +0800 Subject: [PATCH] update-kernel --- deploy.sh | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/deploy.sh b/deploy.sh index 76ef598..4b35f13 100755 --- a/deploy.sh +++ b/deploy.sh @@ -1,6 +1,38 @@ #!/bin/bash CONTAINER_NAME=myztplanet +# 如果是centos 且内核版本小于5.*,提示内核版本太低 +kernel_check(){ + os_name=$(cat /etc/os-release | grep ^ID= | cut -d'=' -f2) + kernel_version=$(uname -r | cut -d'.' -f1) + if [[ "$kernel_version" -lt 5 ]]; then + echo "内核版本太低,请在菜单中选择内核升级[仅支持centos]" + exit 1 + else + echo "系统和内核版本检查通过。" + fi +} + +update_centos_kernal(){ + echo "请注意备份数据,升级内核有风险" + # 输入y/Y继续 + read -p "是否继续升级内核?(y/n)" continue_update + continue_update=${continue_update:-n} + if [[ "$continue_update" =~ ^[Yy]$ ]]; then + echo "开始升级内核..." + rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org + rpm -Uvh https://www.elrepo.org/elrepo-release-7.el8.elrepo.noarch.rpm + yum --enablerepo=elrepo-kernel install kernel-ml -y + grub2-set-default 0 + echo "内核升级完成,请重启系统" + exit 0 + else + echo "已取消升级内核" + exit 0 + fi + +} + install_lsof() { if [ ! -f "/usr/bin/lsof" ]; then echo "开始安装lsof工具..." @@ -32,6 +64,8 @@ read_port() { } install() { + kernel_check + echo "开始安装,如果你已经安装了,将会删除旧的数据,10s后开始安装..." sleep 10 @@ -261,6 +295,7 @@ menu() { # echo "3. 更新" echo "4. 查看信息" echo "5. 重置密码" + echo "6. CentOS内核升级" echo "0. 退出" read -p "请输入数字:" num case "$num" in @@ -269,6 +304,7 @@ menu() { # [3]) update ;; [4]) info ;; [5]) resetpwd ;; + [6]) update_centos_kernal ;; [0]) exit ;; *) echo "请输入正确数字 [1-5]" ;; esac