mirror of
https://github.com/raymond999999/shell.git
synced 2026-03-12 17:51:35 +08:00
Modify the shell script files on October 20, 2025.
This commit is contained in:
@@ -7,7 +7,7 @@
|
||||
#FileName: install_containerd_binary.sh
|
||||
#URL: raymond.blog.csdn.net
|
||||
#Description: install_containerd_binary for centos 7/8 & ubuntu 18.04/20.04 & Rocky 8
|
||||
#Copyright (C): 2021 All rights reserved
|
||||
#Copyright (C): 2022 All rights reserved
|
||||
#*********************************************************************************************
|
||||
SRC_DIR=/usr/local/src
|
||||
COLOR="echo -e \\033[01;31m"
|
||||
@@ -1,6 +1,6 @@
|
||||
# Rocky、AlmaLinux、CentOS、Ubuntu、Debian、openEuler、AnolisOS、OpenCloudOS、openSUSE、银河麒麟(Kylin Server)和统信(UOS Server)系统初始化脚本
|
||||
|
||||

|
||||

|
||||
|
||||
**Shell脚本源码地址:**
|
||||
|
||||
@@ -13,32 +13,32 @@ Github:https://github.com/raymond999999/shell
|
||||
|
||||
**支持的功能:**
|
||||
|
||||
| **支持的功能** | 备注 |
|
||||
| --------------------------------- | ------------------------------------------------------------ |
|
||||
| 1.修改网卡名 | openSUSE操作系统默认网卡名就是eth0、eth1不用修改 |
|
||||
| 2.设置网络 | 包括设置IP地址、子网掩码位数、网关地址和DNS地址,包括单网卡和双网卡 |
|
||||
| 3.设置主机名 | |
|
||||
| 4.设置镜像仓库 | Kylin Server和UOS Server操作系统只有官方镜像仓库,没有合适的第三方镜像仓库,不用设置 |
|
||||
| 5.Minimal安装建议安装软件 | |
|
||||
| 6.关闭防火墙 | Ubuntu操作系统默认安装的防火墙的防火墙是ufw,Debian操作系统默认没有安装防火墙,其它操作系统默认安装的防火墙都是firewall |
|
||||
| 7.禁用SELinux | Ubuntu、Debian和openSUSE操作系统默认没有安装SELinux,不用设置 |
|
||||
| 8.禁用AppArmor | 只有openSUSE操作系统默认安装AppArmor,其它操作系统都不用设置 |
|
||||
| 9.禁用SWAP | |
|
||||
| 10.设置系统时区 | |
|
||||
| 11.优化资源限制参数 | |
|
||||
| 12.优化内核参数 | |
|
||||
| 13.优化SSH | |
|
||||
| 14.更改SSH端口号 | |
|
||||
| 15.设置系统别名 | |
|
||||
| 16.设置vimrc配置文件 | |
|
||||
| 17.安装邮件服务并配置 | |
|
||||
| 18.设置PS1 | |
|
||||
| 19.设置默认文本编辑器为vim | |
|
||||
| 20.设置history格式 | |
|
||||
| 21.禁用ctrl+alt+del重启系统功能 | |
|
||||
| 22.Ubuntu和Debian设置root用户登录 | 只支持Ubuntu和Debian操作系统 |
|
||||
| 23.Ubuntu卸载无用软件包 | 只支持Ubuntu操作系统 |
|
||||
| 24.Ubuntu卸载snap | 只支持Ubuntu操作系统 |
|
||||
| **支持的功能** | 备注 |
|
||||
| ------------------------------- | ------------------------------------------------------------ |
|
||||
| 1.设置root用户登录 | |
|
||||
| 2.修改网卡名 | openSUSE Leap 15操作系统默认网卡名就是eth0、eth1不用修改 |
|
||||
| 3.设置网络 | 包括设置IP地址、子网掩码位数、网关地址和DNS地址,包括单网卡和双网卡 |
|
||||
| 4.设置主机名 | |
|
||||
| 5.设置镜像仓库 | Kylin Server和UOS Server操作系统只有官方镜像仓库,没有合适的第三方镜像仓库,不用设置 |
|
||||
| 6.建议安装软件 | |
|
||||
| 7.关闭防火墙 | Ubuntu操作系统默认安装的防火墙的防火墙是ufw,Debian操作系统默认没有安装防火墙,其它操作系统默认安装的防火墙都是firewall |
|
||||
| 8.禁用SELinux | Ubuntu、Debian和openSUSE Leap 15操作系统默认没有安装SELinux,不用设置 |
|
||||
| 9.禁用AppArmor | 只有openSUSE Leap 15操作系统默认安装AppArmor,其它操作系统都不用设置 |
|
||||
| 10.禁用SWAP | |
|
||||
| 11.设置系统时区 | |
|
||||
| 12.优化资源限制参数 | |
|
||||
| 13.优化内核参数 | |
|
||||
| 14.优化SSH | |
|
||||
| 15.更改SSH端口号 | |
|
||||
| 16.设置系统别名 | |
|
||||
| 17.设置vimrc配置文件 | |
|
||||
| 18.安装邮件服务并配置 | |
|
||||
| 19.设置PS1 | |
|
||||
| 20.设置默认文本编辑器为vim | |
|
||||
| 21.设置history格式 | |
|
||||
| 22.禁用ctrl+alt+del重启系统功能 | |
|
||||
| 23.Ubuntu卸载无用软件包 | 只支持Ubuntu操作系统 |
|
||||
| 24.Ubuntu卸载snap | 只支持Ubuntu操作系统 |
|
||||
|
||||
**版本支持的操作系统:**
|
||||
|
||||
@@ -48,7 +48,7 @@ Github:https://github.com/raymond999999/shell
|
||||
| openEuler版 | openEuler 22.03/24.03 LTS | https://gitee.com/raymond9/shell/tree/main/reset/reset_openeuler |
|
||||
| AnolisOS版 | AnolisOS 8/23 | https://gitee.com/raymond9/shell/tree/main/reset/reset_anolisos |
|
||||
| OpenCloudOS版 | OpenCloudOS 8/9 | https://gitee.com/raymond9/shell/tree/main/reset/reset_opencloudos |
|
||||
| openSUSE版 | openSUSE Leap 15 | https://gitee.com/raymond9/shell/tree/main/reset/reset_opensuse |
|
||||
| openSUSE版 | openSUSE Leap 15/16 | https://gitee.com/raymond9/shell/tree/main/reset/reset_opensuse |
|
||||
| Kylin Server版 | 银河麒麟(Kylin Server) V10/V11 | https://gitee.com/raymond9/shell/tree/main/reset/reset_kylin_server |
|
||||
| UOS Server版 | 统信(UOS Server) V20 | https://gitee.com/raymond9/shell/tree/main/reset/reset_uos_server |
|
||||
|
||||
@@ -64,16 +64,16 @@ Github:https://github.com/raymond999999/shell
|
||||
| | 6.修复了修改网卡名的bug; |
|
||||
| | 7.添加了对Rocky Linux 10和AlmaLinux 10系统的支持; |
|
||||
| | 8.添加了对Debian 13系统的支持; |
|
||||
| | 9.修改了某些bug; |
|
||||
| | 9.修改了某些bug。 |
|
||||
| Uos Server版更新的内容 | 1.添加了对统信(UOS Server)V20系统的支持; |
|
||||
| | 2.通过修改GRUB配置文件来修改网卡名时,如果是UEFI引导系统,“grub.cfg”文件位置发生了改变,添加了相关功能; |
|
||||
| | 3.修复了修改网卡名的bug; |
|
||||
| | 4.修改了某些bug; |
|
||||
| | 4.修改了某些bug。 |
|
||||
| Kylin Server版更新的内容 | 1.添加了对银河麒麟(Kylin Server)V10系统的支持; |
|
||||
| | 2.通过修改GRUB配置文件来修改网卡名时,如果是UEFI引导系统,“grub.cfg”文件位置发生了改变,添加了相关功能; |
|
||||
| | 3.修复了修改网卡名的bug; |
|
||||
| | 4.添加了对银河麒麟(Kylin Server)V11系统的支持; |
|
||||
| | 5.修改了某些bug; |
|
||||
| | 5.修改了某些bug。 |
|
||||
| openSUSE版更新的内容 | 1.添加了对openSUSE Leap 15系统的支持; |
|
||||
| | 2.修复了“禁用SWAP”不生效的问题; |
|
||||
| | 3.修复了“禁用ctrl+alt+del重启系统功能”不生效的问题; |
|
||||
@@ -81,7 +81,8 @@ Github:https://github.com/raymond999999/shell
|
||||
| | 5.openSUSE Leap 15系统pcre安装包名改成了pcre-tools,openssl-devel安装包名改成了libopenssl-devel; |
|
||||
| | 6.对单网卡和双网卡的配置进行了统一处理,能够自动识别当前是单网卡还是双网卡环境,并据此进行相应的配置设置; |
|
||||
| | 7.修复了设置网络时DNS设置不生效的问题; |
|
||||
| | 8.修改了某些bug; |
|
||||
| | 8.添加了对openSUSE Leap 16系统的支持;openSUSE Leap 16需要设置root用户登录,需要修改网卡名,网卡配置文件变成了“/etc/NetworkManager/system-connections/eth0.nmconnection”,ssh服务配置文件变成了“/usr/etc/ssh/sshd_config”; |
|
||||
| | 9.修改了某些bug。 |
|
||||
| OpenCloudOS版更新的内容 | 1.添加了对OpenCloudOS 8和9系统的支持; |
|
||||
| | 2.修复了“禁用SWAP”不生效的问题; |
|
||||
| | 3.修复了“禁用ctrl+alt+del重启系统功能”不生效的问题; |
|
||||
@@ -90,7 +91,7 @@ Github:https://github.com/raymond999999/shell
|
||||
| | 6.通过修改GRUB配置文件来修改网卡名时,如果是UEFI引导系统,“grub.cfg”文件位置发生了改变,添加了相关功能; |
|
||||
| | 7.修复了修改网卡名的bug; |
|
||||
| | 8.添加了启用OpenCloudOS 8 PowerTools仓库的功能; |
|
||||
| | 9.修改了某些bug; |
|
||||
| | 9.修改了某些bug。 |
|
||||
| AnolisOS版更新的内容 | 1.添加了对AnolisOS 8和23系统的支持; |
|
||||
| | 2.修复了“禁用SWAP”不生效的问题; |
|
||||
| | 3.修复了“禁用ctrl+alt+del重启系统功能”不生效的问题; |
|
||||
@@ -98,21 +99,21 @@ Github:https://github.com/raymond999999/shell
|
||||
| | 5.由于AnolisOS 23对网卡命名规则进行了更改,使用nmcli命令来修改IP地址的方法不再适用。因此,我们采用了通过配置文件来设置IP地址的方式。同时,对单网卡和双网卡的配置进行了统一处理,能够自动识别当前是单网卡还是双网卡环境,并据此进行相应的配置设置; |
|
||||
| | 6.通过修改GRUB配置文件来修改网卡名时,如果是UEFI引导系统,“grub.cfg”文件位置发生了改变,添加了相关功能; |
|
||||
| | 7.修复了修改网卡名的bug; |
|
||||
| | 8.修改了某些bug; |
|
||||
| | 8.修改了某些bug。 |
|
||||
| openEuler版更新的内容 | 1.添加了对openEuler 22.03/24.03 LTS系统的支持; |
|
||||
| | 2.修复了“禁用SWAP”不生效的问题; |
|
||||
| | 3.修复了“禁用ctrl+alt+del重启系统功能”不生效的问题; |
|
||||
| | 4.对单网卡和双网卡的配置进行了统一处理,能够自动识别当前是单网卡还是双网卡环境,并据此进行相应的配置设置; |
|
||||
| | 5.通过修改GRUB配置文件来修改网卡名时,如果是UEFI引导系统,“grub.cfg”文件位置发生了改变,添加了相关功能; |
|
||||
| | 6.修复了修改网卡名的bug; |
|
||||
| | 7.修改了某些bug; |
|
||||
| | 7.修改了某些bug。 |
|
||||
| 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 Server 24.04 LTS系统的支持;(Ubuntu Server 24.04 LTS的变更:网卡配置文件变成了“/etc/netplan/50-cloud-init.yaml”,镜像仓库格式变成了DEB822 格式,ssh服务的服务名变成了ssh;) |
|
||||
| | 3.添加了对Debian 11和12系统的支持; |
|
||||
| | 4.添加了AlmaLinux的devel仓库; |
|
||||
| | 5.修复了“禁用ctrl+alt+del重启系统功能”不生效的问题; |
|
||||
| | 6.添加了对CentOS Stream 10系统的支持,修复了“禁用SWAP”不生效的问题,CentOS Stream 10系统pcre安装包名改成了pcre2,pcre-devel安装包名改成了pcre2-devel; |
|
||||
| | 7.修改了某些bug; |
|
||||
| | 7.修改了某些bug。 |
|
||||
| v8版更新内容 | 1.添加了对AlmaLinux 8和9系统的支持; |
|
||||
| | 2.添加Ubuntu卸载snap的功能; |
|
||||
| | 3.修改了某些bug。 |
|
||||
|
||||
BIN
reset/reset.jpg
BIN
reset/reset.jpg
Binary file not shown.
|
Before Width: | Height: | Size: 300 KiB After Width: | Height: | Size: 311 KiB |
@@ -4,7 +4,7 @@
|
||||
#Author: Raymond
|
||||
#QQ: 88563128
|
||||
#MP: Raymond运维
|
||||
#Date: 2025-09-30
|
||||
#Date: 2025-10-19
|
||||
#FileName: reset_anolisos.sh
|
||||
#URL: https://wx.zsxq.com/group/15555885545422
|
||||
#Description: The reset linux system initialization script supports
|
||||
@@ -13,6 +13,7 @@
|
||||
#**********************************************************************************
|
||||
COLOR="echo -e \\033[01;31m"
|
||||
END='\033[0m'
|
||||
LOGIN_USER=`whoami`
|
||||
|
||||
os(){
|
||||
. /etc/os-release
|
||||
@@ -24,9 +25,20 @@ os(){
|
||||
fi
|
||||
}
|
||||
|
||||
set_root_login(){
|
||||
read -p "请输入密码: " PASSWORD
|
||||
echo ${PASSWORD} |sudo -S sed -ri 's@#(PermitRootLogin )prohibit-password@\1yes@' /etc/ssh/sshd_config
|
||||
sudo systemctl restart sshd
|
||||
sudo -S passwd root <<-EOF
|
||||
${PASSWORD}
|
||||
${PASSWORD}
|
||||
EOF
|
||||
${COLOR}"${PRETTY_NAME}操作系统,root用户登录已设置完成,请重新登录后生效!"${END}
|
||||
}
|
||||
|
||||
set_anolis_8_eth(){
|
||||
sed -ri.bak '/^GRUB_CMDLINE_LINUX=/s@"$@ net.ifnames=0 biosdevname=0"@' /etc/default/grub
|
||||
if lsblk | grep -q efi;then
|
||||
if lsblk | grep -q EFI;then
|
||||
EFI_DIR=`find /boot/efi/ -name "grub.cfg" | awk -F"/" '{print $5}'`
|
||||
grub2-mkconfig -o /boot/efi/EFI/${EFI_DIR}/grub.cfg >& /dev/null
|
||||
else
|
||||
@@ -80,7 +92,7 @@ Name=eth1
|
||||
EOF
|
||||
}
|
||||
|
||||
set_eth(){
|
||||
set_anolisos_eth(){
|
||||
IP_NUM=`ip addr | awk -F"[: ]" '{print $1}' | grep -v '^$' | wc -l`
|
||||
if [ ${MAIN_VERSION_ID} == "8" ];then
|
||||
if [ ${IP_NUM} == "2" ];then
|
||||
@@ -125,6 +137,15 @@ set_eth(){
|
||||
fi
|
||||
}
|
||||
|
||||
set_eth(){
|
||||
ETH_PREFIX_NAME=`ip addr | awk -F"[ :]" '/^2/{print $3}' | tr -d "[:digit:]"`
|
||||
if [ ${ETH_PREFIX_NAME} == "eth" ];then
|
||||
${COLOR}"${PRETTY_NAME}操作系统,网卡名已修改,不用设置!"${END}
|
||||
else
|
||||
set_anolisos_eth
|
||||
fi
|
||||
}
|
||||
|
||||
check_ip(){
|
||||
local IP=$1
|
||||
VALID_CHECK=$(echo ${IP}|awk -F. '$1<=255&&$2<=255&&$3<=255&&$4<=255{print "yes"}')
|
||||
@@ -314,12 +335,15 @@ EOF
|
||||
|
||||
minimal_install(){
|
||||
${COLOR}'开始安装“Minimal安装建议安装软件包”,请稍等......'${END}
|
||||
yum install -y vim lrzsz tree tmux lsof tcpdump wget net-tools iotop bc bzip2 zip unzip man-pages &> /dev/null
|
||||
yum install -y vim lrzsz tree tmux lsof tcpdump wget net-tools iotop bc bzip2 zip unzip &> /dev/null
|
||||
if [ ${MAIN_VERSION_ID} == "7" -o ${MAIN_VERSION_ID} == "8" ];then
|
||||
yum install -y man-pages &> /dev/null
|
||||
fi
|
||||
${COLOR}"${PRETTY_NAME}操作系统,Minimal安装建议安装软件包已安装完成!"${END}
|
||||
}
|
||||
|
||||
disable_firewalls(){
|
||||
rpm -q firewalld &> /dev/null && { systemctl disable --now firewalld &> /dev/null; ${COLOR}"${PRETTY_NAME}操作系统,Firewall防火墙已关闭!"${END}; } || ${COLOR}"${PRETTY_NAME}操作系统,iptables防火墙已关闭!"${END}
|
||||
rpm -q firewalld &> /dev/null && { systemctl disable --now firewalld &> /dev/null; ${COLOR}"${PRETTY_NAME}操作系统,Firewall防火墙已关闭!"${END}; } || ${COLOR}"${PRETTY_NAME}操作系统,默认没有安装Firewall防火墙服务,不要设置!"${END}
|
||||
}
|
||||
|
||||
disable_selinux(){
|
||||
@@ -333,13 +357,9 @@ disable_selinux(){
|
||||
}
|
||||
|
||||
set_swap(){
|
||||
if grep -Eqi "noauto" /etc/fstab;then
|
||||
${COLOR}"${PRETTY_NAME}操作系统,swap已被禁用,不用设置!"${END}
|
||||
else
|
||||
sed -ri.bak '/swap/s/(.*)(defaults)(.*)/\1\2,noauto\3/g' /etc/fstab
|
||||
swapoff -a
|
||||
${COLOR}"${PRETTY_NAME}操作系统,禁用swap已设置成功,请重启系统后生效!"${END}
|
||||
fi
|
||||
systemctl mask swap.target &> /dev/null
|
||||
swapoff -a
|
||||
${COLOR}"${PRETTY_NAME}操作系统,禁用swap已设置成功,请重启系统后生效!"${END}
|
||||
}
|
||||
|
||||
set_localtime(){
|
||||
@@ -715,9 +735,9 @@ set_history_env(){
|
||||
disable_restart(){
|
||||
START_STATUS=`systemctl status ctrl-alt-del.target | sed -n '2p' | awk -F"[[:space:]]+|;" '{print $6}'`
|
||||
if [ ${START_STATUS} == "enabled" ];then
|
||||
systemctl disable ctrl-alt-del.target
|
||||
systemctl disable ctrl-alt-del.target &> /dev/null
|
||||
fi
|
||||
systemctl mask ctrl-alt-del.target
|
||||
systemctl mask ctrl-alt-del.target &> /dev/null
|
||||
${COLOR}"${PRETTY_NAME}操作系统,禁用ctrl+alt+del重启功能设置成功!"${END}
|
||||
}
|
||||
|
||||
@@ -725,111 +745,211 @@ menu(){
|
||||
while true;do
|
||||
echo -e "\E[$[RANDOM%7+31];1m"
|
||||
cat <<-EOF
|
||||
***************************************************************
|
||||
* 系统初始化脚本菜单 *
|
||||
* 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 *
|
||||
***************************************************************
|
||||
********************************************************
|
||||
* 系统初始化脚本菜单 *
|
||||
* 1.设置root用户登录 13.优化SSH *
|
||||
* 2.修改网卡名 14.更改SSH端口号 *
|
||||
* 3.设置网络 15.设置系统别名 *
|
||||
* 4.设置主机名 16.设置vimrc配置文件 *
|
||||
* 5.设置镜像仓库 17.安装邮件服务并配置 *
|
||||
* 6.建议安装软件 18.设置PS1(请进入选择颜色) *
|
||||
* 7.关闭防火墙 19.设置默认文本编辑器为vim *
|
||||
* 8.禁用SELinux 20.设置history格式 *
|
||||
* 9.禁用SWAP 21.禁用ctrl+alt+del重启系统功能 *
|
||||
* 10.设置系统时区 22.重启系统 *
|
||||
* 11.优化资源限制参数 23.关机 *
|
||||
* 12.优化内核参数 24.退出 *
|
||||
********************************************************
|
||||
EOF
|
||||
echo -e '\E[0m'
|
||||
|
||||
read -p "请选择相应的编号(1-23): " choice
|
||||
read -p "请选择相应的编号(1-24): " choice
|
||||
case ${choice} in
|
||||
1)
|
||||
set_eth
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},不用设置!"${END}
|
||||
else
|
||||
set_root_login
|
||||
fi
|
||||
;;
|
||||
2)
|
||||
set_network
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_eth
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
3)
|
||||
set_hostname
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_network
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
4)
|
||||
base_menu
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_hostname
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
5)
|
||||
minimal_install
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
base_menu
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
6)
|
||||
disable_firewalls
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
minimal_install
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
7)
|
||||
disable_selinux
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
disable_firewalls
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
8)
|
||||
set_swap
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
disable_selinux
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
9)
|
||||
set_localtime
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_swap
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
10)
|
||||
set_limits
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_localtime
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
11)
|
||||
set_kernel
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_limits
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
12)
|
||||
optimization_ssh
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_kernel
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
13)
|
||||
set_ssh_port
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
optimization_ssh
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
14)
|
||||
set_alias
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_ssh_port
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
15)
|
||||
set_vimrc
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_alias
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
16)
|
||||
set_mail
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_vimrc
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
17)
|
||||
set_ps1
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_mail
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
18)
|
||||
set_vim_env
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_ps1
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
19)
|
||||
set_history_env
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_vim_env
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
20)
|
||||
disable_restart
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_history_env
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
21)
|
||||
reboot
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
disable_restart
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
22)
|
||||
shutdown -h now
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
shutdown -r now
|
||||
else
|
||||
sudo shutdown -r now
|
||||
fi
|
||||
;;
|
||||
23)
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
shutdown -h now
|
||||
else
|
||||
sudo shutdown -h now
|
||||
fi
|
||||
;;
|
||||
24)
|
||||
break
|
||||
;;
|
||||
*)
|
||||
${COLOR}"输入错误,请输入正确的数字(1-23)!"${END}
|
||||
${COLOR}"输入错误,请输入正确的数字(1-24)!"${END}
|
||||
;;
|
||||
esac
|
||||
done
|
||||
}
|
||||
|
||||
main(){
|
||||
os
|
||||
if [ ${MAIN_NAME} == "Anolis" ];then
|
||||
if [ ${MAIN_VERSION_ID} == 8 -o ${MAIN_VERSION_ID} == 23 ];then
|
||||
menu
|
||||
fi
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
menu
|
||||
else
|
||||
${COLOR}"此脚本不支持${PRETTY_NAME}操作系统!"${END}
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录!"${END}
|
||||
menu
|
||||
fi
|
||||
}
|
||||
|
||||
main
|
||||
os
|
||||
if [ ${MAIN_NAME} == "Anolis" ];then
|
||||
if [ ${MAIN_VERSION_ID} == 8 -o ${MAIN_VERSION_ID} == 23 ];then
|
||||
main
|
||||
fi
|
||||
else
|
||||
${COLOR}"此脚本不支持${PRETTY_NAME}操作系统!"${END}
|
||||
fi
|
||||
|
||||
@@ -4,15 +4,16 @@
|
||||
#Author: Raymond
|
||||
#QQ: 88563128
|
||||
#MP: Raymond运维
|
||||
#Date: 2025-09-30
|
||||
#Date: 2025-10-19
|
||||
#FileName: reset_kylin_server.sh
|
||||
#URL: https://wx.zsxq.com/group/15555885545422
|
||||
#Description: The reset linux system initialization script supports
|
||||
# “Kylin Server V10 and V11“ operating systems.
|
||||
# “Kylin Server v10 and v11“ operating systems.
|
||||
#Copyright (C): 2025 All rights reserved
|
||||
#**********************************************************************************
|
||||
COLOR="echo -e \\033[01;31m"
|
||||
END='\033[0m'
|
||||
LOGIN_USER=`whoami`
|
||||
|
||||
os(){
|
||||
. /etc/os-release
|
||||
@@ -24,12 +25,23 @@ os(){
|
||||
fi
|
||||
}
|
||||
|
||||
set_eth(){
|
||||
set_root_login(){
|
||||
read -p "请输入密码: " PASSWORD
|
||||
echo ${PASSWORD} |sudo -S sed -ri 's@#(PermitRootLogin )prohibit-password@\1yes@' /etc/ssh/sshd_config
|
||||
sudo systemctl restart sshd
|
||||
sudo -S passwd root <<-EOF
|
||||
${PASSWORD}
|
||||
${PASSWORD}
|
||||
EOF
|
||||
${COLOR}"${PRETTY_NAME}操作系统,root用户登录已设置完成,请重新登录后生效!"${END}
|
||||
}
|
||||
|
||||
set_kylin_eth(){
|
||||
if grep -Eqi "(net\.ifnames|biosdevname)" /etc/default/grub;then
|
||||
${COLOR}"${PRETTY_NAME}操作系统,网卡名配置文件已修改,不用修改!"${END}
|
||||
else
|
||||
sed -ri.bak '/^GRUB_CMDLINE_LINUX=/s@"$@ net.ifnames=0 biosdevname=0"@' /etc/default/grub
|
||||
if lsblk | grep -q efi;then
|
||||
if lsblk | grep -q EFI;then
|
||||
EFI_DIR=`find /boot/efi/ -name "grub.cfg" | awk -F"/" '{print $5}'`
|
||||
grub2-mkconfig -o /boot/efi/EFI/${EFI_DIR}/grub.cfg >& /dev/null
|
||||
else
|
||||
@@ -43,6 +55,15 @@ set_eth(){
|
||||
fi
|
||||
}
|
||||
|
||||
set_eth(){
|
||||
ETH_PREFIX_NAME=`ip addr | awk -F"[ :]" '/^2/{print $3}' | tr -d "[:digit:]"`
|
||||
if [ ${ETH_PREFIX_NAME} == "eth" ];then
|
||||
${COLOR}"${PRETTY_NAME}操作系统,网卡名已修改,不用设置!"${END}
|
||||
else
|
||||
set_kylin_eth
|
||||
fi
|
||||
}
|
||||
|
||||
check_ip(){
|
||||
local IP=$1
|
||||
VALID_CHECK=$(echo ${IP}|awk -F. '$1<=255&&$2<=255&&$3<=255&&$4<=255{print "yes"}')
|
||||
@@ -214,8 +235,8 @@ set_network(){
|
||||
else
|
||||
set_dual_network
|
||||
fi
|
||||
${COLOR}"${PRETTY_NAME}操作系统,网络已设置成功,10秒后,机器会自动重启!"${END}
|
||||
sleep 10 && shutdown -r now
|
||||
${COLOR}"${PRETTY_NAME}操作系统,网络已设置成功,10秒后,机器会自动重启!"${END}
|
||||
sleep 10 && shutdown -r now
|
||||
else
|
||||
if [ ${IP_NUM} == "2" ];then
|
||||
set_network_eth0
|
||||
@@ -223,7 +244,7 @@ set_network(){
|
||||
set_network_eth0
|
||||
set_network_eth1
|
||||
fi
|
||||
${COLOR}"${PRETTY_NAME}操作系统,网络已设置成功,请重新启动系统后生效!"${END}
|
||||
${COLOR}"${PRETTY_NAME}操作系统,网络已设置成功,请重新启动系统后生效!"${END}
|
||||
fi
|
||||
}
|
||||
|
||||
@@ -240,7 +261,7 @@ minimal_install(){
|
||||
}
|
||||
|
||||
disable_firewalls(){
|
||||
rpm -q firewalld &> /dev/null && { systemctl disable --now firewalld &> /dev/null; ${COLOR}"${PRETTY_NAME}操作系统,Firewall防火墙已关闭!"${END}; } || ${COLOR}"${PRETTY_NAME}操作系统,iptables防火墙已关闭!"${END}
|
||||
rpm -q firewalld &> /dev/null && { systemctl disable --now firewalld &> /dev/null; ${COLOR}"${PRETTY_NAME}操作系统,Firewall防火墙已关闭!"${END}; } || ${COLOR}"${PRETTY_NAME}操作系统,默认没有安装Firewall防火墙服务,不要设置!"${END}
|
||||
}
|
||||
|
||||
disable_selinux(){
|
||||
@@ -254,13 +275,9 @@ disable_selinux(){
|
||||
}
|
||||
|
||||
set_swap(){
|
||||
if grep -Eqi "noauto" /etc/fstab;then
|
||||
${COLOR}"${PRETTY_NAME}操作系统,swap已被禁用,不用设置!"${END}
|
||||
else
|
||||
sed -ri.bak '/swap/s/(.*)(defaults)(.*)/\1\2,noauto\3/g' /etc/fstab
|
||||
swapoff -a
|
||||
${COLOR}"${PRETTY_NAME}操作系统,禁用swap已设置成功,请重启系统后生效!"${END}
|
||||
fi
|
||||
systemctl mask swap.target &> /dev/null
|
||||
swapoff -a
|
||||
${COLOR}"${PRETTY_NAME}操作系统,禁用swap已设置成功,请重启系统后生效!"${END}
|
||||
}
|
||||
|
||||
set_localtime(){
|
||||
@@ -619,9 +636,9 @@ set_history_env(){
|
||||
disable_restart(){
|
||||
START_STATUS=`systemctl status ctrl-alt-del.target | sed -n '2p' | awk -F"[[:space:]]+|;" '{print $6}'`
|
||||
if [ ${START_STATUS} == "enabled" ];then
|
||||
systemctl disable ctrl-alt-del.target
|
||||
systemctl disable ctrl-alt-del.target &> /dev/null
|
||||
fi
|
||||
systemctl mask ctrl-alt-del.target
|
||||
systemctl mask ctrl-alt-del.target &> /dev/null
|
||||
${COLOR}"${PRETTY_NAME}操作系统,禁用ctrl+alt+del重启功能设置成功!"${END}
|
||||
}
|
||||
|
||||
@@ -629,107 +646,204 @@ menu(){
|
||||
while true;do
|
||||
echo -e "\E[$[RANDOM%7+31];1m"
|
||||
cat <<-EOF
|
||||
***************************************************************
|
||||
* 系统初始化脚本菜单 *
|
||||
* 1.修改网卡名 12.更改SSH端口号 *
|
||||
* 2.设置网络 13.设置系统别名 *
|
||||
* 3.设置主机名 14.设置vimrc配置文件 *
|
||||
* 4.Minimal安装建议安装软件 15.安装邮件服务并配置邮件 *
|
||||
* 5.关闭防火墙 16.设置PS1(请进入选择颜色) *
|
||||
* 6.禁用SELinux 17.设置默认文本编辑器为vim *
|
||||
* 7.禁用SWAP 18.设置history格式 *
|
||||
* 8.设置系统时区 19.禁用ctrl+alt+del重启系统功能 *
|
||||
* 9.优化资源限制参数 20.重启系统 *
|
||||
* 10.优化内核参数 21.关机 *
|
||||
* 11.优化SSH 22.退出 *
|
||||
***************************************************************
|
||||
********************************************************
|
||||
* 系统初始化脚本菜单 *
|
||||
* 1.设置root用户登录 13.更改SSH端口号 *
|
||||
* 2.修改网卡名 14.设置系统别名 *
|
||||
* 3.设置网络 15.设置vimrc配置文件 *
|
||||
* 4.设置主机名 16.安装邮件服务并配置 *
|
||||
* 5.建议安装软件 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-22): " choice
|
||||
read -p "请选择相应的编号(1-23): " choice
|
||||
case ${choice} in
|
||||
1)
|
||||
set_eth
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},不用设置!"${END}
|
||||
else
|
||||
set_root_login
|
||||
fi
|
||||
;;
|
||||
2)
|
||||
set_network
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_eth
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
3)
|
||||
set_hostname
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_network
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
4)
|
||||
minimal_install
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_hostname
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
5)
|
||||
disable_firewalls
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
minimal_install
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
6)
|
||||
disable_selinux
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
disable_firewalls
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
7)
|
||||
set_swap
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
disable_selinux
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
8)
|
||||
set_localtime
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_swap
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
9)
|
||||
set_limits
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_localtime
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
10)
|
||||
set_kernel
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_limits
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
11)
|
||||
optimization_ssh
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_kernel
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
12)
|
||||
set_ssh_port
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
optimization_ssh
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
13)
|
||||
set_alias
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_ssh_port
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
14)
|
||||
set_vimrc
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_alias
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
15)
|
||||
set_mail
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_vimrc
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
16)
|
||||
set_ps1
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_mail
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
17)
|
||||
set_vim_env
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_ps1
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
18)
|
||||
set_history_env
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_vim_env
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
19)
|
||||
disable_restart
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_history_env
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
20)
|
||||
reboot
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
disable_restart
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
21)
|
||||
shutdown -h now
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
shutdown -r now
|
||||
else
|
||||
sudo shutdown -r now
|
||||
fi
|
||||
;;
|
||||
22)
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
shutdown -h now
|
||||
else
|
||||
sudo shutdown -h now
|
||||
fi
|
||||
;;
|
||||
23)
|
||||
break
|
||||
;;
|
||||
*)
|
||||
${COLOR}"输入错误,请输入正确的数字(1-22)!"${END}
|
||||
${COLOR}"输入错误,请输入正确的数字(1-23)!"${END}
|
||||
;;
|
||||
esac
|
||||
done
|
||||
}
|
||||
|
||||
main(){
|
||||
os
|
||||
if [ ${MAIN_NAME} == "Kylin" ];then
|
||||
if [ ${MAIN_VERSION_ID} == 10 -o ${MAIN_VERSION_ID} == 11 ];then
|
||||
menu
|
||||
fi
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
menu
|
||||
else
|
||||
${COLOR}"此脚本不支持${PRETTY_NAME}操作系统!"${END}
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录!"${END}
|
||||
menu
|
||||
fi
|
||||
}
|
||||
|
||||
main
|
||||
os
|
||||
if [ ${MAIN_NAME} == "Kylin" ];then
|
||||
if [ ${MAIN_VERSION_ID} == 10 -o ${MAIN_VERSION_ID} == 11 ];then
|
||||
main
|
||||
fi
|
||||
else
|
||||
${COLOR}"此脚本不支持${PRETTY_NAME}操作系统!"${END}
|
||||
fi
|
||||
|
||||
@@ -4,15 +4,16 @@
|
||||
#Author: Raymond
|
||||
#QQ: 88563128
|
||||
#MP: Raymond运维
|
||||
#Date: 2025-09-30
|
||||
#Date: 2025-10-19
|
||||
#FileName: reset_opencloudos.sh
|
||||
#URL: https://wx.zsxq.com/group/15555885545422
|
||||
#Description: The reset linux system initialization script supports
|
||||
# “OpenCloudOS 8 and 9“ operating systems.
|
||||
# “OpencloudOS 8 and 9“ operating systems.
|
||||
#Copyright (C): 2025 All rights reserved
|
||||
#**********************************************************************************
|
||||
COLOR="echo -e \\033[01;31m"
|
||||
END='\033[0m'
|
||||
LOGIN_USER=`whoami`
|
||||
|
||||
os(){
|
||||
. /etc/os-release
|
||||
@@ -24,9 +25,20 @@ os(){
|
||||
fi
|
||||
}
|
||||
|
||||
set_root_login(){
|
||||
read -p "请输入密码: " PASSWORD
|
||||
echo ${PASSWORD} |sudo -S sed -ri 's@#(PermitRootLogin )prohibit-password@\1yes@' /etc/ssh/sshd_config
|
||||
sudo systemctl restart sshd
|
||||
sudo -S passwd root <<-EOF
|
||||
${PASSWORD}
|
||||
${PASSWORD}
|
||||
EOF
|
||||
${COLOR}"${PRETTY_NAME}操作系统,root用户登录已设置完成,请重新登录后生效!"${END}
|
||||
}
|
||||
|
||||
set_opencloudos_7_8_eth(){
|
||||
sed -ri.bak '/^GRUB_CMDLINE_LINUX=/s@"$@ net.ifnames=0 biosdevname=0"@' /etc/default/grub
|
||||
if lsblk | grep -q efi;then
|
||||
if lsblk | grep -q EFI;then
|
||||
EFI_DIR=`find /boot/efi/ -name "grub.cfg" | awk -F"/" '{print $5}'`
|
||||
grub2-mkconfig -o /boot/efi/EFI/${EFI_DIR}/grub.cfg >& /dev/null
|
||||
else
|
||||
@@ -65,7 +77,7 @@ Name=eth1
|
||||
EOF
|
||||
}
|
||||
|
||||
set_eth(){
|
||||
set_opencloudos_eth(){
|
||||
if [ ${MAIN_VERSION_ID} == "7" -o ${MAIN_VERSION_ID} == "8" ];then
|
||||
if grep -Eqi "(net\.ifnames|biosdevname)" /etc/default/grub;then
|
||||
${COLOR}"${PRETTY_NAME}操作系统,网卡名配置文件已修改,不用修改!"${END}
|
||||
@@ -97,6 +109,15 @@ set_eth(){
|
||||
fi
|
||||
}
|
||||
|
||||
set_eth(){
|
||||
ETH_PREFIX_NAME=`ip addr | awk -F"[ :]" '/^2/{print $3}' | tr -d "[:digit:]"`
|
||||
if [ ${ETH_PREFIX_NAME} == "eth" ];then
|
||||
${COLOR}"${PRETTY_NAME}操作系统,网卡名已修改,不用设置!"${END}
|
||||
else
|
||||
set_opencloudos_eth
|
||||
fi
|
||||
}
|
||||
|
||||
check_ip(){
|
||||
local IP=$1
|
||||
VALID_CHECK=$(echo ${IP}|awk -F. '$1<=255&&$2<=255&&$3<=255&&$4<=255{print "yes"}')
|
||||
@@ -138,7 +159,7 @@ set_network_eth0(){
|
||||
[ $? -eq 0 ] && break
|
||||
done
|
||||
if [ ${MAIN_VERSION_ID} == "7" -o ${MAIN_VERSION_ID} == "8" ];then
|
||||
cat > /etc/sysconfig/network-scripts/ifcfg-eth0 <<-EOF
|
||||
cat > /etc/sysconfig/network-scripts/ifcfg-${ETHNAME} <<-EOF
|
||||
NAME=${ETHNAME}
|
||||
DEVICE=${ETHNAME}
|
||||
ONBOOT=yes
|
||||
@@ -336,7 +357,7 @@ minimal_install(){
|
||||
}
|
||||
|
||||
disable_firewalls(){
|
||||
rpm -q firewalld &> /dev/null && { systemctl disable --now firewalld &> /dev/null; ${COLOR}"${NAME}} ${VERSION_ID}操作系统,Firewall防火墙已关闭!"${END}; } || ${COLOR}"${NAME}} ${VERSION_ID}操作系统,iptables防火墙已关闭!"${END}
|
||||
rpm -q firewalld &> /dev/null && { systemctl disable --now firewalld &> /dev/null; ${COLOR}"${PRETTY_NAME}操作系统,Firewall防火墙已关闭!"${END}; } || ${COLOR}"${PRETTY_NAME}操作系统,默认没有安装Firewall防火墙服务,不要设置!"${END}
|
||||
}
|
||||
|
||||
disable_selinux(){
|
||||
@@ -350,13 +371,9 @@ disable_selinux(){
|
||||
}
|
||||
|
||||
set_swap(){
|
||||
if grep -Eqi "noauto" /etc/fstab;then
|
||||
${COLOR}"${NAME}} ${VERSION_ID}操作系统,swap已被禁用,不用设置!"${END}
|
||||
else
|
||||
sed -ri.bak '/swap/s/(.*)(defaults)(.*)/\1\2,noauto\3/g' /etc/fstab
|
||||
swapoff -a
|
||||
${COLOR}"${PRETTY_NAME}操作系统,禁用swap已设置成功,请重启系统后生效!"${END}
|
||||
fi
|
||||
systemctl mask swap.target &> /dev/null
|
||||
swapoff -a
|
||||
${COLOR}"${PRETTY_NAME}操作系统,禁用swap已设置成功,请重启系统后生效!"${END}
|
||||
}
|
||||
|
||||
set_localtime(){
|
||||
@@ -498,18 +515,35 @@ set_base_alias(){
|
||||
ETHNAME2=`ip addr | awk -F"[ :]" '/^3/{print $3}'`
|
||||
IP_NUM=`ip addr | awk -F"[: ]" '{print $1}' | grep -v '^$' | wc -l`
|
||||
if [ ${IP_NUM} == "2" ];then
|
||||
cat >>~/.bashrc <<-EOF
|
||||
if [ ${MAIN_VERSION_ID} == "8" ];then
|
||||
cat >>~/.bashrc <<-EOF
|
||||
alias cdnet="cd /etc/sysconfig/network-scripts"
|
||||
alias cdrepo="cd /etc/yum.repos.d"
|
||||
alias vie0="vim /etc/sysconfig/network-scripts/ifcfg-${ETHNAME}"
|
||||
EOF
|
||||
else
|
||||
cat >>~/.bashrc <<-EOF
|
||||
alias cdnet="cd /etc/NetworkManager/system-connections"
|
||||
alias cdrepo="cd /etc/yum.repos.d"
|
||||
alias vie0="vim /etc/NetworkManager/system-connections/${ETHNAME}.nmconnection"
|
||||
EOF
|
||||
fi
|
||||
else
|
||||
cat >>~/.bashrc <<-EOF
|
||||
if [ -o ${MAIN_VERSION_ID} == "8" ];then
|
||||
cat >>~/.bashrc <<-EOF
|
||||
alias cdnet="cd /etc/sysconfig/network-scripts"
|
||||
alias cdrepo="cd /etc/yum.repos.d"
|
||||
alias vie0="vim /etc/sysconfig/network-scripts/ifcfg-${ETHNAME}"
|
||||
alias vie1="vim /etc/sysconfig/network-scripts/ifcfg-${ETHNAME2}"
|
||||
EOF
|
||||
else
|
||||
cat >>~/.bashrc <<-EOF
|
||||
alias cdnet="cd /etc/NetworkManager/system-connections"
|
||||
alias cdrepo="cd /etc/yum.repos.d"
|
||||
alias vie0="vim /etc/NetworkManager/system-connections/${ETHNAME}.nmconnection"
|
||||
alias vie1="vim /etc/NetworkManager/system-connections/${ETHNAME2}.nmconnection"
|
||||
EOF
|
||||
fi
|
||||
fi
|
||||
DISK_NAME=`lsblk|awk -F" " '/disk/{printf $1}' | cut -c1-4`
|
||||
if [ ${DISK_NAME} == "sda" ];then
|
||||
@@ -715,9 +749,9 @@ set_history_env(){
|
||||
disable_restart(){
|
||||
START_STATUS=`systemctl status ctrl-alt-del.target | sed -n '2p' | awk -F"[[:space:]]+|;" '{print $6}'`
|
||||
if [ ${START_STATUS} == "enabled" ];then
|
||||
systemctl disable ctrl-alt-del.target
|
||||
systemctl disable ctrl-alt-del.target &> /dev/null
|
||||
fi
|
||||
systemctl mask ctrl-alt-del.target
|
||||
systemctl mask ctrl-alt-del.target &> /dev/null
|
||||
${COLOR}"${PRETTY_NAME}操作系统,禁用ctrl+alt+del重启功能设置成功!"${END}
|
||||
}
|
||||
|
||||
@@ -725,111 +759,211 @@ menu(){
|
||||
while true;do
|
||||
echo -e "\E[$[RANDOM%7+31];1m"
|
||||
cat <<-EOF
|
||||
***************************************************************
|
||||
* 系统初始化脚本菜单 *
|
||||
* 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 *
|
||||
***************************************************************
|
||||
********************************************************
|
||||
* 系统初始化脚本菜单 *
|
||||
* 1.设置root用户登录 13.优化SSH *
|
||||
* 2.修改网卡名 14.更改SSH端口号 *
|
||||
* 3.设置网络 15.设置系统别名 *
|
||||
* 4.设置主机名 16.设置vimrc配置文件 *
|
||||
* 5.设置镜像仓库 17.安装邮件服务并配置 *
|
||||
* 6.建议安装软件 18.设置PS1(请进入选择颜色) *
|
||||
* 7.关闭防火墙 19.设置默认文本编辑器为vim *
|
||||
* 8.禁用SELinux 20.设置history格式 *
|
||||
* 9.禁用SWAP 21.禁用ctrl+alt+del重启系统功能 *
|
||||
* 10.设置系统时区 22.重启系统 *
|
||||
* 11.优化资源限制参数 23.关机 *
|
||||
* 12.优化内核参数 24.退出 *
|
||||
********************************************************
|
||||
EOF
|
||||
echo -e '\E[0m'
|
||||
|
||||
read -p "请选择相应的编号(1-23): " choice
|
||||
read -p "请选择相应的编号(1-24): " choice
|
||||
case ${choice} in
|
||||
1)
|
||||
set_eth
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},不用设置!"${END}
|
||||
else
|
||||
set_root_login
|
||||
fi
|
||||
;;
|
||||
2)
|
||||
set_network
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_eth
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
3)
|
||||
set_hostname
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_network
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
4)
|
||||
opencloudos_menu
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_hostname
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
5)
|
||||
minimal_install
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
base_menu
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
6)
|
||||
disable_firewalls
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
minimal_install
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
7)
|
||||
disable_selinux
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
disable_firewalls
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
8)
|
||||
set_swap
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
disable_selinux
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
9)
|
||||
set_localtime
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_swap
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
10)
|
||||
set_limits
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_localtime
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
11)
|
||||
set_kernel
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_limits
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
12)
|
||||
optimization_ssh
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_kernel
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
13)
|
||||
set_ssh_port
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
optimization_ssh
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
14)
|
||||
set_alias
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_ssh_port
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
15)
|
||||
set_vimrc
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_alias
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
16)
|
||||
set_mail
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_vimrc
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
17)
|
||||
set_ps1
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_mail
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
18)
|
||||
set_vim_env
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_ps1
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
19)
|
||||
set_history_env
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_vim_env
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
20)
|
||||
disable_restart
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_history_env
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
21)
|
||||
reboot
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
disable_restart
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
22)
|
||||
shutdown -h now
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
shutdown -r now
|
||||
else
|
||||
sudo shutdown -r now
|
||||
fi
|
||||
;;
|
||||
23)
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
shutdown -h now
|
||||
else
|
||||
sudo shutdown -h now
|
||||
fi
|
||||
;;
|
||||
24)
|
||||
break
|
||||
;;
|
||||
*)
|
||||
${COLOR}"输入错误,请输入正确的数字(1-23)!"${END}
|
||||
${COLOR}"输入错误,请输入正确的数字(1-24)!"${END}
|
||||
;;
|
||||
esac
|
||||
done
|
||||
}
|
||||
|
||||
main(){
|
||||
os
|
||||
if [ ${MAIN_NAME} == 'OpenCloudOS' ];then
|
||||
if [ ${MAIN_VERSION_ID} == 8 -o ${MAIN_VERSION_ID} == 9 ];then
|
||||
menu
|
||||
fi
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
menu
|
||||
else
|
||||
${COLOR}"此脚本不支持${PRETTY_NAME}操作系统!"${END}
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录!"${END}
|
||||
menu
|
||||
fi
|
||||
}
|
||||
|
||||
main
|
||||
os
|
||||
if [ ${MAIN_NAME} == 'OpenCloudOS' ];then
|
||||
if [ ${MAIN_VERSION_ID} == 8 -o ${MAIN_VERSION_ID} == 9 ];then
|
||||
main
|
||||
fi
|
||||
else
|
||||
${COLOR}"此脚本不支持${PRETTY_NAME}操作系统!"${END}
|
||||
fi
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#Author: Raymond
|
||||
#QQ: 88563128
|
||||
#MP: Raymond运维
|
||||
#Date: 2025-09-30
|
||||
#Date: 2025-10-18
|
||||
#FileName: reset_openeuler.sh
|
||||
#URL: https://wx.zsxq.com/group/15555885545422
|
||||
#Description: The reset linux system initialization script supports
|
||||
@@ -13,6 +13,7 @@
|
||||
#**********************************************************************************
|
||||
COLOR="echo -e \\033[01;31m"
|
||||
END='\033[0m'
|
||||
LOGIN_USER=`whoami`
|
||||
|
||||
os(){
|
||||
. /etc/os-release
|
||||
@@ -24,12 +25,23 @@ os(){
|
||||
fi
|
||||
}
|
||||
|
||||
set_eth(){
|
||||
set_root_login(){
|
||||
read -p "请输入密码: " PASSWORD
|
||||
echo ${PASSWORD} |sudo -S sed -ri 's@#(PermitRootLogin )prohibit-password@\1yes@' /etc/ssh/sshd_config
|
||||
sudo systemctl restart sshd
|
||||
sudo -S passwd root <<-EOF
|
||||
${PASSWORD}
|
||||
${PASSWORD}
|
||||
EOF
|
||||
${COLOR}"${PRETTY_NAME}操作系统,root用户登录已设置完成,请重新登录后生效!"${END}
|
||||
}
|
||||
|
||||
set_openeuler_eth(){
|
||||
if grep -Eqi "(net\.ifnames|biosdevname)" /etc/default/grub;then
|
||||
${COLOR}"${PRETTY_NAME}操作系统,网卡名配置文件已修改,不用修改!"${END}
|
||||
else
|
||||
sed -ri.bak '/^GRUB_CMDLINE_LINUX=/s@"$@ net.ifnames=0 biosdevname=0"@' /etc/default/grub
|
||||
if lsblk | grep -q efi;then
|
||||
if lsblk | grep -q EFI;then
|
||||
EFI_DIR=`find /boot/efi/ -name "grub.cfg" | awk -F"/" '{print $5}'`
|
||||
grub2-mkconfig -o /boot/efi/EFI/${EFI_DIR}/grub.cfg >& /dev/null
|
||||
else
|
||||
@@ -43,6 +55,15 @@ set_eth(){
|
||||
fi
|
||||
}
|
||||
|
||||
set_eth(){
|
||||
ETH_PREFIX_NAME=`ip addr | awk -F"[ :]" '/^2/{print $3}' | tr -d "[:digit:]"`
|
||||
if [ ${ETH_PREFIX_NAME} == "eth" ];then
|
||||
${COLOR}"${PRETTY_NAME}操作系统,网卡名已修改,不用设置!"${END}
|
||||
else
|
||||
set_openeuler_eth
|
||||
fi
|
||||
}
|
||||
|
||||
check_ip(){
|
||||
local IP=$1
|
||||
VALID_CHECK=$(echo ${IP}|awk -F. '$1<=255&&$2<=255&&$3<=255&&$4<=255{print "yes"}')
|
||||
@@ -308,7 +329,7 @@ minimal_install(){
|
||||
}
|
||||
|
||||
disable_firewalls(){
|
||||
rpm -q firewalld &> /dev/null && { systemctl disable --now firewalld &> /dev/null; ${COLOR}"${PRETTY_NAME}操作系统,Firewall防火墙已关闭!"${END}; } || ${COLOR}"${PRETTY_NAME}操作系统,iptables防火墙已关闭!"${END}
|
||||
rpm -q firewalld &> /dev/null && { systemctl disable --now firewalld &> /dev/null; ${COLOR}"${PRETTY_NAME}操作系统,Firewall防火墙已关闭!"${END}; } || ${COLOR}"${PRETTY_NAME}操作系统,默认没有安装Firewall防火墙服务,不要设置!"${END}
|
||||
}
|
||||
|
||||
disable_selinux(){
|
||||
@@ -322,13 +343,9 @@ disable_selinux(){
|
||||
}
|
||||
|
||||
set_swap(){
|
||||
if grep -Eqi "noauto" /etc/fstab;then
|
||||
${COLOR}"${PRETTY_NAME}操作系统,swap已被禁用,不用设置!"${END}
|
||||
else
|
||||
sed -ri.bak '/swap/s/(.*)(defaults)(.*)/\1\2,noauto\3/g' /etc/fstab
|
||||
swapoff -a
|
||||
${COLOR}"${PRETTY_NAME}操作系统,禁用swap已设置成功,请重启系统后生效!"${END}
|
||||
fi
|
||||
systemctl mask swap.target &> /dev/null
|
||||
swapoff -a
|
||||
${COLOR}"${PRETTY_NAME}操作系统,禁用swap已设置成功,请重启系统后生效!"${END}
|
||||
}
|
||||
|
||||
set_localtime(){
|
||||
@@ -687,9 +704,9 @@ set_history_env(){
|
||||
disable_restart(){
|
||||
START_STATUS=`systemctl status ctrl-alt-del.target | sed -n '2p' | awk -F"[[:space:]]+|;" '{print $6}'`
|
||||
if [ ${START_STATUS} == "enabled" ];then
|
||||
systemctl disable ctrl-alt-del.target
|
||||
systemctl disable ctrl-alt-del.target &> /dev/null
|
||||
fi
|
||||
systemctl mask ctrl-alt-del.target
|
||||
systemctl mask ctrl-alt-del.target &> /dev/null
|
||||
${COLOR}"${PRETTY_NAME}操作系统,禁用ctrl+alt+del重启功能设置成功!"${END}
|
||||
}
|
||||
|
||||
@@ -697,111 +714,211 @@ menu(){
|
||||
while true;do
|
||||
echo -e "\E[$[RANDOM%7+31];1m"
|
||||
cat <<-EOF
|
||||
***************************************************************
|
||||
* 系统初始化脚本菜单 *
|
||||
* 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 *
|
||||
***************************************************************
|
||||
********************************************************
|
||||
* 系统初始化脚本菜单 *
|
||||
* 1.设置root用户登录 13.优化SSH *
|
||||
* 2.修改网卡名 14.更改SSH端口号 *
|
||||
* 3.设置网络 15.设置系统别名 *
|
||||
* 4.设置主机名 16.设置vimrc配置文件 *
|
||||
* 5.设置镜像仓库 17.安装邮件服务并配置 *
|
||||
* 6.建议安装软件 18.设置PS1(请进入选择颜色) *
|
||||
* 7.关闭防火墙 19.设置默认文本编辑器为vim *
|
||||
* 8.禁用SELinux 20.设置history格式 *
|
||||
* 9.禁用SWAP 21.禁用ctrl+alt+del重启系统功能 *
|
||||
* 10.设置系统时区 22.重启系统 *
|
||||
* 11.优化资源限制参数 23.关机 *
|
||||
* 12.优化内核参数 24.退出 *
|
||||
********************************************************
|
||||
EOF
|
||||
echo -e '\E[0m'
|
||||
|
||||
read -p "请选择相应的编号(1-23): " choice
|
||||
read -p "请选择相应的编号(1-24): " choice
|
||||
case ${choice} in
|
||||
1)
|
||||
set_eth
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},不用设置!"${END}
|
||||
else
|
||||
set_root_login
|
||||
fi
|
||||
;;
|
||||
2)
|
||||
set_network
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_eth
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
3)
|
||||
set_hostname
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_network
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
4)
|
||||
base_menu
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_hostname
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
5)
|
||||
minimal_install
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
base_menu
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
6)
|
||||
disable_firewalls
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
minimal_install
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
7)
|
||||
disable_selinux
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
disable_firewalls
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
8)
|
||||
set_swap
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
disable_selinux
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
9)
|
||||
set_localtime
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_swap
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
10)
|
||||
set_limits
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_localtime
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
11)
|
||||
set_kernel
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_limits
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
12)
|
||||
optimization_ssh
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_kernel
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
13)
|
||||
set_ssh_port
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
optimization_ssh
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
14)
|
||||
set_alias
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_ssh_port
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
15)
|
||||
set_vimrc
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_alias
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
16)
|
||||
set_mail
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_vimrc
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
17)
|
||||
set_ps1
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_mail
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
18)
|
||||
set_vim_env
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_ps1
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
19)
|
||||
set_history_env
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_vim_env
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
20)
|
||||
disable_restart
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_history_env
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
21)
|
||||
reboot
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
disable_restart
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
22)
|
||||
shutdown -h now
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
shutdown -r now
|
||||
else
|
||||
sudo shutdown -r now
|
||||
fi
|
||||
;;
|
||||
23)
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
shutdown -h now
|
||||
else
|
||||
sudo shutdown -h now
|
||||
fi
|
||||
;;
|
||||
24)
|
||||
break
|
||||
;;
|
||||
*)
|
||||
${COLOR}"输入错误,请输入正确的数字(1-23)!"${END}
|
||||
${COLOR}"输入错误,请输入正确的数字(1-24)!"${END}
|
||||
;;
|
||||
esac
|
||||
done
|
||||
}
|
||||
|
||||
main(){
|
||||
os
|
||||
if [ ${MAIN_NAME} == "openEuler" ];then
|
||||
if [ ${MAIN_VERSION_ID} == 22 -o ${MAIN_VERSION_ID} == 24 ];then
|
||||
menu
|
||||
fi
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
menu
|
||||
else
|
||||
${COLOR}"此脚本不支持${PRETTY_NAME}操作系统!"${END}
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录!"${END}
|
||||
menu
|
||||
fi
|
||||
}
|
||||
|
||||
main
|
||||
os
|
||||
if [ ${MAIN_NAME} == "openEuler" ];then
|
||||
if [ ${MAIN_VERSION_ID} == 22 -o ${MAIN_VERSION_ID} == 24 ];then
|
||||
main
|
||||
fi
|
||||
else
|
||||
${COLOR}"此脚本不支持${PRETTY_NAME}操作系统!"${END}
|
||||
fi
|
||||
|
||||
@@ -4,15 +4,16 @@
|
||||
#Author: Raymond
|
||||
#QQ: 88563128
|
||||
#MP: Raymond运维
|
||||
#Date: 2025-09-30
|
||||
#Date: 2025-10-19
|
||||
#FileName: reset_opensuse.sh
|
||||
#URL: https://wx.zsxq.com/group/15555885545422
|
||||
#Description: The reset linux system initialization script supports
|
||||
# “openSUSE Leap 15“ operating systems.
|
||||
# “openSUSE Leap 15 and 16“ operating systems.
|
||||
#Copyright (C): 2025 All rights reserved
|
||||
#**********************************************************************************
|
||||
COLOR="echo -e \\033[01;31m"
|
||||
END='\033[0m'
|
||||
LOGIN_USER=`whoami`
|
||||
|
||||
os(){
|
||||
. /etc/os-release
|
||||
@@ -24,6 +25,51 @@ os(){
|
||||
fi
|
||||
}
|
||||
|
||||
set_root_login(){
|
||||
read -p "请输入密码: " PASSWORD
|
||||
if [ ${MAIN_VERSION_ID} == 15 ];then
|
||||
echo ${PASSWORD} |sudo -S sed -ri 's@#(PermitRootLogin )prohibit-password@\1yes@' /etc/ssh/sshd_config
|
||||
else
|
||||
echo ${PASSWORD} |sudo -S sed -ri 's@#(PermitRootLogin )prohibit-password@\1yes@' /usr/etc/ssh/sshd_config
|
||||
fi
|
||||
sudo systemctl restart sshd
|
||||
sudo -S passwd root <<-EOF
|
||||
${PASSWORD}
|
||||
${PASSWORD}
|
||||
EOF
|
||||
${COLOR}"${PRETTY_NAME}操作系统,root用户登录已设置完成,请重新登录后生效!"${END}
|
||||
}
|
||||
|
||||
set_opensuse_eth(){
|
||||
if grep -Eqi "(net\.ifnames|biosdevname)" /etc/default/grub;then
|
||||
${COLOR}"${PRETTY_NAME}操作系统,网卡名配置文件已修改,不用修改!"${END}
|
||||
else
|
||||
sed -ri.bak '/^GRUB_CMDLINE_LINUX=/s@"$@net.ifnames=0 biosdevname=0"@' /etc/default/grub
|
||||
if lsblk | grep -q EFI;then
|
||||
EFI_DIR=`find /boot/efi/ -name "grub.cfg" | awk -F"/" '{print $5}'`
|
||||
grub2-mkconfig -o /boot/efi/EFI/${EFI_DIR}/grub.cfg >& /dev/null
|
||||
else
|
||||
grub2-mkconfig -o /boot/grub2/grub.cfg >& /dev/null
|
||||
fi
|
||||
ETHNAME=`ip addr | awk -F"[ :]" '/^2/{print $3}'`
|
||||
mv /etc/NetworkManager/system-connections/Wired\ connection\ 1.nmconnection /etc/NetworkManager/system-connections/eth0.nmconnection
|
||||
sed -ri.bak -e 's/Wired\ connection\ 1/eth0/' -e 's/'${ETHNAME}'/eth0/' /etc/NetworkManager/system-connections/eth0.nmconnection
|
||||
${COLOR}"${PRETTY_NAME}操作系统,网卡名已修改成功,10秒后,机器会自动重启!"${END}
|
||||
sleep 10 && shutdown -r now
|
||||
fi
|
||||
}
|
||||
|
||||
set_eth(){
|
||||
ETH_PREFIX_NAME=`ip addr | awk -F"[ :]" '/^2/{print $3}' | tr -d "[:digit:]"`
|
||||
if [ ${ETH_PREFIX_NAME} == "eth" ];then
|
||||
${COLOR}"${PRETTY_NAME}操作系统,网卡名已修改,不用设置!"${END}
|
||||
else
|
||||
if [ ${MAIN_VERSION_ID} == 16 ];then
|
||||
set_opensuse_eth
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
check_ip(){
|
||||
local IP=$1
|
||||
VALID_CHECK=$(echo ${IP}|awk -F. '$1<=255&&$2<=255&&$3<=255&&$4<=255{print "yes"}')
|
||||
@@ -64,16 +110,30 @@ set_network_eth0(){
|
||||
check_ip ${BACKUP_DNS}
|
||||
[ $? -eq 0 ] && break
|
||||
done
|
||||
cat > /etc/sysconfig/network/ifcfg-${ETHNAME} <<-EOF
|
||||
if [ ${MAIN_VERSION_ID} == 15 ];then
|
||||
cat > /etc/sysconfig/network/ifcfg-${ETHNAME} <<-EOF
|
||||
STARTMODE='auto'
|
||||
BOOTPROTO='static'
|
||||
IPADDR='${IP}/${PREFIX}'
|
||||
EOF
|
||||
touch /etc/sysconfig/network/routes
|
||||
cat > /etc/sysconfig/network/routes <<-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
|
||||
sed -ri 's/(NETCONFIG_DNS_STATIC_SERVERS=).*/\1"'${PRIMARY_DNS}' '${BACKUP_DNS}'"/g' /etc/sysconfig/network/config
|
||||
else
|
||||
cat > /etc/NetworkManager/system-connections/${ETHNAME}.nmconnection <<-EOF
|
||||
[connection]
|
||||
id=${ETHNAME}
|
||||
type=ethernet
|
||||
interface-name=${ETHNAME}
|
||||
|
||||
[ipv4]
|
||||
address1=${IP}/${PREFIX},${GATEWAY}
|
||||
dns=${PRIMARY_DNS};${BACKUP_DNS};
|
||||
method=manual
|
||||
EOF
|
||||
fi
|
||||
}
|
||||
|
||||
set_network_eth1(){
|
||||
@@ -84,11 +144,25 @@ set_network_eth1(){
|
||||
[ $? -eq 0 ] && break
|
||||
done
|
||||
read -p "请输入子网掩码位数: " PREFIX2
|
||||
cat > /etc/sysconfig/network/ifcfg-${ETHNAME2} <<-EOF
|
||||
if [ ${MAIN_VERSION_ID} == 15 ];then
|
||||
cat > /etc/sysconfig/network/ifcfg-${ETHNAME2} <<-EOF
|
||||
STARTMODE='auto'
|
||||
BOOTPROTO='static'
|
||||
IPADDR='${IP2}/${PREFIX2}'
|
||||
EOF
|
||||
else
|
||||
cat > /etc/NetworkManager/system-connections/${ETHNAME2}.nmconnection <<-EOF
|
||||
[connection]
|
||||
id=${ETHNAME2}
|
||||
type=ethernet
|
||||
interface-name=${ETHNAME2}
|
||||
|
||||
[ipv4]
|
||||
address1=${IP2}/${PREFIX2}
|
||||
method=manual
|
||||
EOF
|
||||
chmod 600 /etc/NetworkManager/system-connections/${ETHNAME2}.nmconnection
|
||||
fi
|
||||
}
|
||||
|
||||
set_network(){
|
||||
@@ -173,12 +247,12 @@ iscas(){
|
||||
}
|
||||
|
||||
set_zypper(){
|
||||
OLD_MIRROR=$(awk -F'/' '/^baseurl=/{print $3}' /etc/zypp/repos.d/repo-*.repo | head -1)
|
||||
OLD_MIRROR=$(awk -F'/' '/^baseurl=/{print $3}' /etc/zypp/repos.d/*repo-*.repo | head -1)
|
||||
OLD_MIRROR_URL=`echo ${OLD_MIRROR} | awk -F"." '{print $2}'`
|
||||
if [ ${OLD_MIRROR_URL} == "opensuse" ];then
|
||||
sed -i.bak 's|http.*://'${OLD_MIRROR}'|https://'${MIRROR}'/opensuse|g' /etc/zypp/repos.d/repo-*.repo
|
||||
sed -i.bak 's|http.*://'${OLD_MIRROR}'|https://'${MIRROR}'/opensuse|g' /etc/zypp/repos.d/*repo-*.repo
|
||||
else
|
||||
sed -i -e 's|'${OLD_MIRROR}'|'${MIRROR}'|g' /etc/zypp/repos.d/repo-*.repo
|
||||
sed -i -e 's|'${OLD_MIRROR}'|'${MIRROR}'|g' /etc/zypp/repos.d/*repo-*.repo
|
||||
fi
|
||||
${COLOR}"更新镜像源中,请稍等..."${END}
|
||||
zypper clean &> /dev/null && zypper refresh &> /dev/null
|
||||
@@ -287,28 +361,45 @@ EOF
|
||||
|
||||
minimal_install(){
|
||||
${COLOR}'开始安装“建议安装软件包”,请稍等......'${END}
|
||||
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 lrzsz tree tmux tcpdump iotop bc &> /dev/null
|
||||
zypper install -y tree tmux tcpdump iotop bc &> /dev/null
|
||||
if [ ${MAIN_VERSION_ID} == 15 ];then
|
||||
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 lrzsz &> /dev/null
|
||||
fi
|
||||
${COLOR}"${PRETTY_NAME}操作系统,建议安装软件包已安装完成!"${END}
|
||||
}
|
||||
|
||||
disable_firewalls(){
|
||||
rpm -q firewalld &> /dev/null && { systemctl disable --now firewalld &> /dev/null; ${COLOR}"${PRETTY_NAME}操作系统,Firewall防火墙已关闭!"${END}; } || ${COLOR}"${PRETTY_NAME}操作系统,iptables防火墙已关闭!"${END}
|
||||
rpm -q firewalld &> /dev/null && { systemctl disable --now firewalld &> /dev/null; ${COLOR}"${PRETTY_NAME}操作系统,Firewall防火墙已关闭!"${END}; } || ${COLOR}"${PRETTY_NAME}操作系统,默认没有安装Firewall防火墙服务,不要设置!"${END}
|
||||
}
|
||||
|
||||
disable_selinux(){
|
||||
if [ ${MAIN_VERSION_ID} == 16 ];then
|
||||
if [ `getenforce` == "Enforcing" ];then
|
||||
sed -ri.bak 's/^(SELINUX=).*/\1disabled/' /etc/selinux/config
|
||||
setenforce 0
|
||||
${COLOR}"${PRETTY_NAME}操作系统,SELinux已禁用,请重新启动系统后才能永久生效!"${END}
|
||||
else
|
||||
${COLOR}"${PRETTY_NAME}操作系统,SELinux已被禁用,不用设置!"${END}
|
||||
fi
|
||||
else
|
||||
${COLOR}"${PRETTY_NAME}操作系统,默认没有安装SELinux,不用设置!"${END}
|
||||
fi
|
||||
}
|
||||
|
||||
disable_apparmor(){
|
||||
systemctl disable --now apparmor &> /dev/null; ${COLOR}"${PRETTY_NAME}操作系统,AppArmor已禁用!"${END}
|
||||
if [ ${MAIN_VERSION_ID} == 15 ];then
|
||||
systemctl disable --now apparmor &> /dev/null; ${COLOR}"${PRETTY_NAME}操作系统,AppArmor已禁用!"${END}
|
||||
else
|
||||
${COLOR}"${PRETTY_NAME}操作系统,默认没有安装AppArmor,不用设置!"${END}
|
||||
fi
|
||||
}
|
||||
|
||||
set_swap(){
|
||||
if grep -Eqi "noauto" /etc/fstab;then
|
||||
${COLOR}"${PRETTY_NAME}操作系统,swap已被禁用,不用设置!"${END}
|
||||
else
|
||||
sed -ri.bak '/swap/s/(.*)(defaults)(.*)/\1\2,noauto\3/g' /etc/fstab
|
||||
swapoff -a
|
||||
${COLOR}"${PRETTY_NAME}操作系统,禁用swap已设置成功,请重启系统后生效!"${END}
|
||||
fi
|
||||
systemctl mask swap.target &> /dev/null
|
||||
swapoff -a
|
||||
${COLOR}"${PRETTY_NAME}操作系统,禁用swap已设置成功,请重启系统后生效!"${END}
|
||||
}
|
||||
|
||||
set_localtime(){
|
||||
@@ -431,16 +522,28 @@ EOF
|
||||
}
|
||||
|
||||
optimization_ssh(){
|
||||
sed -ri.bak -e 's/^#(UseDNS).*/\1 no/' -e 's/^(GSSAPIAuthentication).*/\1 no/' /etc/ssh/sshd_config
|
||||
if [ ${MAIN_VERSION_ID} == 15 ];then
|
||||
sed -ri.bak -e 's/^#(UseDNS).*/\1 no/' -e 's/^(GSSAPIAuthentication).*/\1 no/' /etc/ssh/sshd_config
|
||||
else
|
||||
sed -ri.bak -e 's/^#(UseDNS).*/\1 no/' -e 's/^(GSSAPIAuthentication).*/\1 no/' /usr/etc/ssh/sshd_config
|
||||
fi
|
||||
systemctl restart sshd
|
||||
${COLOR}"${PRETTY_NAME}操作系统,SSH已优化完成!"${END}
|
||||
}
|
||||
|
||||
set_ssh_port(){
|
||||
disable_apparmor
|
||||
if [ ${MAIN_VERSION_ID} == 15 ];then
|
||||
disable_apparmor
|
||||
else
|
||||
disable_selinux
|
||||
fi
|
||||
disable_firewalls
|
||||
read -p "请输入端口号: " PORT
|
||||
sed -i 's/#Port 22/Port '${PORT}'/' /etc/ssh/sshd_config
|
||||
if [ ${MAIN_VERSION_ID} == 15 ];then
|
||||
sed -i 's/#Port 22/Port '${PORT}'/' /etc/ssh/sshd_config
|
||||
else
|
||||
sed -i 's/#Port 22/Port '${PORT}'/' /usr/etc/ssh/sshd_config
|
||||
fi
|
||||
systemctl restart sshd
|
||||
${COLOR}"${PRETTY_NAME}操作系统,更改SSH端口号已完成,请重新登陆后生效!"${END}
|
||||
}
|
||||
@@ -450,18 +553,35 @@ set_base_alias(){
|
||||
ETHNAME2=`ip addr | awk -F"[ :]" '/^3/{print $3}'`
|
||||
IP_NUM=`ip addr | awk -F"[: ]" '{print $1}' | grep -v '^$' | wc -l`
|
||||
if [ ${IP_NUM} == "2" ];then
|
||||
cat >>~/.bashrc <<-EOF
|
||||
if [ ${MAIN_VERSION_ID} == "15" ];then
|
||||
cat >>~/.bashrc <<-EOF
|
||||
alias cdnet="cd /etc/sysconfig/network"
|
||||
alias cdrepo="cd /etc/zypp/repos.d"
|
||||
alias vie0="vim /etc/sysconfig/network/ifcfg-${ETHNAME}"
|
||||
EOF
|
||||
else
|
||||
cat >>~/.bashrc <<-EOF
|
||||
alias cdnet="cd /etc/NetworkManager/system-connections"
|
||||
alias cdrepo="cd /etc/zypp/repos.d"
|
||||
alias vie0="vim /etc/NetworkManager/system-connections/${ETHNAME}.nmconnection"
|
||||
EOF
|
||||
fi
|
||||
else
|
||||
cat >>~/.bashrc <<-EOF
|
||||
if [ -o ${MAIN_VERSION_ID} == "15" ];then
|
||||
cat >>~/.bashrc <<-EOF
|
||||
alias cdnet="cd /etc/sysconfig/network"
|
||||
alias cdrepo="cd /etc/zypp/repos.d"
|
||||
alias vie0="vim /etc/sysconfig/network/ifcfg-${ETHNAME}"
|
||||
alias vie1="vim /etc/sysconfig/network/ifcfg-${ETHNAME2}"
|
||||
EOF
|
||||
else
|
||||
cat >>~/.bashrc <<-EOF
|
||||
alias cdnet="cd /etc/NetworkManager/system-connections"
|
||||
alias cdrepo="cd /etc/zypp/repos.d"
|
||||
alias vie0="vim /etc/NetworkManager/system-connections/${ETHNAME}.nmconnection"
|
||||
alias vie1="vim /etc/NetworkManager/system-connections/${ETHNAME2}.nmconnection"
|
||||
EOF
|
||||
fi
|
||||
fi
|
||||
DISK_NAME=`lsblk|awk -F" " '/disk/{printf $1}' | cut -c1-4`
|
||||
if [ ${DISK_NAME} == "sda" ];then
|
||||
@@ -473,9 +593,13 @@ EOF
|
||||
}
|
||||
|
||||
set_alias(){
|
||||
if grep -Eqi "(.*cdnet|.*cdrepo|.*vie0|.*vie1|.*scandisk)" ~/.bashrc;then
|
||||
sed -i -e '/.*cdnet/d' -e '/.*cdrepo/d' -e '/.*vie0/d' -e '/.*vie1/d' -e '/.*scandisk/d' ~/.bashrc
|
||||
set_base_alias
|
||||
if [ -a ~/.bashrc ];then
|
||||
if grep -Eqi "(.*cdnet|.*cdrepo|.*vie0|.*vie1|.*scandisk)" ~/.bashrc;then
|
||||
sed -i -e '/.*cdnet/d' -e '/.*cdrepo/d' -e '/.*vie0/d' -e '/.*vie1/d' -e '/.*scandisk/d' ~/.bashrc
|
||||
set_base_alias
|
||||
else
|
||||
set_base_alias
|
||||
fi
|
||||
else
|
||||
set_base_alias
|
||||
fi
|
||||
@@ -565,9 +689,13 @@ set_base_ps1(){
|
||||
}
|
||||
|
||||
set_ps1_env(){
|
||||
if grep -Eqi "^.*PS1" ~/.bashrc;then
|
||||
sed -i '/^.*PS1/d' ~/.bashrc
|
||||
set_base_ps1
|
||||
if [ -a ~/.bashrc ];then
|
||||
if grep -Eqi "^.*PS1" ~/.bashrc;then
|
||||
sed -i '/^.*PS1/d' ~/.bashrc
|
||||
set_base_ps1
|
||||
else
|
||||
set_base_ps1
|
||||
fi
|
||||
else
|
||||
set_base_ps1
|
||||
fi
|
||||
@@ -641,9 +769,13 @@ set_vim(){
|
||||
}
|
||||
|
||||
set_vim_env(){
|
||||
if grep -Eqi ".*EDITOR" ~/.bashrc;then
|
||||
sed -i '/.*EDITOR/d' ~/.bashrc
|
||||
set_vim
|
||||
if [ -a ~/.bashrc ];then
|
||||
if grep -Eqi ".*EDITOR" ~/.bashrc;then
|
||||
sed -i '/.*EDITOR/d' ~/.bashrc
|
||||
set_vim
|
||||
else
|
||||
set_vim
|
||||
fi
|
||||
else
|
||||
set_vim
|
||||
fi
|
||||
@@ -655,9 +787,13 @@ set_history(){
|
||||
}
|
||||
|
||||
set_history_env(){
|
||||
if grep -Eqi ".*HISTTIMEFORMAT" ~/.bashrc;then
|
||||
sed -i '/.*HISTTIMEFORMAT/d' ~/.bashrc
|
||||
set_history
|
||||
if [ -a ~/.bashrc ];then
|
||||
if grep -Eqi ".*HISTTIMEFORMAT" ~/.bashrc;then
|
||||
sed -i '/.*HISTTIMEFORMAT/d' ~/.bashrc
|
||||
set_history
|
||||
else
|
||||
set_history
|
||||
fi
|
||||
else
|
||||
set_history
|
||||
fi
|
||||
@@ -667,9 +803,9 @@ set_history_env(){
|
||||
disable_restart(){
|
||||
START_STATUS=`systemctl status ctrl-alt-del.target | sed -n '2p' | awk -F"[[:space:]]+|;" '{print $6}'`
|
||||
if [ ${START_STATUS} == "enabled" ];then
|
||||
systemctl disable ctrl-alt-del.target
|
||||
systemctl disable ctrl-alt-del.target &> /dev/null
|
||||
fi
|
||||
systemctl mask ctrl-alt-del.target
|
||||
systemctl mask ctrl-alt-del.target &> /dev/null
|
||||
${COLOR}"${PRETTY_NAME}操作系统,禁用ctrl+alt+del重启功能设置成功!"${END}
|
||||
}
|
||||
|
||||
@@ -677,107 +813,219 @@ menu(){
|
||||
while true;do
|
||||
echo -e "\E[$[RANDOM%7+31];1m"
|
||||
cat <<-EOF
|
||||
*******************************************************
|
||||
* 系统初始化脚本菜单 *
|
||||
* 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.退出 *
|
||||
*******************************************************
|
||||
********************************************************
|
||||
* 系统初始化脚本菜单 *
|
||||
* 1.设置root用户登录 14.优化SSH *
|
||||
* 2.修改网卡名 15.更改SSH端口号 *
|
||||
* 3.设置网络 16.设置系统别名 *
|
||||
* 4.设置主机名 17.设置vimrc配置文件 *
|
||||
* 5.设置镜像仓库 18.安装邮件服务并配置 *
|
||||
* 6.建议安装软件 19.设置PS1(请进入选择颜色) *
|
||||
* 7.关闭防火墙 20.设置默认文本编辑器为vim *
|
||||
* 8.禁用SELinux 21.设置history格式 *
|
||||
* 9.禁用AppArmor 22.禁用ctrl+alt+del重启系统功能 *
|
||||
* 10.禁用SWAP 23.重启系统 *
|
||||
* 11.设置系统时区 24.关机 *
|
||||
* 12.优化资源限制参数 25.退出 *
|
||||
* 13.优化内核参数 *
|
||||
********************************************************
|
||||
EOF
|
||||
echo -e '\E[0m'
|
||||
|
||||
read -p "请选择相应的编号(1-22): " choice
|
||||
read -p "请选择相应的编号(1-25): " choice
|
||||
case ${choice} in
|
||||
1)
|
||||
set_network
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},不用设置!"${END}
|
||||
else
|
||||
set_root_login
|
||||
fi
|
||||
;;
|
||||
2)
|
||||
set_hostname
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_eth
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
3)
|
||||
base_menu
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_network
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
4)
|
||||
minimal_install
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_hostname
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
5)
|
||||
disable_firewalls
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
base_menu
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
6)
|
||||
disable_apparmor
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
minimal_install
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
7)
|
||||
set_swap
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
disable_firewalls
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
8)
|
||||
set_localtime
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
disable_selinux
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
9)
|
||||
set_limits
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
disable_apparmor
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
10)
|
||||
set_kernel
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_swap
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
11)
|
||||
optimization_ssh
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_localtime
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
12)
|
||||
set_ssh_port
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_limits
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
13)
|
||||
set_alias
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_kernel
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
14)
|
||||
set_vimrc
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
optimization_ssh
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
15)
|
||||
set_mail
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_ssh_port
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
16)
|
||||
set_ps1
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_alias
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
17)
|
||||
set_vim_env
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_vimrc
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
18)
|
||||
set_history_env
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_mail
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
19)
|
||||
disable_restart
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_ps1
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
20)
|
||||
reboot
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_vim_env
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
21)
|
||||
shutdown -h now
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_history_env
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
22)
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
disable_restart
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
23)
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
shutdown -r now
|
||||
else
|
||||
sudo shutdown -r now
|
||||
fi
|
||||
;;
|
||||
24)
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
shutdown -h now
|
||||
else
|
||||
sudo shutdown -h now
|
||||
fi
|
||||
;;
|
||||
25)
|
||||
break
|
||||
;;
|
||||
*)
|
||||
${COLOR}"输入错误,请输入正确的数字(1-22)!"${END}
|
||||
${COLOR}"输入错误,请输入正确的数字(1-25)!"${END}
|
||||
;;
|
||||
esac
|
||||
done
|
||||
}
|
||||
|
||||
main(){
|
||||
os
|
||||
if [ ${MAIN_NAME} == "openSUSE" ];then
|
||||
if [ ${MAIN_VERSION_ID} == 15 ];then
|
||||
menu
|
||||
fi
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
menu
|
||||
else
|
||||
${COLOR}"此脚本不支持${PRETTY_NAME}操作系统!"${END}
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录!"${END}
|
||||
menu
|
||||
fi
|
||||
}
|
||||
|
||||
main
|
||||
os
|
||||
if [ ${MAIN_NAME} == "openSUSE" ];then
|
||||
if [ ${MAIN_VERSION_ID} == 15 -o ${MAIN_VERSION_ID} == 16 ];then
|
||||
main
|
||||
fi
|
||||
else
|
||||
${COLOR}"此脚本不支持${PRETTY_NAME}操作系统!"${END}
|
||||
fi
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#Author: Raymond
|
||||
#QQ: 88563128
|
||||
#MP: Raymond运维
|
||||
#Date: 2025-09-30
|
||||
#Date: 2025-10-19
|
||||
#FileName: reset_uos_server.sh
|
||||
#URL: https://wx.zsxq.com/group/15555885545422
|
||||
#Description: The reset linux system initialization script supports
|
||||
@@ -13,6 +13,7 @@
|
||||
#**********************************************************************************
|
||||
COLOR="echo -e \\033[01;31m"
|
||||
END='\033[0m'
|
||||
LOGIN_USER=`whoami`
|
||||
|
||||
os(){
|
||||
. /etc/os-release
|
||||
@@ -24,12 +25,23 @@ os(){
|
||||
fi
|
||||
}
|
||||
|
||||
set_eth(){
|
||||
set_root_login(){
|
||||
read -p "请输入密码: " PASSWORD
|
||||
echo ${PASSWORD} |sudo -S sed -ri 's@#(PermitRootLogin )prohibit-password@\1yes@' /etc/ssh/sshd_config
|
||||
sudo systemctl restart sshd
|
||||
sudo -S passwd root <<-EOF
|
||||
${PASSWORD}
|
||||
${PASSWORD}
|
||||
EOF
|
||||
${COLOR}"${PRETTY_NAME}操作系统,root用户登录已设置完成,请重新登录后生效!"${END}
|
||||
}
|
||||
|
||||
set_uos_eth(){
|
||||
if grep -Eqi "(net\.ifnames|biosdevname)" /etc/default/grub;then
|
||||
${COLOR}"${PRETTY_NAME}操作系统,网卡名配置文件已修改,不用修改!"${END}
|
||||
else
|
||||
sed -ri.bak '/^GRUB_CMDLINE_LINUX=/s@"$@ net.ifnames=0 biosdevname=0"@' /etc/default/grub
|
||||
if lsblk | grep -q efi;then
|
||||
if lsblk | grep -q EFI;then
|
||||
EFI_DIR=`find /boot/efi/ -name "grub.cfg" | awk -F"/" '{print $5}'`
|
||||
grub2-mkconfig -o /boot/efi/EFI/${EFI_DIR}/grub.cfg >& /dev/null
|
||||
else
|
||||
@@ -43,6 +55,15 @@ set_eth(){
|
||||
fi
|
||||
}
|
||||
|
||||
set_eth(){
|
||||
ETH_PREFIX_NAME=`ip addr | awk -F"[ :]" '/^2/{print $3}' | tr -d "[:digit:]"`
|
||||
if [ ${ETH_PREFIX_NAME} == "eth" ];then
|
||||
${COLOR}"${PRETTY_NAME}操作系统,网卡名已修改,不用设置!"${END}
|
||||
else
|
||||
set_uos_eth
|
||||
fi
|
||||
}
|
||||
|
||||
check_ip(){
|
||||
local IP=$1
|
||||
VALID_CHECK=$(echo ${IP}|awk -F. '$1<=255&&$2<=255&&$3<=255&&$4<=255{print "yes"}')
|
||||
@@ -174,7 +195,7 @@ minimal_install(){
|
||||
}
|
||||
|
||||
disable_firewalls(){
|
||||
rpm -q firewalld &> /dev/null && { systemctl disable --now firewalld &> /dev/null; ${COLOR}"${PRETTY_NAME}操作系统,Firewall防火墙已关闭!"${END}; } || ${COLOR}"${PRETTY_NAME}操作系统,iptables防火墙已关闭!"${END}
|
||||
rpm -q firewalld &> /dev/null && { systemctl disable --now firewalld &> /dev/null; ${COLOR}"${PRETTY_NAME}操作系统,Firewall防火墙已关闭!"${END}; } || ${COLOR}"${PRETTY_NAME}操作系统,默认没有安装Firewall防火墙服务,不要设置!"${END}
|
||||
}
|
||||
|
||||
disable_selinux(){
|
||||
@@ -188,13 +209,9 @@ disable_selinux(){
|
||||
}
|
||||
|
||||
set_swap(){
|
||||
if grep -Eqi "noauto" /etc/fstab;then
|
||||
${COLOR}"${PRETTY_NAME}操作系统,swap已被禁用,不用设置!"${END}
|
||||
else
|
||||
sed -ri.bak '/swap/s/(.*)(defaults)(.*)/\1\2,noauto\3/g' /etc/fstab
|
||||
swapoff -a
|
||||
${COLOR}"${PRETTY_NAME}操作系统,禁用swap已设置成功,请重启系统后生效!"${END}
|
||||
fi
|
||||
systemctl mask swap.target &> /dev/null
|
||||
swapoff -a
|
||||
${COLOR}"${PRETTY_NAME}操作系统,禁用swap已设置成功,请重启系统后生效!"${END}
|
||||
}
|
||||
|
||||
set_localtime(){
|
||||
@@ -553,9 +570,9 @@ set_history_env(){
|
||||
disable_restart(){
|
||||
START_STATUS=`systemctl status ctrl-alt-del.target | sed -n '2p' | awk -F"[[:space:]]+|;" '{print $6}'`
|
||||
if [ ${START_STATUS} == "enabled" ];then
|
||||
systemctl disable ctrl-alt-del.target
|
||||
systemctl disable ctrl-alt-del.target &> /dev/null
|
||||
fi
|
||||
systemctl mask ctrl-alt-del.target
|
||||
systemctl mask ctrl-alt-del.target &> /dev/null
|
||||
${COLOR}"${PRETTY_NAME}操作系统,禁用ctrl+alt+del重启功能设置成功!"${END}
|
||||
}
|
||||
|
||||
@@ -563,107 +580,204 @@ menu(){
|
||||
while true;do
|
||||
echo -e "\E[$[RANDOM%7+31];1m"
|
||||
cat <<-EOF
|
||||
***************************************************************
|
||||
* 系统初始化脚本菜单 *
|
||||
* 1.修改网卡名 12.更改SSH端口号 *
|
||||
* 2.设置网络 13.设置系统别名 *
|
||||
* 3.设置主机名 14.设置vimrc配置文件 *
|
||||
* 4.Minimal安装建议安装软件 15.安装邮件服务并配置邮件 *
|
||||
* 5.关闭防火墙 16.设置PS1(请进入选择颜色) *
|
||||
* 6.禁用SELinux 17.设置默认文本编辑器为vim *
|
||||
* 7.禁用SWAP 18.设置history格式 *
|
||||
* 8.设置系统时区 19.禁用ctrl+alt+del重启系统功能 *
|
||||
* 9.优化资源限制参数 20.重启系统 *
|
||||
* 10.优化内核参数 21.关机 *
|
||||
* 11.优化SSH 22.退出 *
|
||||
***************************************************************
|
||||
********************************************************
|
||||
* 系统初始化脚本菜单 *
|
||||
* 1.设置root用户登录 13.更改SSH端口号 *
|
||||
* 2.修改网卡名 14.设置系统别名 *
|
||||
* 3.设置网络 15.设置vimrc配置文件 *
|
||||
* 4.设置主机名 16.安装邮件服务并配置 *
|
||||
* 5.建议安装软件 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-22): " choice
|
||||
read -p "请选择相应的编号(1-23): " choice
|
||||
case ${choice} in
|
||||
1)
|
||||
set_eth
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},不用设置!"${END}
|
||||
else
|
||||
set_root_login
|
||||
fi
|
||||
;;
|
||||
2)
|
||||
set_network
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_eth
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
3)
|
||||
set_hostname
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_network
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
4)
|
||||
minimal_install
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_hostname
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
5)
|
||||
disable_firewalls
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
minimal_install
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
6)
|
||||
disable_selinux
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
disable_firewalls
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
7)
|
||||
set_swap
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
disable_selinux
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
8)
|
||||
set_localtime
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_swap
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
9)
|
||||
set_limits
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_localtime
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
10)
|
||||
set_kernel
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_limits
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
11)
|
||||
optimization_ssh
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_kernel
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
12)
|
||||
set_ssh_port
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
optimization_ssh
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
13)
|
||||
set_alias
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_ssh_port
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
14)
|
||||
set_vimrc
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_alias
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
15)
|
||||
set_mail
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_vimrc
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
16)
|
||||
set_ps1
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_mail
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
17)
|
||||
set_vim_env
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_ps1
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
18)
|
||||
set_history_env
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_vim_env
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
19)
|
||||
disable_restart
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_history_env
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
20)
|
||||
reboot
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
disable_restart
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
21)
|
||||
shutdown -h now
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
shutdown -r now
|
||||
else
|
||||
sudo shutdown -r now
|
||||
fi
|
||||
;;
|
||||
22)
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
shutdown -h now
|
||||
else
|
||||
sudo shutdown -h now
|
||||
fi
|
||||
;;
|
||||
23)
|
||||
break
|
||||
;;
|
||||
*)
|
||||
${COLOR}"输入错误,请输入正确的数字(1-22)!"${END}
|
||||
${COLOR}"输入错误,请输入正确的数字(1-23)!"${END}
|
||||
;;
|
||||
esac
|
||||
done
|
||||
}
|
||||
|
||||
main(){
|
||||
os
|
||||
if [ ${MAIN_NAME} == "UOS" ];then
|
||||
if [ ${MAIN_VERSION_ID} == 20 ];then
|
||||
menu
|
||||
fi
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
menu
|
||||
else
|
||||
${COLOR}"此脚本不支持${PRETTY_NAME}操作系统!"${END}
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录!"${END}
|
||||
menu
|
||||
fi
|
||||
}
|
||||
|
||||
main
|
||||
os
|
||||
if [ ${MAIN_NAME} == "UOS" ];then
|
||||
if [ ${MAIN_VERSION_ID} == 20 ];then
|
||||
main
|
||||
fi
|
||||
else
|
||||
${COLOR}"此脚本不支持${PRETTY_NAME}操作系统!"${END}
|
||||
fi
|
||||
|
||||
@@ -4,11 +4,11 @@
|
||||
#Author: Raymond
|
||||
#QQ: 88563128
|
||||
#MP: Raymond运维
|
||||
#Date: 2025-09-30
|
||||
#Date: 2025-10-20
|
||||
#FileName: reset_v10.sh
|
||||
#URL: https://wx.zsxq.com/group/15555885545422
|
||||
#Description: The reset linux system initialization script supports
|
||||
# “Rocky Linux 8, 9 and 10, AlmaLinux 8, 9 and 10,
|
||||
# “Rocky Linux 8, 9 and 10, Almalinux 8, 9 and 10,
|
||||
# CentOS 7, CentOS Stream 8, 9 and 10,
|
||||
# Ubuntu Server 18.04, 20.04, 22.04 and 24.04 LTS,
|
||||
# Debian 11 , 12 and 13“ operating systems.
|
||||
@@ -16,6 +16,7 @@
|
||||
#**********************************************************************************
|
||||
COLOR="echo -e \\033[01;31m"
|
||||
END='\033[0m'
|
||||
LOGIN_USER=`whoami`
|
||||
|
||||
os(){
|
||||
. /etc/os-release
|
||||
@@ -27,9 +28,34 @@ os(){
|
||||
fi
|
||||
}
|
||||
|
||||
set_root_login(){
|
||||
read -p "请输入密码: " PASSWORD
|
||||
echo ${PASSWORD} |sudo -S sed -ri 's@#(PermitRootLogin )prohibit-password@\1yes@' /etc/ssh/sshd_config
|
||||
if [ ${MAIN_NAME} == "Ubuntu" ];then
|
||||
if [ ${MAIN_VERSION_ID} == 24 ];then
|
||||
sudo systemctl restart ssh
|
||||
fi
|
||||
else
|
||||
sudo systemctl restart sshd
|
||||
fi
|
||||
sudo -S passwd root <<-EOF
|
||||
${PASSWORD}
|
||||
${PASSWORD}
|
||||
EOF
|
||||
if [ ${MAIN_NAME} == "Ubuntu" ];then
|
||||
if [ ${MAIN_VERSION_ID} == 18 -o ${MAIN_VERSION_ID} == 20 -o ${MAIN_VERSION_ID} == 22 ];then
|
||||
${COLOR}"${PRETTY_NAME}操作系统,root用户登录已设置完成,请重新启动系统后生效!"${END}
|
||||
else
|
||||
${COLOR}"${PRETTY_NAME}操作系统,root用户登录已设置完成,请重新登录后生效!"${END}
|
||||
fi
|
||||
else
|
||||
${COLOR}"${PRETTY_NAME}操作系统,root用户登录已设置完成,请重新登录后生效!"${END}
|
||||
fi
|
||||
}
|
||||
|
||||
set_rocky_almalinux_centos_7_8_eth(){
|
||||
sed -ri.bak '/^GRUB_CMDLINE_LINUX=/s@"$@ net.ifnames=0 biosdevname=0"@' /etc/default/grub
|
||||
if lsblk | grep -q efi;then
|
||||
if lsblk | grep -q EFI;then
|
||||
EFI_DIR=`find /boot/efi/ -name "grub.cfg" | awk -F"/" '{print $5}'`
|
||||
grub2-mkconfig -o /boot/efi/EFI/${EFI_DIR}/grub.cfg >& /dev/null
|
||||
else
|
||||
@@ -136,10 +162,15 @@ EOF
|
||||
}
|
||||
|
||||
set_eth(){
|
||||
if [ ${MAIN_NAME} == "Rocky" -o ${MAIN_NAME} == "AlmaLinux" -o ${MAIN_NAME} == "CentOS" ];then
|
||||
set_rocky_almalinux_centos_eth
|
||||
ETH_PREFIX_NAME=`ip addr | awk -F"[ :]" '/^2/{print $3}' | tr -d "[:digit:]"`
|
||||
if [ ${ETH_PREFIX_NAME} == "eth" ];then
|
||||
${COLOR}"${PRETTY_NAME}操作系统,网卡名已修改,不用设置!"${END}
|
||||
else
|
||||
set_ubuntu_debian_eth
|
||||
if [ ${MAIN_NAME} == "Rocky" -o ${MAIN_NAME} == "AlmaLinux" -o ${MAIN_NAME} == "CentOS" ];then
|
||||
set_rocky_almalinux_centos_eth
|
||||
else
|
||||
set_ubuntu_debian_eth
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
@@ -230,7 +261,6 @@ 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}
|
||||
@@ -922,7 +952,7 @@ set_yum_centos_stream_8(){
|
||||
else
|
||||
sed -i -e 's|^baseurl=https://'${OLD_MIRROR}'|baseurl=https://'${MIRROR}'|g' /etc/yum.repos.d/CentOS-*.repo
|
||||
fi
|
||||
${COLOR}"更新镜像源中,请稍等..。。。."${END}
|
||||
${COLOR}"更新镜像源中,请稍等......"${END}
|
||||
dnf clean all &> /dev/null && dnf makecache &> /dev/null
|
||||
${COLOR}"${PRETTY_NAME}操作系统,镜像源设置完成!"${END}
|
||||
}
|
||||
@@ -1716,7 +1746,12 @@ rocky_almalinux_centos_minimal_install(){
|
||||
|
||||
ubuntu_debian_minimal_install(){
|
||||
${COLOR}'开始安装“Minimal安装建议安装软件包”,请稍等......'${END}
|
||||
apt install -y iproute2 ntpdate tcpdump telnet traceroute lrzsz tree iotop unzip zip
|
||||
apt install -y iproute2 tcpdump telnet traceroute lrzsz tree iotop unzip zip
|
||||
if [ ${MAIN_NAME} == "Ubuntu" ];then
|
||||
apt install -y ntpdate
|
||||
else
|
||||
apt install -y ntpsec-ntpdate vim
|
||||
fi
|
||||
${COLOR}"${PRETTY_NAME}操作系统,Minimal安装建议安装软件包已安装完成!"${END}
|
||||
}
|
||||
|
||||
@@ -1730,9 +1765,9 @@ minimal_install(){
|
||||
|
||||
disable_firewalls(){
|
||||
if [ ${MAIN_NAME} == "Rocky" -o ${MAIN_NAME} == "AlmaLinux" -o ${MAIN_NAME} == "CentOS" ];then
|
||||
rpm -q firewalld &> /dev/null && { systemctl disable --now firewalld &> /dev/null; ${COLOR}"${PRETTY_NAME}操作系统,Firewall防火墙已关闭!"${END}; } || ${COLOR}"${PRETTY_NAME}操作系统,iptables防火墙已关闭!"${END}
|
||||
rpm -q firewalld &> /dev/null && { systemctl disable --now firewalld &> /dev/null; ${COLOR}"${PRETTY_NAME}操作系统,Firewall防火墙已关闭!"${END}; } || ${COLOR}"${PRETTY_NAME}操作系统,默认没有安装Firewall防火墙服务,不要设置!"${END}
|
||||
elif [ ${MAIN_NAME} == "Ubuntu" ];then
|
||||
dpkg -s ufw &> /dev/null && { systemctl disable --now ufw &> /dev/null; ${COLOR}"${PRETTY_NAME}操作系统,ufw防火墙已关闭!"${END}; } || ${COLOR}"${PRETTY_NAME}操作系统, 没有ufw防火墙服务,不用关闭!"${END}
|
||||
dpkg -s ufw &> /dev/null && { systemctl disable --now ufw &> /dev/null; ${COLOR}"${PRETTY_NAME}操作系统,ufw防火墙已关闭!"${END}; } || ${COLOR}"${PRETTY_NAME}操作系统, 默认没有ufw防火墙服务,不用关闭!"${END}
|
||||
else
|
||||
${COLOR}"${PRETTY_NAME}操作系统,没有安装防火墙服务,不用关闭!"${END}
|
||||
fi
|
||||
@@ -1753,17 +1788,15 @@ disable_selinux(){
|
||||
}
|
||||
|
||||
set_swap(){
|
||||
if grep -Eqi "noauto" /etc/fstab;then
|
||||
${COLOR}"${PRETTY_NAME}操作系统,swap已被禁用,不用设置!"${END}
|
||||
else
|
||||
if [ ${MAIN_NAME} == "Rocky" -o ${MAIN_NAME} == "AlmaLinux" -o ${MAIN_NAME} == "CentOS" ];then
|
||||
sed -ri.bak '/swap/s/(.*)(defaults)(.*)/\1\2,noauto\3/g' /etc/fstab
|
||||
else
|
||||
sed -ri.bak '/swap/s/(.*)(sw)(.*)/\1\2,noauto\3/g' /etc/fstab
|
||||
fi
|
||||
swapoff -a
|
||||
${COLOR}"${PRETTY_NAME}操作系统,禁用swap已设置成功,请重启系统后生效!"${END}
|
||||
if [ ${MAIN_NAME} == "CentOS" -a ${MAIN_VERSION_ID} == 7 ];then
|
||||
sed -ri.bak 's/.*swap.*/#&/' /etc/fstab
|
||||
elif [ ${MAIN_NAME} == "Ubuntu" -a ${MAIN_VERSION_ID} == 18 ];then
|
||||
sed -ri.bak 's/.*swap.*/#&/' /etc/fstab
|
||||
else
|
||||
systemctl mask swap.target &> /dev/null
|
||||
fi
|
||||
swapoff -a
|
||||
${COLOR}"${PRETTY_NAME}操作系统,禁用swap已设置成功,请重启系统后生效!"${END}
|
||||
}
|
||||
|
||||
set_localtime(){
|
||||
@@ -1896,12 +1929,12 @@ optimization_ssh(){
|
||||
else
|
||||
sed -ri.bak -e 's/^#(UseDNS).*/\1 no/' -e 's/^#(GSSAPIAuthentication).*/\1 no/' /etc/ssh/sshd_config
|
||||
fi
|
||||
if [ ${MAIN_NAME} == "ubuntu" ];then
|
||||
if [ ${MAIN_NAME} == "Ubuntu" ];then
|
||||
if [ ${MAIN_VERSION_ID} == 24 ];then
|
||||
systemctl restart ssh
|
||||
fi
|
||||
sudo systemctl restart ssh
|
||||
fi
|
||||
else
|
||||
systemctl restart sshd
|
||||
sudo systemctl restart sshd
|
||||
fi
|
||||
${COLOR}"${PRETTY_NAME}操作系统,SSH已优化完成!"${END}
|
||||
}
|
||||
@@ -1911,12 +1944,12 @@ set_ssh_port(){
|
||||
disable_firewalls
|
||||
read -p "请输入端口号: " PORT
|
||||
sed -i 's/#Port 22/Port '${PORT}'/' /etc/ssh/sshd_config
|
||||
if [ ${MAIN_NAME} == "ubuntu" ];then
|
||||
if [ ${MAIN_NAME} == "Ubuntu" ];then
|
||||
if [ ${MAIN_VERSION_ID} == 24 ];then
|
||||
systemctl restart ssh
|
||||
fi
|
||||
sudo systemctl restart ssh
|
||||
fi
|
||||
else
|
||||
systemctl restart sshd
|
||||
sudo systemctl restart sshd
|
||||
fi
|
||||
${COLOR}"${PRETTY_NAME}操作系统,更改SSH端口号已完成,请重新登陆后生效!"${END}
|
||||
}
|
||||
@@ -1970,6 +2003,19 @@ set_ubuntu_alias(){
|
||||
alias cdnet="cd /etc/netplan"
|
||||
alias cdapt="cd /etc/apt"
|
||||
EOF
|
||||
if [ ${MAIN_VERSION_ID} == 18 ];then
|
||||
cat >>~/.bashrc <<-EOF
|
||||
alias vie="vim /etc/netplan/01-netcfg.yaml"
|
||||
EOF
|
||||
elif [ ${MAIN_VERSION_ID} == 20 ];then
|
||||
cat >>~/.bashrc <<-EOF
|
||||
alias vie="vim /etc/netplan/00-installer-config.yaml"
|
||||
EOF
|
||||
else
|
||||
cat >>~/.bashrc <<-EOF
|
||||
alias vie="vim /etc/netplan/50-cloud-init.yaml"
|
||||
EOF
|
||||
fi
|
||||
${COLOR}"${PRETTY_NAME}操作系统,系统别名已设置成功,请重新登陆后生效!"${END}
|
||||
}
|
||||
|
||||
@@ -1977,6 +2023,7 @@ set_debian_alias(){
|
||||
cat >>~/.bashrc <<-EOF
|
||||
alias cdnet="cd /etc/network"
|
||||
alias cdapt="cd /etc/apt"
|
||||
alias vie="vim /etc/network/interfaces"
|
||||
EOF
|
||||
${COLOR}"${PRETTY_NAME}操作系统,系统别名已设置成功,请重新登陆后生效!"${END}
|
||||
}
|
||||
@@ -1990,15 +2037,15 @@ set_alias(){
|
||||
set_rocky_almalinux_centos_alias
|
||||
fi
|
||||
elif [ ${MAIN_NAME} == "Ubuntu" ];then
|
||||
if grep -Eqi "(.*cdnet|.*cdapt)" ~/.bashrc;then
|
||||
sed -i -e '/.*cdnet/d' -e '/.*cdapt/d' ~/.bashrc
|
||||
if grep -Eqi "(.*cdnet|.*cdapt|.*vie)" ~/.bashrc;then
|
||||
sed -i -e '/.*cdnet/d' -e '/.*cdapt/d' -e '/.*vie/d' ~/.bashrc
|
||||
set_ubuntu_alias
|
||||
else
|
||||
set_ubuntu_alias
|
||||
fi
|
||||
else
|
||||
if grep -Eqi "(.*cdnet|.*cdapt)" ~/.bashrc;then
|
||||
sed -i -e '/.*cdnet/d' -e '/.*cdapt/d' ~/.bashrc
|
||||
if grep -Eqi "(.*cdnet|.*cdapt|.*vie)" ~/.bashrc;then
|
||||
sed -i -e '/.*cdnet/d' -e '/.*cdapt/d' -e '/.*vie/d' ~/.bashrc
|
||||
set_debian_alias
|
||||
else
|
||||
set_debian_alias
|
||||
@@ -2209,35 +2256,14 @@ set_history_env(){
|
||||
disable_restart(){
|
||||
START_STATUS=`systemctl status ctrl-alt-del.target | sed -n '2p' | awk -F"[[:space:]]+|;" '{print $6}'`
|
||||
if [ ${START_STATUS} == "enabled" ];then
|
||||
systemctl disable ctrl-alt-del.target
|
||||
systemctl disable ctrl-alt-del.target &> /dev/null
|
||||
fi
|
||||
systemctl mask ctrl-alt-del.target
|
||||
systemctl mask ctrl-alt-del.target &> /dev/null
|
||||
${COLOR}"${PRETTY_NAME}操作系统,禁用ctrl+alt+del重启功能设置成功!"${END}
|
||||
}
|
||||
|
||||
set_ubuntu_debian_root_login(){
|
||||
if [ ${MAIN_NAME} == "Ubuntu" -o ${MAIN_NAME} == "Debian" ];then
|
||||
read -p "请输入密码: " PASSWORD
|
||||
echo ${PASSWORD} |sudo -S sed -ri 's@#(PermitRootLogin )prohibit-password@\1yes@' /etc/ssh/sshd_config
|
||||
if [ ${NAME} == "Ubuntu" ];then
|
||||
if [ ${MAIN_VERSION_ID} == 24 ];then
|
||||
sudo systemctl restart ssh
|
||||
fi
|
||||
else
|
||||
sudo systemctl restart sshd
|
||||
fi
|
||||
sudo -S passwd root <<-EOF
|
||||
${PASSWORD}
|
||||
${PASSWORD}
|
||||
EOF
|
||||
${COLOR}"${PRETTY_NAME}操作系统,root用户登录已设置完成,请重新登录后生效!"${END}
|
||||
else
|
||||
${COLOR}"${PRETTY_NAME}操作系统,系统不可用!"${END}
|
||||
fi
|
||||
}
|
||||
|
||||
ubuntu_remove(){
|
||||
if [ ${MAIN_NAME}} == "Ubuntu" ];then
|
||||
if [ ${MAIN_NAME} == "Ubuntu" ];then
|
||||
if [ ${MAIN_VERSION_ID} == 18 ];then
|
||||
apt -y purge ufw lxd lxd-client lxcfs liblxc-common
|
||||
else
|
||||
@@ -2250,28 +2276,29 @@ ubuntu_remove(){
|
||||
}
|
||||
|
||||
ubuntu_20_22_24_remove_snap(){
|
||||
dpkg -s snapd &> /dev/null
|
||||
if [ $? -eq 1 ];then
|
||||
${COLOR}"${PRETTY_NAME}操作系统,snap已卸载!"${END}
|
||||
else
|
||||
systemctl disable snapd.service && systemctl disable snapd.socket && systemctl disable snapd.seeded.service
|
||||
sum=$(snap list | awk 'NR>=2{print $1}' | wc -l)
|
||||
while [ $sum -ne 0 ];do
|
||||
for p in $(snap list | awk 'NR>=2{print $1}'); do
|
||||
snap remove --purge $p
|
||||
done
|
||||
dpkg -s snapd &> /dev/null || { ${COLOR}"snap已卸载!"${END};exit; }
|
||||
systemctl disable snapd.service && systemctl disable snapd.socket && systemctl disable snapd.seeded.service
|
||||
if [ ${MAIN_NAME} == "Ubuntu" ];then
|
||||
if [ ${MAIN_VERSION_ID} == 20 -o ${MAIN_VERSION_ID} == 22 ];then
|
||||
snap remove --purge lxd
|
||||
sum=$(snap list | awk 'NR>=2{print $1}' | wc -l)
|
||||
done
|
||||
apt -y autoremove --purge snapd
|
||||
rm -rf ~/snap && sudo rm -rf /snap && rm -rf /var/snap && rm -rf /var/lib/snapd && rm -rf /var/cache/snapd
|
||||
cat > /etc/apt/preferences.d/no-snapd.pref << EOF
|
||||
while [ $sum -ne 0 ];do
|
||||
for p in $(snap list | awk 'NR>=2{print $1}'); do
|
||||
snap remove --purge $p
|
||||
done
|
||||
sum=$(snap list | awk 'NR>=2{print $1}' | wc -l)
|
||||
done
|
||||
fi
|
||||
fi
|
||||
apt -y autoremove --purge snapd
|
||||
rm -rf ~/snap && sudo rm -rf /snap && rm -rf /var/snap && rm -rf /var/lib/snapd && rm -rf /var/cache/snapd
|
||||
cat > /etc/apt/preferences.d/no-snapd.pref << EOF
|
||||
Package: snapd
|
||||
Pin: release a=*
|
||||
Pin-Priority: -10
|
||||
EOF
|
||||
apt update
|
||||
${COLOR}"${PRETTY_NAME}操作系统,snap卸载完成!"${END}
|
||||
fi
|
||||
apt update
|
||||
${COLOR}"${PRETTY_NAME}操作系统,snap卸载完成!"${END}
|
||||
}
|
||||
|
||||
ubuntu_remove_snap(){
|
||||
@@ -2290,101 +2317,201 @@ menu(){
|
||||
while true;do
|
||||
echo -e "\E[$[RANDOM%7+31];1m"
|
||||
cat <<-EOF
|
||||
*****************************************************************
|
||||
* 系统初始化脚本菜单 *
|
||||
* 1.修改网卡名 14.设置系统别名 *
|
||||
* 2.设置网络 15.设置vimrc配置文件 *
|
||||
* 3.设置主机名 16.安装邮件服务并配置邮件 *
|
||||
* 4.设置镜像仓库 17.设置PS1(请进入选择颜色) *
|
||||
* 5.Minimal安装建议安装软件 18.设置默认文本编辑器为vim *
|
||||
* 6.关闭防火墙 19.设置history格式 *
|
||||
* 7.禁用SELinux 20.禁用ctrl+alt+del重启系统功能 *
|
||||
* 8.禁用SWAP 21.Ubuntu和Debian设置root用户登录 *
|
||||
* 9.设置系统时区 22.Ubuntu卸载无用软件包 *
|
||||
* 10.优化资源限制参数 23.Ubuntu卸载snap *
|
||||
* 11.优化内核参数 24.重启系统 *
|
||||
* 12.优化SSH 25.关机 *
|
||||
* 13.更改SSH端口号 26.退出 *
|
||||
*****************************************************************
|
||||
********************************************************
|
||||
* 系统初始化脚本菜单 *
|
||||
* 1.设置root用户登录 14.更改SSH端口号 *
|
||||
* 2.修改网卡名 15.设置系统别名 *
|
||||
* 3.设置网络 16.设置vimrc配置文件 *
|
||||
* 4.设置主机名 17.安装邮件服务并配置 *
|
||||
* 5.设置镜像仓库 18.设置PS1(请进入选择颜色) *
|
||||
* 6.建议安装软件 19.设置默认文本编辑器为vim *
|
||||
* 7.关闭防火墙 20.设置history格式 *
|
||||
* 8.禁用SELinux 21.禁用ctrl+alt+del重启系统功能 *
|
||||
* 9.禁用SWAP 22.Ubuntu卸载无用软件包 *
|
||||
* 10.设置系统时区 23.Ubuntu卸载snap *
|
||||
* 11.优化资源限制参数 24.重启系统 *
|
||||
* 12.优化内核参数 25.关机 *
|
||||
* 13.优化SSH 26.退出 *
|
||||
********************************************************
|
||||
EOF
|
||||
echo -e '\E[0m'
|
||||
|
||||
read -p "请选择相应的编号(1-26): " choice
|
||||
case ${choice} in
|
||||
1)
|
||||
set_eth
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},不用设置!"${END}
|
||||
else
|
||||
set_root_login
|
||||
fi
|
||||
;;
|
||||
2)
|
||||
set_network
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_eth
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
3)
|
||||
set_hostname
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_network
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
4)
|
||||
set_mirror_repository
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_hostname
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
5)
|
||||
minimal_install
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_mirror_repository
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
6)
|
||||
disable_firewalls
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
minimal_install
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
7)
|
||||
disable_selinux
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
disable_firewalls
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
8)
|
||||
set_swap
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
disable_selinux
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
9)
|
||||
set_localtime
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_swap
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
10)
|
||||
set_limits
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_localtime
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
11)
|
||||
set_kernel
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_limits
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
12)
|
||||
optimization_ssh
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_kernel
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
13)
|
||||
set_ssh_port
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
optimization_ssh
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
14)
|
||||
set_alias
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_ssh_port
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
15)
|
||||
set_vimrc
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_alias
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
16)
|
||||
set_mail
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_vimrc
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
17)
|
||||
set_ps1
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_mail
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
18)
|
||||
set_vim_env
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_ps1
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
19)
|
||||
set_history_env
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_vim_env
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
20)
|
||||
disable_restart
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
set_history_env
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
21)
|
||||
set_ubuntu_debian_root_login
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
disable_restart
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
22)
|
||||
ubuntu_remove
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
ubuntu_remove
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
23)
|
||||
ubuntu_remove_snap
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
ubuntu_remove_snap
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此操作!"${END}
|
||||
fi
|
||||
;;
|
||||
24)
|
||||
sudo shutdown -r now
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
shutdown -r now
|
||||
else
|
||||
sudo shutdown -r now
|
||||
fi
|
||||
;;
|
||||
25)
|
||||
sudo shutdown -h now
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
shutdown -h now
|
||||
else
|
||||
sudo shutdown -h now
|
||||
fi
|
||||
;;
|
||||
26)
|
||||
break
|
||||
@@ -2397,30 +2524,36 @@ EOF
|
||||
}
|
||||
|
||||
main(){
|
||||
os
|
||||
if [ ${MAIN_NAME} == "Rocky" ];then
|
||||
if [ ${MAIN_VERSION_ID} == 8 -o ${MAIN_VERSION_ID} == 9 -o ${MAIN_VERSION_ID} == 10 ];then
|
||||
menu
|
||||
fi
|
||||
elif [ ${MAIN_NAME} == "AlmaLinux" ];then
|
||||
if [ ${MAIN_VERSION_ID} == 8 -o ${MAIN_VERSION_ID} == 9 -o ${MAIN_VERSION_ID} == 10 ];then
|
||||
menu
|
||||
fi
|
||||
elif [ ${MAIN_NAME} == "CentOS" ];then
|
||||
if [ ${MAIN_VERSION_ID} == 7 -o ${MAIN_VERSION_ID} == 8 -o ${MAIN_VERSION_ID} == 9 -o ${MAIN_VERSION_ID} == 10 ];then
|
||||
menu
|
||||
fi
|
||||
elif [ ${MAIN_NAME} == "Ubuntu" ];then
|
||||
if [ ${MAIN_VERSION_ID} == 18 -o ${MAIN_VERSION_ID} == 20 -o ${MAIN_VERSION_ID} == 22 -o ${MAIN_VERSION_ID} == 24 ];then
|
||||
menu
|
||||
fi
|
||||
elif [ ${MAIN_NAME} == 'Debian' ];then
|
||||
if [ ${MAIN_VERSION_ID} == 11 -o ${MAIN_VERSION_ID} == 12 -o ${MAIN_VERSION_ID} == 13 ];then
|
||||
menu
|
||||
fi
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
menu
|
||||
else
|
||||
${COLOR}"此脚本不支持${PRETTY_NAME}操作系统!"${END}
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录!"${END}
|
||||
menu
|
||||
fi
|
||||
}
|
||||
|
||||
main
|
||||
os
|
||||
if [ ${MAIN_NAME} == "Rocky" ];then
|
||||
if [ ${MAIN_VERSION_ID} == 8 -o ${MAIN_VERSION_ID} == 9 -o ${MAIN_VERSION_ID} == 10 ];then
|
||||
main
|
||||
fi
|
||||
elif [ ${MAIN_NAME} == "AlmaLinux" ];then
|
||||
if [ ${MAIN_VERSION_ID} == 8 -o ${MAIN_VERSION_ID} == 9 -o ${MAIN_VERSION_ID} == 10 ];then
|
||||
main
|
||||
fi
|
||||
elif [ ${MAIN_NAME} == "CentOS" ];then
|
||||
if [ ${MAIN_VERSION_ID} == 7 -o ${MAIN_VERSION_ID} == 8 -o ${MAIN_VERSION_ID} == 9 -o ${MAIN_VERSION_ID} == 10 ];then
|
||||
main
|
||||
fi
|
||||
elif [ ${MAIN_NAME} == "Ubuntu" ];then
|
||||
if [ ${MAIN_VERSION_ID} == 18 -o ${MAIN_VERSION_ID} == 20 -o ${MAIN_VERSION_ID} == 22 -o ${MAIN_VERSION_ID} == 24 ];then
|
||||
main
|
||||
fi
|
||||
elif [ ${MAIN_NAME} == 'Debian' ];then
|
||||
if [ ${MAIN_VERSION_ID} == 11 -o ${MAIN_VERSION_ID} == 12 -o ${MAIN_VERSION_ID} == 13 ];then
|
||||
main
|
||||
fi
|
||||
else
|
||||
${COLOR}"此脚本不支持${PRETTY_NAME}操作系统!"${END}
|
||||
fi
|
||||
|
||||
|
||||
@@ -1,43 +1,69 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
#***************************************************************************************************
|
||||
#**********************************************************************************
|
||||
#Author: Raymond
|
||||
#QQ: 88563128
|
||||
#Date: 2024-05-06
|
||||
#MP: Raymond运维
|
||||
#Date: 2025-10-19
|
||||
#FileName: remove_snap.sh
|
||||
#MIRROR: raymond.blog.csdn.net
|
||||
#Description: remove_snap for Ubuntu 20.04/22.04
|
||||
#Copyright (C): 2024 All rights reserved
|
||||
#***************************************************************************************************
|
||||
#URL: https://wx.zsxq.com/group/15555885545422
|
||||
#Description: The remove snap script supports
|
||||
# "Ubuntu Server 20.04, 22.04 and 24.04 LTS" operating systems.
|
||||
#Copyright (C): 2025 All rights reserved
|
||||
#**********************************************************************************
|
||||
COLOR="echo -e \\033[01;31m"
|
||||
END='\033[0m'
|
||||
LOGIN_USER=`whoami`
|
||||
|
||||
os(){
|
||||
. /etc/os-release
|
||||
MAIN_NAME=`sed -rn '/^NAME=/s@.*="([[:alpha:]]+).*"$@\1@p' /etc/os-release`
|
||||
if [ ${MAIN_NAME} == "Kylin" ];then
|
||||
MAIN_VERSION_ID=`sed -rn '/^VERSION_ID=/s@.*="([[:alpha:]]+)(.*)"$@\2@p' /etc/os-release`
|
||||
else
|
||||
MAIN_VERSION_ID=`sed -rn '/^VERSION_ID=/s@.*="?([0-9]+)\.?.*"?@\1@p' /etc/os-release`
|
||||
fi
|
||||
}
|
||||
|
||||
ubuntu_remove_snap(){
|
||||
dpkg -s snapd &> /dev/null || { ${COLOR}"snap已卸载!"${END};exit; }
|
||||
systemctl disable snapd.service && systemctl disable snapd.socket && systemctl disable snapd.seeded.service
|
||||
|
||||
sum=$(snap list | awk 'NR>=2{print $1}' | wc -l)
|
||||
while [ $sum -ne 0 ];do
|
||||
for p in $(snap list | awk 'NR>=2{print $1}'); do
|
||||
snap remove --purge $p
|
||||
done
|
||||
sum=$(snap list | awk 'NR>=2{print $1}' | wc -l)
|
||||
done
|
||||
|
||||
if [ ${MAIN_NAME} == "Ubuntu" ];then
|
||||
if [ ${MAIN_VERSION_ID} == 20 -o ${MAIN_VERSION_ID} == 22 ];then
|
||||
snap remove --purge lxd
|
||||
sum=$(snap list | awk 'NR>=2{print $1}' | wc -l)
|
||||
while [ $sum -ne 0 ];do
|
||||
for p in $(snap list | awk 'NR>=2{print $1}'); do
|
||||
snap remove --purge $p
|
||||
done
|
||||
sum=$(snap list | awk 'NR>=2{print $1}' | wc -l)
|
||||
done
|
||||
fi
|
||||
fi
|
||||
apt -y autoremove --purge snapd
|
||||
|
||||
rm -rf ~/snap && sudo rm -rf /snap && rm -rf /var/snap && rm -rf /var/lib/snapd && rm -rf /var/cache/snapd
|
||||
|
||||
cat > /etc/apt/preferences.d/no-snapd.pref << EOF
|
||||
Package: snapd
|
||||
Pin: release a=*
|
||||
Pin-Priority: -10
|
||||
EOF
|
||||
apt update
|
||||
${COLOR}"${PRETTY_NAME}操作系统,snap卸载完成!"${END}
|
||||
}
|
||||
|
||||
main(){
|
||||
ubuntu_remove_snap
|
||||
if [ ${LOGIN_USER} == "root" ];then
|
||||
ubuntu_remove_snap
|
||||
else
|
||||
${COLOR}"当然登录用户是${LOGIN_USER},请使用root用户登录或设置root用户登录后再执行此脚本!"${END}
|
||||
fi
|
||||
}
|
||||
|
||||
main
|
||||
os
|
||||
if [ ${MAIN_NAME} == "Ubuntu" ];then
|
||||
if [ ${MAIN_VERSION_ID} == 20 -o ${MAIN_VERSION_ID} == 22 -o ${MAIN_VERSION_ID} == 24 ];then
|
||||
main
|
||||
fi
|
||||
else
|
||||
${COLOR}"此脚本不支持${PRETTY_NAME}操作系统!"${END}
|
||||
fi
|
||||
|
||||
Reference in New Issue
Block a user