更新 scripts/system_optimize.sh

This commit is contained in:
joy 2025-07-18 18:35:42 +08:00
parent 3c81d867b2
commit dc9eb3d19e
1 changed files with 26 additions and 26 deletions

View File

@ -25,30 +25,30 @@ log_warning() {
# 安装系统常用工具
install_sysadmin_tools() {
log_info "[1]-安装系统常用工具包..."
log_info "[01]-安装系统常用工具包"
apt update &>/dev/null;
apt install net-tools ipmitool lrzsz iotop iftop zip unzip jq build-essential util-linux-extra -y &>/dev/null;
log_info "[1]-常用工具包安装完成!"
log_info "[01]-常用工具包安装完成!"
}
# 禁用apt的定期更新
disable_apt_periodic_updates() {
log_info "[2]-禁用Apt的定期更新..."
log_info "[02]-禁用 Apt 定期更新功能"
# 修改10periodic配置文件将所有的1改为0禁用自动更新检查
sed -i 's/1/0/g' /etc/apt/apt.conf.d/10periodic &>/dev/null;
# 修改20auto-upgrades配置文件将所有的1改为0禁用自动升级
sed -i 's/1/0/g' /etc/apt/apt.conf.d/20auto-upgrades &>/dev/null;
log_info "[2]-Apt定期更新已禁用!"
log_info "[02]-Apt 定期更新功能已禁用!"
}
# 设置系统时区为上海
set_timezone_to_shanghai() {
log_info "[3]-设置系统时区为上海..."
log_info "[03]-设置系统时区为上海时区"
# 使用timedatectl命令设置系统时区为Asia/Shanghai
timedatectl set-timezone Asia/Shanghai
log_info "[3]-系统时区已设为上海"
log_info "[03]-系统时区已设为上海时区"
}
@ -56,17 +56,17 @@ set_timezone_to_shanghai() {
# 同步硬件时钟和系统时钟
synchronize_hardware_clock() {
log_info "[4]-同步系统硬件时钟..."
log_info "[04]-执行系统内核锁定操作中"
# 使用hwclock命令将系统时间同步到硬件时钟
hwclock --systohc
log_info "[4]-系统硬件时钟已同步"
log_info "[04]-系统内核锁定操作已完成"
}
#关闭休眠
off_sleep(){
log_info "[5]-关闭系统休眠..."
log_info "[05]-执行关闭系统休眠操作中"
systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target &>> /tmp/2.log
log_info "[5]-系统休眠已关闭!"
log_info "[05]-系统休眠功能已关闭完成"
}
@ -82,7 +82,7 @@ off_sleep(){
#锁定版本号
lock_current_kernel(){
log_info "[6]-锁定系统内核..."
log_info "[06]-执行系统内核锁定操作中"
# 自动锁定当前运行的内核版本
CURRENT_KERNEL=$(uname -r)
GRUB_FILE="/etc/default/grub"
@ -93,9 +93,9 @@ lock_current_kernel(){
cp -f "$GRUB_FILE" "${GRUB_FILE}.bak"
sed -i '/GRUB_DEFAULT=/c\GRUB_DEFAULT="Advanced options for Ubuntu>Ubuntu, with Linux '${CURRENT_KERNEL}'"' "$GRUB_FILE"
update-grub &>/dev/null
log_info "[6]-系统内核已锁定!"
log_info "[06]-系统内核锁定操作已完成"
else
log_info "[6]-系统内核已锁定!"
log_info "[06]-系系统内核锁定操作已完成"
fi
}
@ -104,20 +104,20 @@ lock_current_kernel(){
# 自动扩展根逻辑卷至最大可用空间
extend_root_volume() {
log_info "[7]-根分区扩容..."
log_info "[07]-执行根分区扩容操作进行中"
local root_lv=$(df / | tail -1 | awk '{print $1}')
# 检查是否为LVM逻辑卷
if ! echo "$root_lv" | grep -q '/dev/mapper/'; then
echo "[7]-错误当前根分区不是LVM逻辑卷" >&2
echo "[07]-错误当前根分区不是LVM逻辑卷" >&2
return 1
fi
# 扩展逻辑卷并调整文件系统
#log_info "扩展逻辑卷: $root_lv"
if lvresize --extents +100%FREE --resizefs "$root_lv" &>/dev/null; then
root_lvsize=$(df -h / | awk 'NR==2 {print "磁盘磁盘根分区大小:",$2}')
log_info "[7]-根分区扩容成功!"
log_info "[07]-根分区扩容操作已成功"
else
log_info "[7]-逻辑卷扩展失败!"
log_info "[07]]-根分区扩容操作失败"
return 1
fi
}
@ -126,7 +126,7 @@ extend_root_volume() {
# 禁止显卡驱动
disable_nouveau_driver() {
log_info "[8]-禁止nouveau显卡驱动..."
log_info "[08]-禁止 nouveau 显卡驱动进行中"
# 创建blacklist-nouveau.conf文件添加禁止nouveau驱动的配置
cat > /etc/modprobe.d/blacklist-nouveau.conf << EOF
@ -145,12 +145,12 @@ EOF
# 更新initramfs使驱动禁用配置生效
update-initramfs -u &> /dev/null
log_info "[8]-nouveau显卡驱动已被禁止"
log_info "[08]-nouveau 显卡驱动已被禁止"
}
# 更改GRUB配置并更新
update_grub_configuration() {
log_info "[9]-配置GRUB网络接口命名..."
log_info "[09]-配置 GRUB 网络接口命名中"
# 检查GRUB配置中是否已存在所需的网络接口命名设置
if ! grep -q 'GRUB_CMDLINE_LINUX_DEFAULT="net.ifnames=1 biosdevname=0"' /etc/default/grub; then
@ -162,9 +162,9 @@ update_grub_configuration() {
# 再次检查配置是否已成功添加
if grep -q 'GRUB_CMDLINE_LINUX_DEFAULT="net.ifnames=1 biosdevname=0"' /etc/default/grub; then
log_info "[9]-配置GRUB网络接口命名已完成!"
log_info "[09]-GRUB 网络接口命名已配置"
else
log_error "[9]-配置GRUB网络接口命名失败!"
log_error "[09]-GRUB 网络接口命名配置失败"
exit 1
fi
@ -175,20 +175,20 @@ update_grub_configuration() {
#修改主机名
rename_hostname(){
log_info "[9]-修改主机名称..."
log_info "[09]-执行修改主机名称操作中"
IP=$(ip addr | awk '/^[0-9]+: / {}; /inet.*global/ {print gensub(/(.*)\/(.*)/, "\\1", "g", $2)}' | grep `ip route | grep default | awk '{print $3}' | awk -F. '{print $1"."$2}' | head -1` | head -1 | sed 's/\./-/g')
hostnamectl set-hostname ${IP}
log_info "[9]-主机名已修改!"
log_info "[09]-主机名称修改操作已完成"
}
#清理历史命令
clear_history(){
log_info "[10]-开始历史命令..."
log_info "[10]-执行清理历史命令操作中"
> ~/.bash_history
history -c
log_info "[10]-历史命令已清理!"
log_info "[10]-历史命令清理操作已完成"
}