I work on a ubuntu server located in a place where I don't usually go. I use ssh over openvpn to access it. The machine has multiple wired interfaces, many static routes and multiple default gateways to WAN. I frequently change interface adresses and routes. Most of the times the changes I do are temporarily--a reboot would reset the experiments I have done. In some cases some of those modifications have gone wrong, and the machine has gone offline. In such cases I had to call up someone at the place where the server is located to send the machine into a reboot.
Now I would like to schedule a reboot--lets say after 2 hours the machine should go into a reboot cycle. And in those two hours I can do whatever temporary experiments that I want. If all the temporary changes succeed then I should be able to prevent the "afer 2 hour" reboot from happening. So what I want is:
- How to tell the server to reboot after a certian time?
- If I decide that the machine should not go into a reboot, I should be able to cancel it.
You can also use
at
to schedule reboots. For examplesudo at 22:00
to run the command at 22:00 as root. Then enter the command you want to run:/sbin/shutdown -r now
and end withctrl-d
. If you decide not to run this command, runsudo atrm 1
to delete the first one in theat
queue. Withsudo atq
you can see the queue.On the terminal type
shutdown -r 10 Waiting 10 minutes before the restart&
that will make the server reboot in 10 mins, broadcast a message explaining that and pressing control+c will interrupt the reboot request.On the terminal type
shutdown -r 18:00 Rebooting at 18:00 hours&
that will make the server reboot at 18:00 hours, will broadcast a message explaining that and can be interrupted with control+c.You can also interrupt any shutdown / reboot request on your "working" terminal with
shutdown -a
.