Modify reset and readme files on March 26, 2025.

This commit is contained in:
raymond999999
2025-03-26 15:41:58 +08:00
parent 05acc06c91
commit 7f1cc1e168
9 changed files with 2977 additions and 355 deletions

View File

@@ -1,4 +1,4 @@
# Rocky、Almalinux、CentOS、Ubuntu、Debian、openEuler、Anolis OS、OpenCloudOS、openSUSE、银河麒麟Kylin Server和统信Uos Server系统初始化脚本
# Rocky、Almalinux、CentOS、Ubuntu、Debian、openEuler、AnolisOS、OpenCloudOS、openSUSE、银河麒麟Kylin Server和统信Uos Server系统初始化脚本
**Shell脚本源码地址**
@@ -13,22 +13,15 @@ Githubhttps://github.com/raymond999999/shell
| **支持的功能** | **支持的系统** |
| ------------------------------------------------------------ | ------------------------------------------------------------ |
| 修改网卡名、设置网络包括设置IP地址、子网掩码位数、网关地址和DNS地址包括单网卡和双网卡、设置主机名、设置镜像仓库、Minimal安装建议安装软件、关闭防火墙、禁用SELinux、禁用SWAP、设置系统时区、优化资源限制参数、优化内核参数、优化SSH、更改SSH端口号、设置系统别名、设置vimrc配置文件、安装邮件服务并配置、设置PS1、设置默认文本编辑器为vim、设置history格式、禁用ctrl+alt+del重启系统功能、Ubuntu和Debian设置root用户登录、Ubuntu卸载无用软件包、Ubuntu卸载snap。 | v9版支持的系统Rocky 8和9、AlmaLinux 8和9、CentOS 7、CentOS Stream 8、9和10、Ubuntu 18.04/20.04/22.04/24.04、Debian 11和12openEuler版支持的系统openEuler 22.03和24.03Anolis OS版支持的系统Anolis OS 8和23OpenCloudOS版支持的系统OpenCloudOS 8和9openSUSE版支持的系统openSUSE 15Kylin Server版支持的系统银河麒麟Kylin Server V10Uos Server版支持的系统统信Uos Server V20。 |
**v9_1和v9_2版本的区别**
v9_1和v9_2版本实现的功能都是一样的只是实现的方式不同。
| v9_1 | v9_2 |
| ------------------------------------------------------------ | ------------------------------------------------------------ |
| 1.Rocky、Almalinux、CentOS系统修改ip地址采用nmcli命令方式 | 1.Rocky、Almalinux、CentOS系统修改ip地址采用的是配置文件方式 |
| 2.Rocky、Almalinux、CentOS、Ubuntu和Debian系统修改镜像仓库采用sed直接替换网址方式 | 2.Rocky、Almalinux、CentOS、Ubuntu和Debian系统修改镜像仓库采用的是配置文件方式 |
| 3.设置系统时区采用timedatectl命令方式。 | 3.设置系统时区采用软链接方式。 |
| 修改网卡名、设置网络包括设置IP地址、子网掩码位数、网关地址和DNS地址包括单网卡和双网卡、设置主机名、设置镜像仓库、Minimal安装建议安装软件、关闭防火墙、禁用SELinux、禁用SWAP、设置系统时区、优化资源限制参数、优化内核参数、优化SSH、更改SSH端口号、设置系统别名、设置vimrc配置文件、安装邮件服务并配置、设置PS1、设置默认文本编辑器为vim、设置history格式、禁用ctrl+alt+del重启系统功能、Ubuntu和Debian设置root用户登录、Ubuntu卸载无用软件包、Ubuntu卸载snap。 | v9版支持的系统Rocky Linux 8和9、AlmaLinux 8和9、CentOS 7、CentOS Stream 8、9和10、Ubuntu 18.04/20.04/22.04/24.04、Debian 11和12openEuler版支持的系统openEuler 22.03和24.03Anolis OS版支持的系统AnolisOS 8和23OpenCloudOS版支持的系统OpenCloudOS 8和9openSUSE版支持的系统openSUSE 15Kylin Server版支持的系统银河麒麟Kylin Server V10Uos Server版支持的系统统信Uos Server V20。 |
**版本更新日志:**
| 版本 | 功能 |
| ------------------------ | ------------------------------------------------------------ |
| v10版更新内容 | 1.为Rocky Linux 9、AlmaLinux 9、CentOS Stream 9及10添加了修改网卡命名为`eth0``eth1`等传统命名方式的功能; |
| | 2.由于Rocky Linux 9、AlmaLinux 9、CentOS Stream 9和10对网卡命名规则进行了更改使用nmcli命令来修改IP地址的方法不再适用。因此我们采用了通过配置文件来设置IP地址的方式。同时对单网卡和双网卡的配置进行了统一处理能够自动识别当前是单网卡还是双网卡环境并据此进行相应的配置设置。 |
| | 3.脚本地址在“https://gitee.com/raymond9/shell/tree/main/reset/reset_v10”目录下。 |
| Uos Server版更新的内容 | 1.添加了对统信Uos ServerV20系统的支持 |
| | 2.脚本地址在“https://gitee.com/raymond9/shell/tree/main/reset/reset_uos_server”目录下。 |
| Kylin Server版更新的内容 | 1.添加了对银河麒麟Kylin ServerV10系统的支持 |
@@ -42,15 +35,20 @@ v9_1和v9_2版本实现的功能都是一样的只是实现的方式不同。
| OpenCloudOS版更新的内容 | 1.添加了对OpenCloudOS 8和9系统的支持 |
| | 2.修复了“禁用SWAP”不生效的问题 |
| | 3.修复了“禁用ctrl+alt+del重启系统功能”不生效的问题 |
| | 4.脚本地址在“https://gitee.com/raymond9/shell/tree/main/reset/reset_opencloudos”目录下。 |
| Anolis OS版更新的内容 | 1.添加了对Anolis OS 8和23系统的支持 |
| | 4.为OpenCloudOS 9添加了修改网卡命名为`eth0``eth1`等传统命名方式的功能; |
| | 5.由于OpenCloudOS 9对网卡命名规则进行了更改使用nmcli命令来修改IP地址的方法不再适用。因此我们采用了通过配置文件来设置IP地址的方式。同时对单网卡和双网卡的配置进行了统一处理能够自动识别当前是单网卡还是双网卡环境并据此进行相应的配置设置。 |
| | 6.脚本地址在“https://gitee.com/raymond9/shell/tree/main/reset/reset_opencloudos”目录下。 |
| Anolis OS版更新的内容 | 1.添加了对AnolisOS 8和23系统的支持 |
| | 2.修复了“禁用SWAP”不生效的问题 |
| | 3.修复了“禁用ctrl+alt+del重启系统功能”不生效的问题 |
| | 4.脚本地址在“https://gitee.com/raymond9/shell/tree/main/reset/reset_anolis_os”目录下。 |
| | 4.为AnolisOS 8和23添加了修改网卡命名为`eth0``eth1`等传统命名方式的功能; |
| | 5.由于AnolisOS 23对网卡命名规则进行了更改使用nmcli命令来修改IP地址的方法不再适用。因此我们采用了通过配置文件来设置IP地址的方式。同时对单网卡和双网卡的配置进行了统一处理能够自动识别当前是单网卡还是双网卡环境并据此进行相应的配置设置。 |
| | 6.脚本地址在“https://gitee.com/raymond9/shell/tree/main/reset/reset_anolisos”目录下。 |
| openEuler版更新的内容 | 1.添加了对openEuler 22.03和24.03系统的支持; |
| | 2.修复了“禁用SWAP”不生效的问题 |
| | 3.修复了“禁用ctrl+alt+del重启系统功能”不生效的问题 |
| | 4.脚本地址在“https://gitee.com/raymond9/shell/tree/main/reset/reset_openeuler”目录下。 |
| | 5.对单网卡和双网卡的配置进行了统一处理,能够自动识别当前是单网卡还是双网卡环境,并据此进行相应的配置设置。 |
| | 5.脚本地址在“https://gitee.com/raymond9/shell/tree/main/reset/reset_openeuler”目录下。 |
| v9版更新内容 | 1.由于CentOS Stream 8 已于 2024 年 5 月 31 日到期, CentOS Linux 7 的生命周期结束日期是 2024 年 6 月 30 日将CentOS Stream 8和CentOS 7的镜像仓库都改成了centos-vault仓库把CentOS 7的epel仓库改成了epel-archive仓库 |
| | 2.添加了对Ubuntu 24.04系统的支持Ubuntu 24.04的变更:网卡配置文件变成了“/etc/netplan/50-cloud-init.yaml”镜像仓库格式变成了DEB822 格式ssh服务的服务名变成了ssh |
| | 3.添加了对Debian 11和12系统的支持 |

