forked from kkkyg/CFwarp
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathucore.sh
133 lines (119 loc) · 3.64 KB
/
ucore.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
#!/usr/bin/env bash
#彩色
red(){
echo -e "\033[31m\033[01m$1\033[0m"
}
green(){
echo -e "\033[32m\033[01m$1\033[0m"
}
yellow(){
echo -e "\033[33m\033[01m$1\033[0m"
}
blue(){
echo -e "\033[36m\033[01m$1\033[0m"
}
vi=`systemd-detect-virt`
main=`uname -r | awk -F . '{print $1 }'`
minor=`uname -r | awk -F . '{print $2}'`
if [ "$main" -ge 5 ] && [ "$minor" -ge 6 ]; then
red "你的VPS内核版本大于5.6,无须升级!"
exit 1
fi
if [[ ${vi} == "lxc" || ${vi} == "openvz" ]]; then
red "你的VPS为lxc或openvz架构,无法升级内核!"
exit 1
fi
function c8(){
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
yum install https://www.elrepo.org/elrepo-release-8.el8.elrepo.noarch.rpm -y
yum --enablerepo=elrepo-kernel install kernel-ml -y
grub2-set-default 0
grub2-mkconfig -o /boot/grub2/grub.cfg
reboot
}
function c7(){
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
yum install https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm -y
yum --enablerepo=elrepo-kernel install kernel-ml -y
grub2-set-default 0
grub2-mkconfig -o /boot/grub2/grub.cfg
reboot
}
function ub(){
function v46(){
cd /tmp
wget --no-check-certificate -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.11/amd64/linux-headers-5.11.0-051100_5.11.0-051100.202102142330_all.deb
wget --no-check-certificate -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.11/amd64/linux-headers-5.11.0-051100-generic_5.11.0-051100.202102142330_amd64.deb
wget --no-check-certificate -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.11/amd64/linux-image-unsigned-5.11.0-051100-generic_5.11.0-051100.202102142330_amd64.deb
wget --no-check-certificate -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.11/amd64/linux-modules-5.11.0-051100-generic_5.11.0-051100.202102142330_amd64.deb
sudo dpkg -i *.deb
reboot
}
function v6(){
echo -e nameserver 2a0b:f4c0:4d:53::1 > /etc/resolv.conf
cd /tmp
wget --no-check-certificate -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.11/amd64/linux-headers-5.11.0-051100_5.11.0-051100.202102142330_all.deb
wget --no-check-certificate -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.11/amd64/linux-headers-5.11.0-051100-generic_5.11.0-051100.202102142330_amd64.deb
wget --no-check-certificate -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.11/amd64/linux-image-unsigned-5.11.0-051100-generic_5.11.0-051100.202102142330_amd64.deb
wget --no-check-certificate -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.11/amd64/linux-modules-5.11.0-051100-generic_5.11.0-051100.202102142330_amd64.deb
sudo dpkg -i *.deb
reboot
}
function menu(){
clear
green " 请确认当前的VPS属于以下哪种IP表现形式!"
blue " 1. 纯IPV4/双栈IPV4+IPV6 "
blue " 2. 纯IPV6 "
red " 0. 返回上一层 "
echo
read -p "请输入数字:" menuNumberInput
case "$menuNumberInput" in
1 )
v46
;;
2 )
v6
;;
0 )
start_menu
;;
esac
}
menu
}
function de(){
echo 'deb http://deb.debian.org/debian buster-backports main'>> /etc/apt/sources.list
apt update
apt install -t buster-backports linux-image-amd64 linux-headers-amd64 -y
update-grub
reboot
}
function start_menu(){
clear
green " 更新系统内核到官方源最新版本!注意,别手滑哦!"
blue " 1. Centos7 "
blue " 2. Centos8 "
blue " 3. Ubuntu20 "
blue " 4. Debain10 "
red " 0. 退出脚本 "
echo
read -p "请输入数字:" menuNumberInput
case "$menuNumberInput" in
1 )
c7
;;
2 )
c8
;;
3 )
ub
;;
4 )
de
;;
0 )
exit 1
;;
esac
}
start_menu "first"