Simple utility which puts your computer to sleep after some time if there is no activity on specified ports. Very handy in combination with automated WoL.
- ❗️socket statistics (ss) must be installed
- if not run as systemd service, make sure it runs as root
- only tested on Ubuntu Server 20.04 LTS and Manjaro, no gurantees that it will work anywhere else whatsoever
Either download the latest release binary and make it executable or build it yourself (make
).
./netsusp -l -d delay -protocol port [...]
- -l: write log file to
/var/log/netsusp.log
(optional) - delay: time in minutes until suspend after inactivity
- protocol: t(cp)
(note: u(dp) doesn't really make sense here as it's stateless) - port: 0-65535
eg: netsusp -d 30 -t 25565 -t 22 will not suspend if there are any established tcp connections on port 25565 and 22. If idling for 30 minutes straight, the system will suspend.
- change the highlighted content of the given netsusp.service file to fit your needs
- copy the edited file to
/lib/systemd/system/
. - then issue the following:
systemctl daemon-reload
systemctl enable netsusp.service
systemctl start netsusp.service