View File

@@ -3,11 +3,11 @@
#**********************************************************************************
#Author: Raymond
#QQ: 88563128
#Date: 2025-02-10
#Date: 2025-03-26
#FileName: reset_anolisos.sh
#MIRROR: https://blog.csdn.net/qq_25599925
#Description: The reset linux system initialization script supports
# “Anolis OS 8 and 23“ operating systems.
# “AnolisOS 8 and 23“ operating systems.
#Copyright (C): 2025 All rights reserved
#**********************************************************************************
COLOR="echo -e \\033[01;31m"
@@ -19,6 +19,84 @@ os(){
OS_RELEASE_VERSION=`sed -rn '/^VERSION_ID=/s@.*="?([0-9]+)\.?.*"?@\1@p' /etc/os-release`
}
set_anolis_7_8_eth(){
ETHNAME=`ip addr | awk -F"[ :]" '/^2/{print $3}'`
if grep -Eqi "(net\.ifnames|biosdevname)" /etc/default/grub;then
${COLOR}"${OS_ID} ${OS_RELEASE} 网卡名配置文件已修改,不用修改!"${END}
else
sed -ri.bak '/^GRUB_CMDLINE_LINUX=/s@"$@ net.ifnames=0 biosdevname=0"@' /etc/default/grub
grub2-mkconfig -o /boot/grub2/grub.cfg >& /dev/null
mv /etc/sysconfig/network-scripts/ifcfg-${ETHNAME} /etc/sysconfig/network-scripts/ifcfg-eth0
fi
}
set_anolis_7_8_eth0(){
ETHNAME=`ip addr | awk -F"[ :]" '/^2/{print $3}'`
ETHMAC=`ip addr show ${ETHNAME} | awk -F' ' '/ether/{print $2}'`
cat >> /etc/udev/rules.d/10-network.rules << EOF
SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="${ETHMAC}", NAME="eth0"
EOF
}
set_anolis_7_8_eth1(){
ETHNAME2=`ip addr | awk -F"[ :]" '/^3/{print $3}'`
ETHMAC2=`ip addr show ${ETHNAME2} | awk -F' ' '/ether/{print $2}'`
cat >> /etc/udev/rules.d/10-network.rules << EOF
SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="${ETHMAC2}", NAME="eth1"
EOF
}
set_anolis_23_eth0(){
ETHNAME=`ip addr | awk -F"[ :]" '/^2/{print $3}'`
ETHMAC=`ip addr show ${ETHNAME} | awk -F' ' '/ether/{print $2}'`
mkdir -p /etc/systemd/network/
touch /etc/systemd/network/70-eth0.link
cat > /etc/systemd/network/70-eth0.link <<-EOF
[Match]
MACAddress=${ETHMAC}
[Link]
Name=eth0
EOF
mv /etc/NetworkManager/system-connections/${ETHNAME}.nmconnection /etc/NetworkManager/system-connections/eth0.nmconnection
}
set_anolis_23_eth1(){
ETHNAME2=`ip addr | awk -F"[ :]" '/^3/{print $3}'`
ETHMAC2=`ip addr show ${ETHNAME2} | awk -F' ' '/ether/{print $2}'`
touch /etc/systemd/network/70-eth1.link
cat > /etc/systemd/network/70-eth1.link <<-EOF
[Match]
MACAddress=${ETHMAC2}
[Link]
Name=eth1
EOF
}
set_eth(){
IP_NUM=`ip addr | awk -F"[: ]" '{print $1}' | grep -v '^$' | wc -l`
if [ ${OS_RELEASE_VERSION} == "7" -o ${OS_RELEASE_VERSION} == "8" ];then
if [ ${IP_NUM} == "2" ];then
set_anolis_7_8_eth
set_anolis_7_8_eth0
else
set_anolis_7_8_eth
set_anolis_7_8_eth0
set_anolis_7_8_eth1
fi
else
if [ ${IP_NUM} == "2" ];then
set_anolis_23_eth0
else
set_anolis_23_eth0
set_anolis_23_eth1
fi
fi
${COLOR}"${OS_ID} ${OS_RELEASE} 网卡名已修改成功,10秒后,机器会自动重启!"${END}
sleep 10 && shutdown -r now
}
check_ip(){
local IP=$1
VALID_CHECK=$(echo ${IP}|awk -F. '$1<=255&&$2<=255&&$3<=255&&$4<=255{print "yes"}')
@@ -36,9 +114,9 @@ check_ip(){
fi
}
set_network(){
set_network_eth0(){
ETHNAME=`ip addr | awk -F"[ :]" '/^2/{print $3}'`
CONNECTION_NAME=`nmcli dev | awk 'NR==2{print $4,$5,$6}'`
CONNECTION_NAME=`nmcli dev | awk 'NR==2{print $4,$5,$6}'`
while true; do
read -p "请输入IP地址: " IP
check_ip ${IP}
@@ -60,50 +138,95 @@ set_network(){
check_ip ${BACKUP_DNS}
[ $? -eq 0 ] && break
done
${COLOR}"${OS_ID} ${OS_RELEASE} 网络已设置成功请使用新IP重新登录!"${END}
nmcli connection delete ${ETHNAME} >& /dev/null && \
nmcli connection add type ethernet con-name ${ETHNAME} ifname ${ETHNAME} ipv4.method manual ipv4.address "${IP}/${PREFIX}" ipv4.gateway "${GATEWAY}" ipv4.dns "${PRIMARY_DNS},${BACKUP_DNS}" autoconnect yes >& /dev/null && \
nmcli con reload && nmcli dev up ${ETHNAME} >& /dev/null
if [ ${OS_RELEASE_VERSION} == "7" -o ${OS_RELEASE_VERSION} == "8" ];then
nmcli connection modify "${CONNECTION_NAME}" con-name ${ETHNAME}
cat > /etc/sysconfig/network-scripts/ifcfg-eth0 <<-EOF
NAME=${ETHNAME}
DEVICE=${ETHNAME}
ONBOOT=yes
BOOTPROTO=none
TYPE=Ethernet
IPADDR=${IP}
PREFIX=${PREFIX}
GATEWAY=${GATEWAY}
DNS1=${PRIMARY_DNS}
DNS2=${BACKUP_DNS}
EOF
else
cat > /etc/NetworkManager/system-connections/${ETHNAME}.nmconnection <<-EOF
[connection]
id=${ETHNAME}
type=ethernet
interface-name=${ETHNAME}
[ethernet]
[ipv4]
address1=${IP}/${PREFIX},${GATEWAY}
dns=${PRIMARY_DNS};${BACKUP_DNS};
method=manual
[ipv6]
addr-gen-mode=default
method=auto
[proxy]
EOF
fi
}
set_dual_network(){
ETHNAME=`ip addr | awk -F"[ :]" '/^2/{print $3}'`
set_network_eth1(){
ETHNAME2=`ip addr | awk -F"[ :]" '/^3/{print $3}'`
CONNECTION_NAME1=`nmcli dev | awk 'NR==2{print $4,$5,$6}'`
CONNECTION_NAME2=`nmcli dev | awk 'NR==3{print $4,$5,$6}'`
while true; do
read -p "请输入第一块网卡IP地址: " IP
check_ip ${IP}
[ $? -eq 0 ] && break
done
read -p "请输入子网掩码位数: " PREFIX
while true; do
read -p "请输入网关地址: " GATEWAY
check_ip ${GATEWAY}
[ $? -eq 0 ] && break
done
while true; do
read -p "请输入主DNS地址例如阿里223.5.5.5腾讯119.29.29.29公共114.114.114.114google8.8.8.8等): " PRIMARY_DNS
check_ip ${PRIMARY_DNS}
[ $? -eq 0 ] && break
done
while true; do
read -p "请输入备用DNS地址例如阿里223.6.6.6腾讯119.28.28.28公共114.114.115.115google8.8.4.4等): " BACKUP_DNS
check_ip ${BACKUP_DNS}
[ $? -eq 0 ] && break
done
while true; do
read -p "请输入第二块网卡IP地址: " IP2
check_ip ${IP2}
[ $? -eq 0 ] && break
done
read -p "请输入子网掩码位数: " PREFIX2
${COLOR}"${OS_ID} ${OS_RELEASE} 网络已设置成功请使用新IP重新登录!"${END}
nmcli connection delete ${ETHNAME} >& /dev/null && \
nmcli connection add type ethernet con-name ${ETHNAME} ifname ${ETHNAME} ipv4.method manual ipv4.address "${IP}/${PREFIX}" ipv4.gateway "${GATEWAY}" ipv4.dns "${PRIMARY_DNS},${BACKUP_DNS}" autoconnect yes >& /dev/null && \
nmcli connection modify "${CONNECTION_NAME2}" con-name ${ETHNAME2} && nmcli connection delete ${ETHNAME2} >& /dev/null && \
nmcli connection add type ethernet con-name ${ETHNAME2} ifname ${ETHNAME2} ipv4.method manual ipv4.address "${IP2}/${PREFIX2}" autoconnect yes >& /dev/null && \
nmcli con reload && nmcli dev up ${ETHNAME} ${ETHNAME2} >& /dev/null
if [ ${OS_RELEASE_VERSION} == "7" -o ${OS_RELEASE_VERSION} == "8" ];then
cat > /etc/sysconfig/network-scripts/ifcfg-${ETHNAME2} <<-EOF
NAME=${ETHNAME2}
DEVICE=${ETHNAME2}
ONBOOT=yes
BOOTPROTO=none
TYPE=Ethernet
IPADDR=${IP2}
PREFIX=${PREFIX2}
EOF
else
nmcli connection modify "${CONNECTION_NAME2}" con-name ${ETHNAME2}
cat > /etc/NetworkManager/system-connections/${ETHNAME2}.nmconnection <<-EOF
[connection]
id=${ETHNAME2}
type=ethernet
interface-name=${ETHNAME2}
[ethernet]
[ipv4]
address1=${IP2}/${PREFIX2}
method=manual
[ipv6]
addr-gen-mode=default
method=auto
[proxy]
EOF
chmod 600 /etc/NetworkManager/system-connections/${ETHNAME2}.nmconnection
fi
}
set_network(){
IP_NUM=`ip addr | awk -F"[: ]" '{print $1}' | grep -v '^$' | wc -l`
if [ ${IP_NUM} == "2" ];then
set_network_eth0
else
set_network_eth0
set_network_eth1
fi
${COLOR}"${OS_ID} ${OS_RELEASE} 网络已设置成功,请重新启动系统后生效!"${END}
}
set_hostname(){
@@ -120,13 +243,26 @@ nju(){
MIRROR=mirrors.nju.edu.cn
}
iscas(){
MIRROR=mirror.iscas.ac.cn
}
set_yum(){
OLD_MIRROR=$(awk -F'/' '/^baseurl=/{print $3}' /etc/yum.repos.d/AnolisOS*.repo | head -1)
OLD_MIRROR_URL=`echo ${OLD_MIRROR} | awk -F"." '{print $2}'`
if [ ${OLD_MIRROR_URL} == "openanolis" ];then
sed -i.bak -e 's|http.*://'${OLD_MIRROR}'|https://'${MIRROR}'|g' /etc/yum.repos.d/AnolisOS*.repo
MIRROR_URL=`echo ${MIRROR} | awk -F"." '{print $2}'`
OLD_MIRROR=$(sed -rn '/^.*baseurl=/s@.*=http.*://(.*)/(.*)/\$releasever/.*/$@\1@p' /etc/yum.repos.d/AnolisOS*.repo | head -1)
OLD_DIR=$(sed -rn '/^.*baseurl=/s@.*=http.*://(.*)/(.*)/\$releasever/.*/$@\2@p' /etc/yum.repos.d/AnolisOS*.repo | head -1)
if [ ${MIRROR_URL} == "iscas" ];then
if [ ${OLD_DIR} == 'anolis' ];then
sed -i.bak -e 's|http.*://'${OLD_MIRROR}'/anolis|https://'${MIRROR}'/openanolis|g' /etc/yum.repos.d/AnolisOS*.repo
else
sed -i -e 's|^baseurl=https://'${OLD_MIRROR}'/openanolis|baseurl=https://'${MIRROR}'/openanolis|g' /etc/yum.repos.d/AnolisOS*.repo
fi
else
sed -i -e 's|'${OLD_MIRROR}'|'${MIRROR}'|g' /etc/yum.repos.d/AnolisOS*.repo
if [ ${OLD_DIR} == 'anolis' ];then
sed -i.bak -e 's|http.*://'${OLD_MIRROR}'/anolis|https://'${MIRROR}'/anolis|g' /etc/yum.repos.d/AnolisOS*.repo
else
sed -i -e 's|^baseurl=https://'${OLD_MIRROR}'/openanolis|baseurl=https://'${MIRROR}'/anolis|g' /etc/yum.repos.d/AnolisOS*.repo
fi
fi
${COLOR}"更新镜像源中,请稍等..."${END}
dnf clean all &> /dev/null && dnf makecache &> /dev/null
@@ -139,11 +275,12 @@ base_menu(){
cat <<-EOF
1)阿里镜像源
2)南京大学镜像源
3)退出
3)中国科学院软件研究所镜像源
4)退出
EOF
echo -e '\E[0m'
read -p "请输入镜像源编号(1-3): " NUM
read -p "请输入镜像源编号(1-4): " NUM
case ${NUM} in
1)
aliyun
@@ -154,10 +291,14 @@ EOF
set_yum
;;
3)
iscas
set_yum
;;
4)
break
;;
*)
${COLOR}"输入错误,请输入正确的数字(1-3)!"${END}
${COLOR}"输入错误,请输入正确的数字(1-4)!"${END}
;;
esac
done
@@ -574,31 +715,31 @@ menu(){
while true;do
echo -e "\E[$[RANDOM%7+31];1m"
cat <<-EOF
*********************************************************
* 系统初始化脚本菜单 *
* 1.设置网络(单网卡) 13.更改SSH端口号 *
* 2.设置网络(双网卡) 14.设置系统别名 *
* 3.设置主机名 15.设置vimrc配置文件 *
* 4.设置镜像仓库 16.安装邮件服务并配置邮件 *
* 5.建议安装软件 17.设置PS1(请进入选择颜色) *
* 6.关闭防火墙 18.设置默认文本编辑器为vim *
* 7.禁用AppArmor 19.设置history格式 *
* 8.禁用SWAP 20.禁用ctrl+alt+del重启系统功能 *
* 9.设置系统时区 21.重启系统 *
* 10.优化资源限制参数 22.关机 *
* 11.优化内核参数 23.退出 *
* 12.优化SSH *
*********************************************************
***************************************************************
* 系统初始化脚本菜单 *
* 1.修改网卡名 13.更改SSH端口号 *
* 2.设置网络 14.设置系统别名 *
* 3.设置主机名 15.设置vimrc配置文件 *
* 4.设置镜像仓库 16.安装邮件服务并配置邮件 *
* 5.Minimal安装建议安装软件 17.设置PS1(请进入选择颜色) *
* 6.关闭防火墙 18.设置默认文本编辑器为vim *
* 7.禁用SELinux 19.设置history格式 *
* 8.禁用SWAP 20.禁用ctrl+alt+del重启系统功能 *
* 9.设置系统时区 21.重启系统 *
* 10.优化资源限制参数 22.关机 *
* 11.优化内核参数 23.退出 *
* 12.优化SSH *
***************************************************************
EOF
echo -e '\E[0m'
read -p "请选择相应的编号(1-23): " choice
case ${choice} in
1)
set_network
set_eth
;;
2)
set_dual_network
set_network
;;
3)
set_hostname

