众所周知,甲骨文有个Free Tier免费机的福利。不过从今年开始,如果这个免费机一直不怎么用的话,是有概率被甲骨文回收的(会收到来自甲骨文的邮件通知)

因此涌现出了很多的保活脚本,基本上都是周期性地消耗一下CPU、内存或是网络调用

在此分享一个非常简约,只有几行的保活bash脚本:

#!/bin/bash

screen -S “dd” dd if=/dev/zero of=/dev/null

sleep 2

pid=$(ps -ef | grep “dd if=/dev/zero of=/dev/null” | grep -v “grep” | grep -v “SCREEN” | awk ‘{print $2}’)

screen -S “limit” cpulimit -l 25 -p $pid

这个脚本仅需用到screen、dd以及一个开源进程限制程序cpulimit,最后一行的 -l 25指的是限制CPU使用率不超过25%,可以自行酌情修改

      安装方式

      对于Debian/Ubuntu用户,可以直接使用apt install cpulimit screen进行安装

      对于Centos用户,可在安装完epel-release后使用yum install cpulimit screen进行安装

      对于Alpine用户,可以直接使用apk add cpulimit screen进行安装

脚本使用方法

下载到本地

wget https://tian-shen.me/file/cpu_limit.sh

赋予执行权限

chmod +x cpu_limit.sh

运行

./cpu_limit.sh

运行后会显示黑屏,此时请按Ctrl + A + D以退出第一个screen,两秒钟后会自动进入第二个screen。如果一切正常,应该如下图所示输出 “process xxx detected”

此时再按一次Ctrl + A + D,就可以了,这样一来会一直有个无意义的dd进程在后台运行(并且被限制不能使用超过25%的CPU)

结束进程方法

如果需要结束这个脚本的后台运行,首先输入

screen -r limit

然后按Ctrl + C关闭这个screen;然后再

screen -r dd

也是Ctrl + C关闭这个screen,就可以了