amazon-web-services - 停止 Cron Job 以关闭重启无限循环
问题描述
我创建了一个脚本来在 Cpu 利用率达到 90% 后重新启动系统。但出于某些测试目的,我将 Cpu Utilization 的 Vlaue 更改为 0.7%。并且脚本被编程为运行系统重新启动。由于该服务器从未在线,它进入了无限重启循环。
我的脚本:
#!/bin/bash
dstat| awk '{ if (int($1)>0.7) {
i=i+1; {
print i, $1
}
}
if (int($1)>0.7) {
j=j+1;
}
if (j>2) {
print "system reboot";
cmd="sudo reboot";
system(cmd)
}
}'
N 该脚本被编程为使用 crontab 在重新启动时运行:
@reboot /bin/bash /ubuntu/home/reboot.sh
所以我无法使用 SSH 登录。因为系统是不断重启的。我的服务器是aws ec2 insatnce
我尝试通过 aws 控制台传递用户数据。
sudo apt-get purge dstat
cd /ubuntu/home && sudo rm reboot.sh
sudo /etc/init.d/cron stop
但它不起作用。
因此,任何让我的实例恢复的方式都将受到高度赞赏。
解决方案
- 停止实例
- 分离根卷
- 将其附加到同一可用区中已运行的另一个实例
- 安装在
/mnt
- 通过编辑文件来修复错误配置,您应该在
/mnt/home/ubuntu/reboot.sh
- 卸载
- 分离
- 重新附加到原始实例
- 启动实例