View File

@@ -3,8 +3,8 @@
#**********************************************************************************
#Author: Raymond
#QQ: 88563128
#Date: 2025-02-19
#FileName: reset_opencloudos.sh
#Date: 2025-03-26
#FileName: reset_kylin_server.sh
#MIRROR: https://blog.csdn.net/qq_25599925
#Description: The reset linux system initialization script supports
# “Kylin Server v10“ operating systems.

View File

@@ -3,7 +3,7 @@
#**********************************************************************************
#Author: Raymond
#QQ: 88563128
#Date: 2025-02-10
#Date: 2025-03-26
#FileName: reset_opencloudos.sh
#MIRROR: https://blog.csdn.net/qq_25599925
#Description: The reset linux system initialization script supports
@@ -19,22 +19,59 @@ os(){
OS_RELEASE_VERSION=`sed -rn '/^VERSION_ID=/s@.*="?([0-9]+)\.?.*"?@\1@p' /etc/os-release`
}
set_eth(){
if [ ${OS_RELEASE_VERSION} == "8" ];then
ETHNAME=`ip addr | awk -F"[ :]" '/^2/{print $3}'`
if grep -Eqi "(net\.ifnames|biosdevname)" /etc/default/grub;then
${COLOR}"${OS_ID} ${OS_RELEASE} 网卡名配置文件已修改,不用修改!"${END}
else
sed -ri.bak '/^GRUB_CMDLINE_LINUX=/s@"$@ net.ifnames=0 biosdevname=0"@' /etc/default/grub
grub2-mkconfig -o /boot/grub2/grub.cfg >& /dev/null
mv /etc/sysconfig/network-scripts/ifcfg-${ETHNAME} /etc/sysconfig/network-scripts/ifcfg-eth0
${COLOR}"${OS_ID} ${OS_RELEASE} 网卡名已修改成功,10秒后,机器会自动重启!"${END}
sleep 10 && shutdown -r now
fi
set_opencloudos_7_8_eth(){
ETHNAME=`ip addr | awk -F"[ :]" '/^2/{print $3}'`
if grep -Eqi "(net\.ifnames|biosdevname)" /etc/default/grub;then
${COLOR}"${OS_ID} ${OS_RELEASE} 网卡名配置文件已修改,不用修改!"${END}
else
${COLOR}"${OS_ID} ${OS_RELEASE} 不能修改网卡名!"${END}
fi
sed -ri.bak '/^GRUB_CMDLINE_LINUX=/s@"$@ net.ifnames=0 biosdevname=0"@' /etc/default/grub
grub2-mkconfig -o /boot/grub2/grub.cfg >& /dev/null
mv /etc/sysconfig/network-scripts/ifcfg-${ETHNAME} /etc/sysconfig/network-scripts/ifcfg-eth0
fi
}
set_opencloudos_9_eth0(){
ETHNAME=`ip addr | awk -F"[ :]" '/^2/{print $3}'`
ETHMAC=`ip addr show ${ETHNAME} | awk -F' ' '/ether/{print $2}'`
mkdir -p /etc/systemd/network/
touch /etc/systemd/network/70-eth0.link
cat > /etc/systemd/network/70-eth0.link <<-EOF
[Match]
MACAddress=${ETHMAC}
[Link]
Name=eth0
EOF
mv /etc/NetworkManager/system-connections/${ETHNAME}.nmconnection /etc/NetworkManager/system-connections/eth0.nmconnection
}
set_opencloudos_9_eth1(){
ETHNAME2=`ip addr | awk -F"[ :]" '/^3/{print $3}'`
ETHMAC2=`ip addr show ${ETHNAME2} | awk -F' ' '/ether/{print $2}'`
touch /etc/systemd/network/70-eth1.link
cat > /etc/systemd/network/70-eth1.link <<-EOF
[Match]
MACAddress=${ETHMAC2}
[Link]
Name=eth1
EOF
}
set_eth(){
if [ ${OS_RELEASE_VERSION} == "7" -o ${OS_RELEASE_VERSION} == "8" ];then
set_opencloudos_7_8_eth
else
IP_NUM=`ip addr | awk -F"[: ]" '{print $1}' | grep -v '^$' | wc -l`
if [ ${IP_NUM} == "2" ];then
set_opencloudos_9_eth0
else
set_opencloudos_9_eth0
set_opencloudos_9_eth1
fi
fi
${COLOR}"${OS_ID} ${OS_RELEASE} 网卡名已修改成功,10秒后,机器会自动重启!"${END}
sleep 10 && shutdown -r now
}
check_ip(){
@@ -54,9 +91,9 @@ check_ip(){
fi
}
set_network(){
set_network_eth0(){
ETHNAME=`ip addr | awk -F"[ :]" '/^2/{print $3}'`
CONNECTION_NAME=`nmcli dev | awk 'NR==2{print $4,$5,$6}'`
CONNECTION_NAME=`nmcli dev | awk 'NR==2{print $4,$5,$6}'`
while true; do
read -p "请输入IP地址: " IP
check_ip ${IP}
@@ -78,67 +115,103 @@ set_network(){
check_ip ${BACKUP_DNS}
[ $? -eq 0 ] && break
done
${COLOR}"${OS_ID} ${OS_RELEASE} 网络已设置成功请使用新IP重新登录!"${END}
if [ ${OS_RELEASE_VERSION} == "8" ];then
nmcli connection modify "${CONNECTION_NAME}" con-name ${ETHNAME} && \
nmcli connection delete ${ETHNAME} >& /dev/null && \
nmcli connection add type ethernet con-name ${ETHNAME} ifname ${ETHNAME} ipv4.method manual ipv4.address "${IP}/${PREFIX}" ipv4.gateway "${GATEWAY}" ipv4.dns "${PRIMARY_DNS},${BACKUP_DNS}" autoconnect yes >& /dev/null && \
nmcli con reload && nmcli dev up ${ETHNAME} >& /dev/null
if [ ${OS_RELEASE_VERSION} == "7" -o ${OS_RELEASE_VERSION} == "8" ];then
nmcli connection modify "${CONNECTION_NAME}" con-name ${ETHNAME}
cat > /etc/sysconfig/network-scripts/ifcfg-eth0 <<-EOF
NAME=${ETHNAME}
DEVICE=${ETHNAME}
ONBOOT=yes
BOOTPROTO=none
TYPE=Ethernet
IPADDR=${IP}
PREFIX=${PREFIX}
GATEWAY=${GATEWAY}
DNS1=${PRIMARY_DNS}
DNS2=${BACKUP_DNS}
EOF
else
nmcli connection delete ${ETHNAME} >& /dev/null && \
nmcli connection add type ethernet con-name ${ETHNAME} ifname ${ETHNAME} ipv4.method manual ipv4.address "${IP}/${PREFIX}" ipv4.gateway "${GATEWAY}" ipv4.dns "${PRIMARY_DNS},${BACKUP_DNS}" autoconnect yes >& /dev/null && \
nmcli con reload && nmcli dev up ${ETHNAME} >& /dev/null
cat > /etc/NetworkManager/system-connections/${ETHNAME}.nmconnection <<-EOF
[connection]
id=${ETHNAME}
type=ethernet
interface-name=${ETHNAME}
[ethernet]
[ipv4]
address1=${IP}/${PREFIX},${GATEWAY}
dns=${PRIMARY_DNS};${BACKUP_DNS};
method=manual
[ipv6]
addr-gen-mode=default
method=auto
[proxy]
EOF
fi
}
set_dual_network(){
ETHNAME=`ip addr | awk -F"[ :]" '/^2/{print $3}'`
set_network_eth1(){
ETHNAME2=`ip addr | awk -F"[ :]" '/^3/{print $3}'`
CONNECTION_NAME1=`nmcli dev | awk 'NR==2{print $4,$5,$6}'`
CONNECTION_NAME2=`nmcli dev | awk 'NR==3{print $4,$5,$6}'`
while true; do
read -p "请输入第一块网卡IP地址: " IP
check_ip ${IP}
[ $? -eq 0 ] && break
done
read -p "请输入子网掩码位数: " PREFIX
while true; do
read -p "请输入网关地址: " GATEWAY
check_ip ${GATEWAY}
[ $? -eq 0 ] && break
done
while true; do
read -p "请输入主DNS地址例如阿里223.5.5.5腾讯119.29.29.29公共114.114.114.114google8.8.8.8等): " PRIMARY_DNS
check_ip ${PRIMARY_DNS}
[ $? -eq 0 ] && break
done
while true; do
read -p "请输入备用DNS地址例如阿里223.6.6.6腾讯119.28.28.28公共114.114.115.115google8.8.4.4等): " BACKUP_DNS
check_ip ${BACKUP_DNS}
[ $? -eq 0 ] && break
done
while true; do
read -p "请输入第二块网卡IP地址: " IP2
check_ip ${IP2}
[ $? -eq 0 ] && break
done
read -p "请输入子网掩码位数: " PREFIX2
${COLOR}"${OS_ID} ${OS_RELEASE} 网络已设置成功请使用新IP重新登录!"${END}
if [ ${OS_RELEASE_VERSION} == "7" -o ${OS_RELEASE_VERSION} == "8" ];then
nmcli connection modify "${CONNECTION_NAME1}" con-name ${ETHNAME} && nmcli connection delete ${ETHNAME} >& /dev/null && \
nmcli connection add type ethernet con-name ${ETHNAME} ifname ${ETHNAME} ipv4.method manual ipv4.address "${IP}/${PREFIX}" ipv4.gateway "${GATEWAY}" ipv4.dns "${PRIMARY_DNS},${BACKUP_DNS}" autoconnect yes >& /dev/null && \
nmcli connection modify "${CONNECTION_NAME2}" con-name ${ETHNAME2} && nmcli connection delete ${ETHNAME2} >& /dev/null && \
nmcli connection add type ethernet con-name ${ETHNAME2} ifname ${ETHNAME2} ipv4.method manual ipv4.address "${IP2}/${PREFIX2}" autoconnect yes >& /dev/null && \
nmcli con reload && nmcli dev up ${ETHNAME} ${ETHNAME2} >& /dev/null
cat > /etc/sysconfig/network-scripts/ifcfg-${ETHNAME2} <<-EOF
NAME=${ETHNAME2}
DEVICE=${ETHNAME2}
ONBOOT=yes
BOOTPROTO=none
TYPE=Ethernet
IPADDR=${IP2}
PREFIX=${PREFIX2}
EOF
else
nmcli connection delete ${ETHNAME} >& /dev/null && \
nmcli connection add type ethernet con-name ${ETHNAME} ifname ${ETHNAME} ipv4.method manual ipv4.address "${IP}/${PREFIX}" ipv4.gateway "${GATEWAY}" ipv4.dns "${PRIMARY_DNS},${BACKUP_DNS}" autoconnect yes >& /dev/null && \
nmcli connection modify "${CONNECTION_NAME2}" con-name ${ETHNAME2} && nmcli connection delete ${ETHNAME2} >& /dev/null && \
nmcli connection add type ethernet con-name ${ETHNAME2} ifname ${ETHNAME2} ipv4.method manual ipv4.address "${IP2}/${PREFIX2}" autoconnect yes >& /dev/null && \
nmcli con reload && nmcli dev up ${ETHNAME} ${ETHNAME2} >& /dev/null
nmcli connection modify "${CONNECTION_NAME2}" con-name ${ETHNAME2}
cat > /etc/NetworkManager/system-connections/${ETHNAME2}.nmconnection <<-EOF
[connection]
id=${ETHNAME2}
type=ethernet
interface-name=${ETHNAME2}
[ethernet]
[ipv4]
address1=${IP2}/${PREFIX2}
method=manual
[ipv6]
addr-gen-mode=default
method=auto
[proxy]
EOF
chmod 600 /etc/NetworkManager/system-connections/${ETHNAME2}.nmconnection
fi
}
set_network(){
IP_NUM=`ip addr | awk -F"[: ]" '{print $1}' | grep -v '^$' | wc -l`
if [ ${IP_NUM} == "2" ];then
set_network_eth0
else
set_network_eth0
set_network_eth1
fi
${COLOR}"${OS_ID} ${OS_RELEASE} 网络已设置成功,请重新启动系统后生效!"${END}
}
set_hostname(){
read -p "请输入主机名: " HOST
hostnamectl set-hostname ${HOST}
${COLOR}"${OS_ID} ${OS_RELEASE} 主机名设置成功,请重新登录生效!"${END}
}
set_hostname(){
read -p "请输入主机名: " HOST
hostnamectl set-hostname ${HOST}
@@ -157,6 +230,10 @@ sjtu(){
MIRROR=mirrors.sjtug.sjtu.edu.cn
}
iscas(){
MIRROR=mirror.iscas.ac.cn
}
set_yum(){
OLD_MIRROR=$(awk -F'/' '/^baseurl=/{print $3}' /etc/yum.repos.d/OpenCloudOS*.repo | head -1)
OLD_MIRROR_URL=`echo ${OLD_MIRROR} | awk -F"." '{print $2}'`
@@ -177,11 +254,12 @@ base_menu(){
1)腾讯镜像源
2)南京大学镜像源
3)上海交通大学镜像源
4)退出
4)中国科学院软件研究所镜像源
5)退出
EOF
echo -e '\E[0m'
read -p "请输入镜像源编号(1-4): " NUM
read -p "请输入镜像源编号(1-5): " NUM
case ${NUM} in
1)
tencent
@@ -196,10 +274,14 @@ EOF
set_yum
;;
4)
sjtu
set_yum
;;
5)
break
;;
*)
${COLOR}"输入错误,请输入正确的数字(1-4)!"${END}
${COLOR}"输入错误,请输入正确的数字(1-5)!"${END}
;;
esac
done
@@ -601,23 +683,23 @@ menu(){
cat <<-EOF
***************************************************************
* 系统初始化脚本菜单 *
* 1.修改网卡名 13.优化SSH *
* 2.设置网络(单网卡) 14.更改SSH端口号 *
* 3.设置网络(双网卡) 15.设置系统别名 *
* 4.设置主机名 16.设置vimrc配置文件 *
* 5.设置镜像仓库 17.安装邮件服务并配置邮件 *
* 6.Minimal安装建议安装软件 18.设置PS1(请进入选择颜色) *
* 7.关闭防火墙 19.设置默认文本编辑器为vim *
* 8.禁用SELinux 20.设置history格式 *
* 9.禁用SWAP 21.禁用ctrl+alt+del重启系统功能 *
* 10.设置系统时区 22.重启系统 *
* 11.优化资源限制参数 23.关机 *
* 12.优化内核参数 24.退出 *
* 1.修改网卡名 13.更改SSH端口号 *
* 2.设置网络 14.设置系统别名 *
* 3.设置主机名 15.设置vimrc配置文件 *
* 4.设置镜像仓库 16.安装邮件服务并配置邮件 *
* 5.Minimal安装建议安装软件 17.设置PS1(请进入选择颜色) *
* 6.关闭防火墙 18.设置默认文本编辑器为vim *
* 7.禁用SELinux 19.设置history格式 *
* 8.禁用SWAP 20.禁用ctrl+alt+del重启系统功能 *
* 9.设置系统时区 21.重启系统 *
* 10.优化资源限制参数 22.关机 *
* 11.优化内核参数 23.退出 *
* 12.优化SSH *
***************************************************************
EOF
echo -e '\E[0m'
read -p "请选择相应的编号(1-24): " choice
read -p "请选择相应的编号(1-23): " choice
case ${choice} in
1)
set_eth
@@ -626,73 +708,70 @@ EOF
set_network
;;
3)
set_dual_network
;;
4)
set_hostname
;;
5)
4)
base_menu
;;
6)
5)
minimal_install
;;
7)
6)
disable_firewalls
;;
8)
7)
disable_selinux
;;
9)
8)
set_swap
;;
10)
9)
set_localtime
;;
11)
10)
set_limits
;;
12)
11)
set_kernel
;;
13)
12)
optimization_ssh
;;
14)
13)
set_ssh_port
;;
15)
14)
set_alias
;;
16)
15)
set_vimrc
;;
17)
16)
set_mail
;;
18)
17)
set_ps1
;;
19)
18)
set_vim_env
;;
20)
19)
set_history_env
;;
21)
20)
disable_restart
;;
22)
21)
reboot
;;
23)
22)
shutdown -h now
;;
24)
23)
break
;;
*)
${COLOR}"输入错误,请输入正确的数字(1-24)!"${END}
${COLOR}"输入错误,请输入正确的数字(1-23)!"${END}
;;
esac
done

