Aveva questo problema con un computer server. L'unica soluzione affidabile (l'ho usata per 6 mesi + senza un singolo problema) è stata trovata utilizzando il comando caffeinate
.
Il comando che uso per impedire il sonno è caffeinate -s
. Puoi aggiungere un limite di tempo con il flag -t [# of seconds]
, ma dal momento che non vuoi mai andare a dormire, non ne hai bisogno.
Ecco la pagina man:
CAFFEINATE(8) BSD System Manager's Manual CAFFEINATE(8)
NAME
caffeinate -- prevent the system from sleeping on behalf of a utility
SYNOPSIS
caffeinate [-disu] [-t timeout] [-w pid] [utility arguments...]
DESCRIPTION
caffeinate creates assertions to alter system sleep behavior. If no
assertion flags are specified, caffeinate creates an assertion to prevent
idle sleep. If a utility is specified, caffeinate creates the assertions
on the utility's behalf, and those assertions will persist for the dura-
tion of the utility's execution. Otherwise, caffeinate creates the asser-
tions directly, and those assertions will persist until caffeinate exits.
Available options:
-d Create an assertion to prevent the display from sleeping.
-i Create an assertion to prevent the system from idle sleeping.
-m Create an assertion to prevent the disk from idle sleeping.
-s Create an assertion to prevent the system from sleeping. This
assertion is valid only when system is running on AC power.
-u Create an assertion to declare that user is active. If the dis-
play is off, this option turns the display on and prevents the
display from going into idle sleep. If a timeout is not specified
with '-t' option, then this assertion is taken with a default of
5 second timeout.
-t Specifies the timeout value in seconds for which this assertion
has to be valid. The assertion is dropped after the specified
timeout. Timeout value is not used when an utility is invoked
with this command.
-w Waits for the process with the specified pid to exit. Once the
the process exits, the assertion is also released. This option
is ignored when used with utility option.
EXAMPLE
caffeinate -i make
: