#!/bin/bash
# 设置root密码为环境变量
export ROOT_PASSWORD="your_root_password_here"
# 检查是否以普通用户运行
if [ "$EUID" -eq 0 ]; then
echo "不要以root权限直接运行此脚本"
exit
fi
# 打印当前的max_user_instances值
echo "当前的max_user_instances值:"
sudo -S cat /proc/sys/fs/inotify/max_user_instances <<< "$ROOT_PASSWORD"
# 备份sysctl.conf文件(如果尚未备份)
BACKUP_FILE="/etc/sysctl.conf.bak"
if [ ! -f $BACKUP_FILE ]; then
echo "备份sysctl.conf到$BACKUP_FILE"
echo "$ROOT_PASSWORD" | sudo -S cp /etc/sysctl.conf $BACKUP_FILE
fi
# 添加新的配置到sysctl.conf中
echo "更新sysctl.conf中的设置..."
{
echo 'fs.inotify.max_user_watches = 1638400'
echo 'fs.inotify.max_user_instances = 1638400'
} | sudo -S tee -a /etc/sysctl.conf <<< "$ROOT_PASSWORD"
# 应用新的配置
echo "使新的配置生效..."
echo "$ROOT_PASSWORD" | sudo -S sysctl -p
# 验证更改
NEW_VALUE=$(sudo -S cat /proc/sys/fs/inotify/max_user_instances <<< "$ROOT_PASSWORD")
echo "新的max_user_instances值:$NEW_VALUE"
if [ "$NEW_VALUE" -eq 1638400 ]; then
echo "设置成功!"
else
echo "警告:设置可能未成功应用。"
fi
# 清除环境变量
unset ROOT_PASSWORD