View File

@@ -3,7 +3,7 @@
#**********************************************************************************
#Author: Raymond
#QQ: 88563128
#Date: 2025-02-10
#Date: 2025-03-26
#FileName: reset_openeuler.sh
#MIRROR: https://blog.csdn.net/qq_25599925
#Description: The reset linux system initialization script supports
@@ -28,7 +28,8 @@ set_eth(){
grub2-mkconfig -o /boot/grub2/grub.cfg >& /dev/null
mv /etc/sysconfig/network-scripts/ifcfg-${ETHNAME} /etc/sysconfig/network-scripts/ifcfg-eth0
${COLOR}"${OS_ID} ${OS_RELEASE}卡名已修改成功,请重新启动系统后生效!"${END}
${COLOR}"${OS_ID} ${OS_RELEASE}络已设置成功10秒后机器会自动重启!"${END}
sleep 10 && shutdown -r now
fi
}
@@ -49,7 +50,8 @@ check_ip(){
fi
}
set_network(){
set_network_eth0(){
ETHNAME=`ip addr | awk -F"[ :]" '/^2/{print $3}'`
while true; do
read -p "请输入IP地址: " IP
check_ip ${IP}
@@ -71,9 +73,9 @@ set_network(){
check_ip ${BACKUP_DNS}
[ $? -eq 0 ] && break
done
cat > /etc/sysconfig/network-scripts/ifcfg-eth0 <<-EOF
NAME=eth0
DEVICE=eth0
cat > /etc/sysconfig/network-scripts/ifcfg-${ETHNAME} <<-EOF
NAME=${ETHNAME}
DEVICE=${ETHNAME}
ONBOOT=yes
BOOTPROTO=none
TYPE=Ethernet
@@ -83,58 +85,35 @@ GATEWAY=${GATEWAY}
DNS1=${PRIMARY_DNS}
DNS2=${BACKUP_DNS}
EOF
${COLOR}"${OS_ID} ${OS_RELEASE} 网络已设置成功,请重新启动系统后生效!"${END}
}
set_dual_network(){
while true; do
read -p "请输入第一块网卡IP地址: " IP
check_ip ${IP}
[ $? -eq 0 ] && break
done
read -p "请输入子网掩码位数: " PREFIX
while true; do
read -p "请输入网关地址: " GATEWAY
check_ip ${GATEWAY}
[ $? -eq 0 ] && break
done
while true; do
read -p "请输入主DNS地址例如阿里223.5.5.5腾讯119.29.29.29公共114.114.114.114google8.8.8.8等): " PRIMARY_DNS
check_ip ${PRIMARY_DNS}
[ $? -eq 0 ] && break
done
while true; do
read -p "请输入备用DNS地址例如阿里223.6.6.6腾讯119.28.28.28公共114.114.115.115google8.8.4.4等): " BACKUP_DNS
check_ip ${BACKUP_DNS}
[ $? -eq 0 ] && break
done
set_network_eth1(){
ETHNAME2=`ip addr | awk -F"[ :]" '/^3/{print $3}'`
while true; do
read -p "请输入第二块网卡IP地址: " IP2
check_ip ${IP2}
[ $? -eq 0 ] && break
done
read -p "请输入子网掩码位数: " PREFIX2
cat > /etc/sysconfig/network-scripts/ifcfg-eth0 <<-EOF
NAME=eth0
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=none
TYPE=Ethernet
IPADDR=${IP}
PREFIX=${PREFIX}
GATEWAY=${GATEWAY}
DNS1=${PRIMARY_DNS}
DNS2=${BACKUP_DNS}
EOF
cat > /etc/sysconfig/network-scripts/ifcfg-eth1 <<-EOF
NAME=eth1
DEVICE=eth1
cat > /etc/sysconfig/network-scripts/ifcfg-${ETHNAME2} <<-EOF
NAME=${ETHNAME2}
DEVICE=${ETHNAME2}
ONBOOT=yes
BOOTPROTO=none
TYPE=Ethernet
IPADDR=${IP2}
PREFIX=${PREFIX2}
EOF
}
set_network(){
IP_NUM=`ip addr | awk -F"[: ]" '{print $1}' | grep -v '^$' | wc -l`
if [ ${IP_NUM} == "2" ];then
set_network_eth0
else
set_network_eth0
set_network_eth1
fi
${COLOR}"${OS_ID} ${OS_RELEASE} 网络已设置成功,请重新启动系统后生效!"${END}
}
@@ -200,6 +179,10 @@ volces(){
MIRROR=mirrors.volces.com
}
iscas(){
MIRROR=mirror.iscas.ac.cn
}
set_yum(){
OLD_MIRROR=$(awk -F'/' '/^baseurl=/{print $3}' /etc/yum.repos.d/openEuler.repo | head -1)
OLD_MIRROR_URL=`echo ${OLD_MIRROR} | awk -F"." '{print $2}'`
@@ -231,11 +214,12 @@ base_menu(){
12)兰州大学镜像源
13)重庆邮电大学镜像源
14)火山引擎镜像源
15)退出
15)中国科学院软件研究所镜像源
16)退出
EOF
echo -e '\E[0m'
read -p "请输入镜像源编号(1-15): " NUM
read -p "请输入镜像源编号(1-16): " NUM
case ${NUM} in
1)
aliyun
@@ -294,10 +278,14 @@ EOF
set_yum
;;
15)
iscas
set_yum
;;
16)
break
;;
*)
${COLOR}"输入错误,请输入正确的数字(1-15)!"${END}
${COLOR}"输入错误,请输入正确的数字(1-16)!"${END}
;;
esac
done
@@ -699,23 +687,23 @@ menu(){
cat <<-EOF
***************************************************************
* 系统初始化脚本菜单 *
* 1.修改网卡名 13.优化SSH *
* 2.设置网络(单网卡) 14.更改SSH端口号 *
* 3.设置网络(双网卡) 15.设置系统别名 *
* 4.设置主机名 16.设置vimrc配置文件 *
* 5.设置镜像仓库 17.安装邮件服务并配置邮件 *
* 6.Minimal安装建议安装软件 18.设置PS1(请进入选择颜色) *
* 7.关闭防火墙 19.设置默认文本编辑器为vim *
* 8.禁用SELinux 20.设置history格式 *
* 9.禁用SWAP 21.禁用ctrl+alt+del重启系统功能 *
* 10.设置系统时区 22.重启系统 *
* 11.优化资源限制参数 23.关机 *
* 12.优化内核参数 24.退出 *
* 1.修改网卡名 13.更改SSH端口号 *
* 2.设置网络 14.设置系统别名 *
* 3.设置主机名 15.设置vimrc配置文件 *
* 4.设置镜像仓库 16.安装邮件服务并配置邮件 *
* 5.Minimal安装建议安装软件 17.设置PS1(请进入选择颜色) *
* 6.关闭防火墙 18.设置默认文本编辑器为vim *
* 7.禁用SELinux 19.设置history格式 *
* 8.禁用SWAP 20.禁用ctrl+alt+del重启系统功能 *
* 9.设置系统时区 21.重启系统 *
* 10.优化资源限制参数 22.关机 *
* 11.优化内核参数 23.退出 *
* 12.优化SSH *
***************************************************************
EOF
echo -e '\E[0m'
read -p "请选择相应的编号(1-24): " choice
read -p "请选择相应的编号(1-23): " choice
case ${choice} in
1)
set_eth
@@ -724,73 +712,70 @@ EOF
set_network
;;
3)
set_dual_network
;;
4)
set_hostname
;;
5)
4)
base_menu
;;
6)
5)
minimal_install
;;
7)
6)
disable_firewalls
;;
8)
7)
disable_selinux
;;
9)
8)
set_swap
;;
10)
9)
set_localtime
;;
11)
10)
set_limits
;;
12)
11)
set_kernel
;;
13)
12)
optimization_ssh
;;
14)
13)
set_ssh_port
;;
15)
14)
set_alias
;;
16)
15)
set_vimrc
;;
17)
16)
set_mail
;;
18)
17)
set_ps1
;;
19)
18)
set_vim_env
;;
20)
19)
set_history_env
;;
21)
20)
disable_restart
;;
22)
21)
reboot
;;
23)
22)
shutdown -h now
;;
24)
23)
break
;;
*)
${COLOR}"输入错误,请输入正确的数字(1-24)!"${END}
${COLOR}"输入错误,请输入正确的数字(1-23)!"${END}
;;
esac
done

