添加交互式设置交换倾向(swappiness)功能,并根据用户输入调整系统配置
This commit is contained in:
+24
-4
@@ -13,6 +13,7 @@
|
|||||||
NEW_SSH_PORT="4399" # SSH新端口号(默认值)
|
NEW_SSH_PORT="4399" # SSH新端口号(默认值)
|
||||||
TIMEZONE="Asia/Shanghai" # 时区设置
|
TIMEZONE="Asia/Shanghai" # 时区设置
|
||||||
SWAP_SIZE=2048 # 交换分区大小(MB)
|
SWAP_SIZE=2048 # 交换分区大小(MB)
|
||||||
|
SWAPPINESS=10 # 交换倾向默认值(0-100,越大越倾向使用交换)
|
||||||
# ===========================================
|
# ===========================================
|
||||||
|
|
||||||
# 颜色定义
|
# 颜色定义
|
||||||
@@ -126,6 +127,23 @@ else
|
|||||||
echo -e "${GREEN}保持主机名不变${NC}"
|
echo -e "${GREEN}保持主机名不变${NC}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# 询问交换倾向(swappiness)
|
||||||
|
echo -e "${YELLOW}4. 设置交换倾向 swappiness (0-100)?${NC}"
|
||||||
|
echo -e "${YELLOW} 值越大越倾向使用交换(swap),越小越倾向保留物理内存${NC}"
|
||||||
|
while true; do
|
||||||
|
read -p "请输入 swappiness 值 (0-100, 默认${SWAPPINESS}): " INPUT_SWAPPINESS
|
||||||
|
# 用户直接回车则使用默认值
|
||||||
|
INPUT_SWAPPINESS=${INPUT_SWAPPINESS:-$SWAPPINESS}
|
||||||
|
# 校验:必须为0-100之间的整数
|
||||||
|
if [[ "$INPUT_SWAPPINESS" =~ ^[0-9]+$ ]] && [ "$INPUT_SWAPPINESS" -ge 0 ] && [ "$INPUT_SWAPPINESS" -le 100 ]; then
|
||||||
|
SWAPPINESS=$INPUT_SWAPPINESS
|
||||||
|
echo -e "${GREEN}swappiness 将设置为: ${SWAPPINESS}${NC}"
|
||||||
|
break
|
||||||
|
else
|
||||||
|
echo -e "${RED}无效的输入,请输入 0 到 100 之间的整数${NC}"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
echo -e "${BLUE}交互式设置完成${NC}"
|
echo -e "${BLUE}交互式设置完成${NC}"
|
||||||
echo ""
|
echo ""
|
||||||
|
|
||||||
@@ -672,15 +690,17 @@ else
|
|||||||
log "${GREEN}已添加到fstab,开机将自动挂载${NC}"
|
log "${GREEN}已添加到fstab,开机将自动挂载${NC}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# 调整swappiness参数(控制系统对交换空间的使用倾向)
|
|
||||||
echo "vm.swappiness=10" > /etc/sysctl.d/99-swappiness.conf
|
|
||||||
sysctl -p /etc/sysctl.d/99-swappiness.conf
|
|
||||||
|
|
||||||
# 显示交换空间信息
|
# 显示交换空间信息
|
||||||
log "${GREEN}交换分区配置完成,当前内存和交换空间状态:${NC}"
|
log "${GREEN}交换分区配置完成,当前内存和交换空间状态:${NC}"
|
||||||
free -h | tee -a $LOG_FILE
|
free -h | tee -a $LOG_FILE
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# 调整swappiness参数(控制系统对交换空间的使用倾向)
|
||||||
|
# 放在 if/else 之外:无论是否重建交换文件,都按用户设置应用 swappiness
|
||||||
|
echo "vm.swappiness=${SWAPPINESS}" > /etc/sysctl.d/99-swappiness.conf
|
||||||
|
sysctl -p /etc/sysctl.d/99-swappiness.conf
|
||||||
|
log "${GREEN}swappiness 已设置为: ${SWAPPINESS}${NC}"
|
||||||
|
|
||||||
# ===========================================
|
# ===========================================
|
||||||
# 9. Fail2ban安装和配置
|
# 9. Fail2ban安装和配置
|
||||||
# ===========================================
|
# ===========================================
|
||||||
|
|||||||
Reference in New Issue
Block a user