问题
I am writing a Java app to shutdown my Linux box remotely.
The desktop app sits and waits for a command to be sent to it. I have tried using "shutdown -h" but this requires sudo privileges and is not an option. I then found a way to shutdown without sudo using the following dbus-send solution:
dbus-send --print-reply --system --dest=org.freedesktop.Hal /org/freedesktop/Hal/devices/computer org.freedesktop.Hal.Device.SystemPowerManagement.Shutdown
This works fine but I am trying to figure out, using dbus-send, if its possible to do a timed shutdown similar to "shutdown 3600" which would shut the computer down in 1 hour?
Cheers
Eef
回答1:
HAL, which function you are calling, does not provide this feature. But you can always go with something like this, if you are launching an external command anyway:
sh -c "sleep 1h; dbus-send --print-reply --system --dest=org.freedesktop.Hal /org/freedesktop/Hal/devices/computer org.freedesktop.Hal.Device.SystemPowerManagement.Shutdown"
来源:https://stackoverflow.com/questions/3696644/linux-shutdown-with-dbus-send