View File

@@ -3,7 +3,7 @@
#**********************************************************************************
#Author: Raymond
#QQ: 88563128
#Date: 2025-02-10
#Date: 2025-03-19
#FileName: reset_opensuse.sh
#MIRROR: https://blog.csdn.net/qq_25599925
#Description: The reset linux system initialization script supports
@@ -36,7 +36,7 @@ check_ip(){
fi
}
set_network(){
set_network_eth0(){
ETHNAME=`ip addr | awk -F"[ :]" '/^2/{print $3}'`
while true; do
read -p "请输入IP地址: " IP
@@ -63,67 +63,40 @@ set_network(){
STARTMODE='auto'
BOOTPROTO='static'
ZONE=public
IPADDR='${IP}'
PREFIXLEN='${PREFIX}'
IPADDR='${IP}/${PREFIX}'
EOF
touch /etc/sysconfig/network/routes
cat > /etc/sysconfig/network/routes <<-EOF
default ${GATEWAY} - -
EOF
sed -ri 's/(NETCONFIG_DNS_STATIC_SERVERS=).*/\1"${PRIMARY_DNS} ${BACKUP_DNS}"/g' /etc/sysconfig/network/config
${COLOR}"${OS_ID} ${OS_RELEASE} 网络已设置成功,请重新启动系统后生效!"${END}
}
set_dual_network(){
ETHNAME=`ip addr | awk -F"[ :]" '/^2/{print $3}'`
set_network_eth1(){
ETHNAME2=`ip addr | awk -F"[ :]" '/^3/{print $3}'`
while true; do
read -p "请输入第一块网卡IP地址: " IP
check_ip ${IP}
[ $? -eq 0 ] && break
done
read -p "请输入子网掩码位数: " PREFIX
while true; do
read -p "请输入网关地址: " GATEWAY
check_ip ${GATEWAY}
[ $? -eq 0 ] && break
done
while true; do
read -p "请输入主DNS地址例如阿里223.5.5.5腾讯119.29.29.29公共114.114.114.114google8.8.8.8等): " PRIMARY_DNS
check_ip ${PRIMARY_DNS}
[ $? -eq 0 ] && break
done
while true; do
read -p "请输入备用DNS地址例如阿里223.6.6.6腾讯119.28.28.28公共114.114.115.115google8.8.4.4等): " BACKUP_DNS
check_ip ${BACKUP_DNS}
[ $? -eq 0 ] && break
done
while true; do
read -p "请输入第二块网卡IP地址: " IP2
check_ip ${IP2}
[ $? -eq 0 ] && break
done
read -p "请输入子网掩码位数: " PREFIX2
cat > /etc/sysconfig/network/ifcfg-${ETHNAME} <<-EOF
STARTMODE='auto'
BOOTPROTO='static'
ZONE=public
IPADDR='${IP}'
PREFIXLEN='${PREFIX}'
EOF
touch /etc/sysconfig/network/routes
cat > /etc/sysconfig/network/routes <<-EOF
default ${GATEWAY} - -
EOF
sed -ri 's/(NETCONFIG_DNS_STATIC_SERVERS=).*/\1"${PRIMARY_DNS} ${BACKUP_DNS}"/g' /etc/sysconfig/network/config
cat > /etc/sysconfig/network/ifcfg-${ETHNAME2} <<-EOF
STARTMODE='auto'
BOOTPROTO='static'
ZONE=public
IPADDR='${IP2}'
PREFIXLEN='${PREFIX2}'
IPADDR='${IP2}/${PREFIX2}'
EOF
${COLOR}"${OS_ID} ${OS_RELEASE} 网络已设置成功,请重新启动系统后生效!"${END}
}
set_network(){
IP_NUM=`ip addr | awk -F"[: ]" '{print $1}' | grep -v '^$' | wc -l`
if [ ${IP_NUM} == "2" ];then
set_network_eth0
else
set_network_eth0
set_network_eth1
fi
${COLOR}"${OS_ID} ${OS_RELEASE} 网络已设置成功,请重新启动系统后生效!"${END}
}
set_hostname(){
@@ -201,7 +174,7 @@ set_zypper(){
zypper ar -cfg 'https://'${MIRROR}'/opensuse/update/leap/$releasever/sle/' mirror-sle-update
zypper ar -cfg 'https://'${MIRROR}'/opensuse/update/leap/$releasever/backports/' mirror-backports-update
${COLOR}"更新镜像源中,请稍等..."${END}
zypper refresh
zypper clean &> /dev/null && zypper refresh &> /dev/null
${COLOR}"${OS_ID} ${OS_RELEASE} zypper源设置完成!"${END}
}
@@ -302,7 +275,9 @@ EOF
minimal_install(){
${COLOR}'开始安装“建议安装软件包”,请稍等......'${END}
zypper install -y gcc make autoconf gcc-c++ glibc-devel pcre pcre-devel openssl-devel systemd-devel zlib-devel lrzsz tree tmux tcpdump iotop bc unzip nfs-utils &> /dev/null
zypper addrepo https://download.opensuse.org/repositories/home:psi-jack/15.6/home:psi-jack.repo &> /dev/null
zypper --no-gpg-checks refresh &> /dev/null
zypper install -y gcc make autoconf gcc-c++ glibc-devel pcre-tools pcre-devel libopenssl-devel systemd-devel zlib-devel lrzsz tree tmux tcpdump iotop bc &> /dev/null
${COLOR}"${OS_ID} ${OS_RELEASE} 建议安装软件包已安装完成!"${END}
}
@@ -688,97 +663,93 @@ menu(){
while true;do
echo -e "\E[$[RANDOM%7+31];1m"
cat <<-EOF
*********************************************************
* 系统初始化脚本菜单 *
* 1.设置网络(单网卡) 13.更改SSH端口号 *
* 2.设置网络(双网卡) 14.设置系统别名 *
* 3.设置主机名 15.设置vimrc配置文件 *
* 4.设置镜像仓库 16.安装邮件服务并配置邮件 *
* 5.建议安装软件 17.设置PS1(请进入选择颜色) *
* 6.关闭防火墙 18.设置默认文本编辑器为vim *
* 7.禁用AppArmor 19.设置history格式 *
* 8.禁用SWAP 20.禁用ctrl+alt+del重启系统功能 *
* 9.设置系统时区 21.重启系统 *
* 10.优化资源限制参数 22.关机 *
* 11.优化内核参数 23.退出 *
* 12.优化SSH *
*********************************************************
*******************************************************
* 系统初始化脚本菜单 *
* 1.设置网络 12.更改SSH端口号 *
* 2.设置主机名 13.设置系统别名 *
* 3.设置镜像仓库 14.设置vimrc配置文件 *
* 4.建议安装软件 15.安装邮件服务并配置邮件 *
* 5.关闭防火墙 16.设置PS1(请进入选择颜色) *
* 6.禁用AppArmor 17.设置默认文本编辑器为vim *
* 7.禁用SWAP 18.设置history格式 *
* 8.设置系统时区 19.禁用ctrl+alt+del重启系统功能 *
* 9.优化资源限制参数 20.重启系统 *
* 10.优化内核参数 21.关机 *
* 11.优化SSH 22.退出 *
*******************************************************
EOF
echo -e '\E[0m'
read -p "请选择相应的编号(1-23): " choice
read -p "请选择相应的编号(1-22): " choice
case ${choice} in
1)
set_network
;;
2)
set_dual_network
;;
3)
set_hostname
;;
4)
3)
base_menu
;;
5)
4)
minimal_install
;;
6)
5)
disable_firewalls
;;
7)
6)
disable_apparmor
;;
8)
7)
set_swap
;;
9)
8)
set_localtime
;;
10)
9)
set_limits
;;
11)
10)
set_kernel
;;
12)
11)
optimization_ssh
;;
13)
12)
set_ssh_port
;;
14)
13)
set_alias
;;
15)
14)
set_vimrc
;;
16)
15)
set_mail
;;
17)
16)
set_ps1
;;
18)
17)
set_vim_env
;;
19)
18)
set_history_env
;;
20)
19)
disable_restart
;;
21)
20)
reboot
;;
22)
21)
shutdown -h now
;;
23)
22)
break
;;
*)
${COLOR}"输入错误,请输入正确的数字(1-23)!"${END}
${COLOR}"输入错误,请输入正确的数字(1-22)!"${END}
;;
esac
done

