U novějších systémů se systemd to vyřešil systemd-inhibit
. Příklad použití:
systemd-inhibit --why="Doing weekly backup" bash my-backups.sh
Pokud se pak uživatel pokusí vypnout, nebude to povoleno, pokud to nebude vynuceno.
❯ systemctl poweroff
Operation inhibited by "bash my-backups.sh" (PID 2414 "systemd-inhibit", user ntrrgc),
reason is "Doing weekly backup".
Please retry operation after closing inhibitors and logging out other users.
Alternatively, ignore inhibitors and users with 'systemctl poweroff -i'.
Spusťte which shutdown
abyste viděli, kde je cesta k vypínacímu programu. Soubor můžete přejmenovat, i když nedoporučuji.
Další (bezpečnější) metoda. Použijte alias:alias shutdown=' '
Něco takového je vratnější. Pokud se snažíte zabránit vypnutí ze strany všech uživatelů, přidejte alias globálně.
Zakažte příkazy „vypnutí/reboot/vypnutí/zastavení/název hostitele“ na kritických serverech
chmod 0 /sbin/shutdown
pak pokud jej potřebujete použít, chmod jej zpět na chmod 0755
.