Skip to content

Commit 421771d

Browse files
committed
Upgrade reinstall.sh and InstallNET.sh parameters
1 parent fc19fa9 commit 421771d

File tree

2 files changed

+107
-44
lines changed

2 files changed

+107
-44
lines changed

shell_scripts/system_reinstall/installnet.sh

Lines changed: 51 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,50 @@
11
#!/bin/bash
22

3+
### === 脚本描述 === ###
4+
# 脚本名称: installnet.sh
5+
# 功能: InstallNET.sh 的交互式脚本,可以选择自己安装的系统。
6+
# 作者: rouxyang <https://www.nodeseek.com/space/29457>
7+
# 创建日期: 2025-04-20
8+
# 许可证: MIT
9+
310
### === 版本信息 === ###
4-
SCRIPT_VERSION="0.0.1"
11+
SCRIPT_VERSION="0.0.2"
12+
SCRIPT_NAME="reinstall交互式安装脚本"
13+
SCRIPT_AUTHOR="[@Rouxyang] <https://www.nodeseek.com/space/29457>"
14+
15+
echo -e "\033[33m[信息] $SCRIPT_NAME ,版本: $SCRIPT_VERSION\033[0m"
16+
echo -e "\033[33m[作者] $SCRIPT_AUTHOR\033[0m"
17+
18+
### === 退出状态码 === ###
19+
EXIT_SUCCESS=0
20+
EXIT_ERROR=1
21+
EXIT_INTERRUPT=130 # Ctrl+C 退出码
522

623
### === 权限检查 === ###
724
[[ $EUID -ne 0 ]] && echo -e "\033[31m[错误] 请以root用户或sudo运行此脚本!\033[0m" && exit 1
825

26+
### === 颜色定义 === ###
27+
RED='\033[0;31m'
28+
GREEN='\033[0;32m'
29+
YELLOW='\033[0;33m'
30+
CYAN='\033[0;36m'
31+
NC='\033[0m'
32+
33+
### === 彩色输出函数 === ###
34+
success() { printf "${GREEN}%b${NC} ${@:2}\n" "$1"; }
35+
info() { printf "${CYAN}%b${NC} ${@:2}\n" "$1"; }
36+
danger() { printf "\n${RED}[错误] %b${NC}\n" "$@"; }
37+
warn() { printf "${YELLOW}[警告] %b${NC}\n" "$@"; }
38+
39+
### === 信号捕获 === ###
40+
cleanup() {
41+
log "INFO" "脚本被中断..."
42+
echo -e "${YELLOW}[警告] 脚本已退出!${NC}"
43+
exit $EXIT_INTERRUPT
44+
}
45+
trap cleanup SIGINT SIGTERM
46+
47+
948
### === 工具检查 === ###
1049
check_dependencies() {
1150
for tool in curl wget; do
@@ -16,32 +55,20 @@ check_dependencies() {
1655
done
1756
}
1857

19-
### === 颜色与提示函数 === ###
20-
GREEN='\033[32m'
21-
RED='\033[31m'
22-
YELLOW='\033[33m'
23-
BLUE='\033[34m'
24-
BOLD='\033[1m'
25-
NC='\033[0m'
26-
27-
info() { echo -e "${BLUE}[信息]${NC} $1"; }
28-
success() { echo -e "${GREEN}[成功]${NC} $1"; }
29-
warning() { echo -e "${YELLOW}[提示]${NC} $1"; }
30-
error() { echo -e "${RED}[错误]${NC} $1"; }
3158

3259
### === 函数:定义系统和版本 === ###
3360
define_systems() {
34-
SYSTEMS=( "debian" "ubuntu" "centos" "alpine" "kali" "almalinux" "rockylinux" "fedora" "windows" )
61+
SYSTEMS=( "ubuntu" "debian" "centos" "alpine" "kali" "almalinux" "rockylinux" "fedora" "windows" )
3562
declare -gA VERSIONS
36-
VERSIONS["debian"]="12 11 10 9"
37-
VERSIONS["ubuntu"]="22.04 20.04 18.04 16.04"
38-
VERSIONS["centos"]="9 8 7"
63+
VERSIONS["ubuntu"]="24.04 22.04 20.04"
64+
VERSIONS["debian"]="12 11 10 9 8 7"
65+
VERSIONS["centos"]="10 9 8 7"
3966
VERSIONS["alpine"]="edge 3.21 3.20 3.19 3.18"
4067
VERSIONS["kali"]="rolling"
4168
VERSIONS["almalinux"]="9 8"
4269
VERSIONS["rockylinux"]="9 8"
43-
VERSIONS["fedora"]="41 40 39 38"
44-
VERSIONS["windows"]="11 10"
70+
VERSIONS["fedora"]="39 38"
71+
VERSIONS["windows"]="2022 2019 2016 2012 11 10"
4572
DEFAULT_PASSWORD="LeitboGi0ro"
4673
DEFAULT_PORT="22"
4774
}
@@ -54,7 +81,7 @@ select_system() {
5481
success "已选择系统:$SYSTEM"
5582
break
5683
else
57-
warning "无效选择,请重试"
84+
warn "无效选择,请重试"
5885
fi
5986
done
6087
}
@@ -78,7 +105,7 @@ select_version() {
78105
success "已选择版本:$VERSION"
79106
break
80107
else
81-
warning "无效选择,请重试"
108+
warn "无效选择,请重试"
82109
fi
83110
done
84111
else
@@ -101,15 +128,15 @@ select_arch() {
101128
"32-bit") ARCH_FLAG="-v 32"; break ;;
102129
"arm64") ARCH_FLAG="-v arm64"; break ;;
103130
"跳过(自动检测)") ARCH_FLAG=""; break ;;
104-
*) warning "无效选择,请重试" ;;
131+
*) warn "无效选择,请重试" ;;
105132
esac
106133
done
107134
fi
108135
}
109136