View File

@@ -3,8 +3,8 @@
#**********************************************************************************
#Author: Raymond
#QQ: 88563128
#Date: 2025-02-24
#FileName: reset_opencloudos.sh
#Date: 2025-03-26
#FileName: reset_uos_server.sh
#MIRROR: https://blog.csdn.net/qq_25599925
#Description: The reset linux system initialization script supports
# “Uos Server v20“ operating systems.
@@ -643,7 +643,7 @@ EOF
main(){
os
if [ ${OS_ID} == "UOS" ];then
if [ ${OS_ID} == "Kylin" ];then
menu
else
${COLOR}"此脚本不支持${OS_ID} ${OS_RELEASE} 系统!"${END}

2409
reset/reset_v10/reset_v10.sh Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,39 @@
#!/usr/bin/perl
use strict;
use warnings;
use autodie;
# 要修改镜像源请去修改url变量
my $url = 'mirrors.aliyun.com';
my $mirrors = "https://$url/centos-stream";
if (@ARGV < 1) {
die "Usage: $0 <filename1> <filename2> ...\n";
}
while (my $filename = shift @ARGV) {
my $backup_filename = $filename . '.bak';
rename $filename, $backup_filename;
open my $input, "<", $backup_filename;
open my $output, ">", $filename;
while (<$input>) {
s/^metalink/# metalink/;
if (m/^name/) {
my (undef, $repo, $arch) = split /-/;
$repo =~ s/^\s+|\s+$//g;
($arch = defined $arch ? lc($arch) : '') =~ s/^\s+|\s+$//g;
if ($repo =~ /^Extras/) {
$_ .= "baseurl=${mirrors}/SIGs/\$releasever-stream/extras" . ($arch eq 'source' ? "/${arch}/" : "/\$basearch/") . "extras-common\n";
} else {
$_ .= "baseurl=${mirrors}/\$releasever-stream/$repo" . ($arch eq 'source' ? "/" : "/\$basearch/") . ($arch ne '' ? "${arch}/tree/" : "os") . "\n";
}
}
print $output $_;
}
}