diff options
author | Charadon <dev@iotib.net> | 2022-09-14 07:21:28 +0100 |
---|---|---|
committer | bedlam <dave@slackbuilds.org> | 2022-09-14 07:21:28 +0100 |
commit | 7cf1544a436f7b369914c98b94f21fb74c73bf1e (patch) | |
tree | 83460f16d10e65891569dced244fc66f5954ab48 /system/earlyoom/rc.earlyoom | |
parent | fdeee1781c88f9f2d79bcc7c23d189e8794a5a25 (diff) |
system/earlyoom: Added (The Early OOM Daemon)
Signed-off-by: bedlam <dave@slackbuilds.org>
Diffstat (limited to 'system/earlyoom/rc.earlyoom')
-rw-r--r-- | system/earlyoom/rc.earlyoom | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/system/earlyoom/rc.earlyoom b/system/earlyoom/rc.earlyoom new file mode 100644 index 0000000000000..277050fefdfd4 --- /dev/null +++ b/system/earlyoom/rc.earlyoom @@ -0,0 +1,70 @@ +#!/bin/sh +set -eu + +. /etc/default/earlyoom + +do_start() { + if ps -p "$(cat /var/run/earlyoom.pid)" > /dev/null + then + echo "earlyoom is already running." + else + echo "Starting earlyoom..." + nohup /usr/bin/earlyoom $EARLYOOM_ARGS > /var/log/earlyoom.log 2>&1 & + echo "$!" > /var/run/earlyoom.pid + fi +} + +do_stop() { + if ps -p "$(cat /var/run/earlyoom.pid)" > /dev/null + then + echo "Stopping earlyoom..." + kill -15 "$(cat /var/run/earlyoom.pid)" + else + echo "earlyoom is not running." + fi +} + +do_force_stop() { + if ps -p "$(cat /var/run/earlyoom.pid)" > /dev/null + then + echo "Killing earlyoom..." + kill -9 "$(cat /var/run/earlyoom.pid)" + else + echo "earlyoom appears to not be running." + fi +} + +do_restart() { + do_stop + do_start +} + +do_status() { + if ps -p "$(cat /var/run/earlyoom.pid)" > /dev/null + then + echo "earlyoom is running with pid $(cat /var/run/earlyoom.pid)." + else + echo "earlyoom is not running." + fi +} + +case $1 in + start) + do_start + ;; + stop) + do_stop + ;; + restart) + do_restart + ;; + force-stop) + do_force_stop + ;; + status) + do_status + ;; + *) + echo "USAGE: rc.earlyoom (start|stop|force-stop|restart|status)" + ;; +esac |