110137
### === 函数:设置密码 === ###
111138
input_password() {
112-
warning "请输入密码(留空使用默认密码): "
139+
warn "请输入密码(留空使用默认密码): "
113140
read -rs PASSWORD
114141
echo
115142
PASSWORD=${PASSWORD:-$DEFAULT_PASSWORD}
@@ -190,7 +217,7 @@ confirm_and_run() {
190217
success "开始执行安装流程..."
191218
eval "$CMD"
192219
else
193-
warning "已取消执行。"
220+
warn "已取消执行。"
194221
exit 0
195222
fi
196223
}

shell_scripts/system_reinstall/reinstall.sh

Lines changed: 56 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,51 @@
11
#!/bin/bash
22

3+
### === 脚本描述 === ###
4+
# 脚本名称: reinstall.sh
5+
# 功能: reinstall 的交互式脚本,可以选择自己安装的系统。
6+
# 作者: rouxyang <https://www.nodeseek.com/space/29457>
7+
# 创建日期: 2025-04-20
8+
# 许可证: MIT
9+
310
### === 版本信息 === ###
4-
SCRIPT_VERSION="0.0.1"
11+
SCRIPT_VERSION="0.0.2"
12+
SCRIPT_NAME="reinstall交互式安装脚本"
13+
SCRIPT_AUTHOR="[@Rouxyang] <https://www.nodeseek.com/space/29457>"
14+
15+
echo -e "\033[33m[信息] $SCRIPT_NAME ,版本: $SCRIPT_VERSION\033[0m"
16+
echo -e "\033[33m[作者] $SCRIPT_AUTHOR\033[0m"
17+
18+
### === 退出状态码 === ###
19+
EXIT_SUCCESS=0
20+
EXIT_ERROR=1
21+
EXIT_INTERRUPT=130 # Ctrl+C 退出码
522

623
### === 权限检查 === ###
724
[[ $EUID -ne 0 ]] && echo -e "\033[31m[错误] 请以root用户或sudo运行此脚本!\033[0m" && exit 1
825

26+
### === 颜色定义 === ###
27+
RED='\033[0;31m'
28+
GREEN='\033[0;32m'
29+
YELLOW='\033[0;33m'
30+
CYAN='\033[0;36m'
31+
NC='\033[0m'
32+
33+
### === 彩色输出函数 === ###
34+
success() { printf "${GREEN}%b${NC} ${@:2}\n" "$1"; }
35+
info() { printf "${CYAN}%b${NC} ${@:2}\n" "$1"; }
36+
danger() { printf "\n${RED}[错误] %b${NC}\n" "$@"; }
37+
warn() { printf "${YELLOW}[警告] %b${NC}\n" "$@"; }
38+
39+
### === 信号捕获 === ###
40+
cleanup() {
41+
log "INFO" "脚本被中断..."
42+
echo -e "${YELLOW}[警告] 脚本已退出!${NC}"
43+
exit $EXIT_INTERRUPT
44+
}
45+
trap cleanup SIGINT SIGTERM
46+
47+
48+
949
### === 工具检查 === ###
1050
check_dependencies() {
1151
for tool in curl wget; do
@@ -16,18 +56,7 @@ check_dependencies() {
1656
done
1757
}
1858

19-
### === 颜色与提示函数 === ###
20-
GREEN='\033[32m'
21-
RED='\033[31m'
22-
YELLOW='\033[33m'
23-
BLUE='\033[34m'
24-
BOLD='\033[1m'
25-
NC='\033[0m'
2659

27-
info() { echo -e "${BLUE}[信息]${NC} $1"; }
28-
success() { echo -e "${GREEN}[成功]${NC} $1"; }
29-
warning() { echo -e "${YELLOW}[提示]${NC} $1"; }
30-
error() { echo -e "${RED}[错误]${NC} $1"; }
3160

3261
### === 变量定义 === ###
3362
SYSTEM=""
@@ -41,31 +70,38 @@ MODE=""
4170
### === 系统选择 === ###
4271
select_system() {
4372
SYSTEMS=("ubuntu" "debian" "centos" "alpine" "kali" "almalinux" "rocky" "arch" "fedora" "opensuse" "oracle"
44-
"windows" "dd" "alpine-live" "netboot.xyz")
73+
"redhat" "anolis" "opencloudos" "almalinux" "nixos" "openeuler"
74+
"windows" "dd" "alpine-live" "netboot.xyz")
4575

4676
info "请选择安装模式或系统:"
4777
select SYSTEM in "${SYSTEMS[@]}"; do
4878
if [[ -n "$SYSTEM" ]]; then
4979
success "已选择系统/模式:$SYSTEM"
5080
break
5181
else
52-
warning "无效选择,请重试"
82+
warn "无效选择,请重试"
5383
fi
5484
done
5585
}
5686

5787
### === 版本选择 === ###
5888
select_version() {
5989
declare -A VERSIONS
60-
VERSIONS["ubuntu"]="24.10 24.04 22.04 20.04 18.04 16.04"
90+
VERSIONS["ubuntu"]="25.04 24.04 22.04 20.04 18.04 16.04"
6191
VERSIONS["debian"]="12 11 10 9"
62-
VERSIONS["centos"]="10 9 8 7"
92+
VERSIONS["centos"]="10 9"
6393
VERSIONS["alpine"]="3.21 3.20 3.19 3.18"
64-
VERSIONS["fedora"]="41 40 39"
94+
VERSIONS["fedora"]="42 41"
6595
VERSIONS["opensuse"]="tumbleweed 15.6"
6696
VERSIONS["almalinux"]="9 8"
6797
VERSIONS["rocky"]="9 8"
6898
VERSIONS["oracle"]="9 8"
99+
VERSIONS["redhat"]="9 8"
100+
VERSIONS["anolis"]="23 8 7"
101+
VERSIONS["opencloudos"]="23 9 8"
102+
VERSIONS["almalinux"]="9 8"
103+
VERSIONS["nixos"]="24.11"
104+
VERSIONS["openeuler"]="25.03 24.03 22.03 20.03"
69105

70106
if [[ -n "${VERSIONS[$SYSTEM]}" ]]; then
71107
info "请选择版本或手动输入:"
@@ -80,7 +116,7 @@ select_version() {
80116
VERSION="$CHOICE"
81117
break
82118
else
83-
warning "无效选择,请重试"
119+
warn "无效选择,请重试"
84120
fi
85121
done
86122
else
@@ -90,7 +126,7 @@ select_version() {
90126

91127
### === 获取密码 === ###
92128
get_password() {
93-
warning "请输入密码(留空则使用默认密码):"
129+
warn "请输入密码(留空则使用默认密码):"
94130
read -rs PASSWORD
95131
echo
96132
if [[ -z "$PASSWORD" ]]; then
@@ -157,7 +193,7 @@ confirm_and_execute() {
157193
success "开始执行安装..."
158194
eval "$CMD"
159195
else
160-
warning "已取消安装流程"
196+
warn "已取消安装流程"
161197
exit 0
162198
fi
163199
}

0 commit comments

Comments
 (0)