PsRebooter is now obsolete as Dreamhost has disabled the API for its VPS service. This happened unexpectedly and with only 2 weeks notice in November 2015.
Dreamhost VPS Rebooter (short: PsRebooter) is an open source tool that reboots your Dreamhost virtual private server at set times.
Rebooting a server cleans out all hanging processes and connections, doing this regularly can save memory usage and thus improve the performance and reduce the cost of your Dreamhost virtual private server.
Although a Dreamhost VPS runs on Linux which is inherently stable, there is always the chance that some processes related to applications that you have installed yourself are hanging. Using PsRebooter shouldn't of course stop you from fixing problems that you may encounter with certain scripts.
As PsRebooter and PsManager contained large sections of identical code, they have been merged into one program, so as to make maintenance easier. Rebooting a VPS is now a simple optional feature of the PsManager package. A further advantage is that one configuration file is now enough.
Note: Not a Dreamhost customer? Save $97 by signing up to Dreamhost with our Dreamhost Promo Codes.
Follow steps 1 to 4 of the installation instructions for PsManager. If you have already installed PsManager, there is no need to repeat those steps again. You should then already have an API key, Shell user, and installed and configured the software.
To get PsRebooter running, you'll need to set up your crontab to run psrebooter.pl at the times you want to reboot your server (this example assumes the program is located in your "bin" directory and will reboot your server every Saturday at 01:00):
0 1 * * 6 $HOME/bin/psrebooter.pl > /tmp/psrebooter_cron.log 2>&1
We recommend to edit your crontab yourself directly on your server, i.e. not to edit it via the DH Control Panel. This is because the Dreamhost control panel adds wrapper code that can disrupt the proper functioning of PsManager.
You can edit the crontab directly with
crontab -e, while
crontab -l will list the contents of your crontab.
(Read more about
on Dreamhost on their wiki page.)
When upgrading from an older version, one generally only needs to
as the configuration file can stay the same.
You can follow the procedure above but without replacing
The instruction below will only extract the perl program from the tar-file after downloading it:
wget -N http://www.7is7.com/software/dreamhost/download/psrebooter.tar.gz
tar -zxvf psrebooter.tar.gz psmanager.pl psrebooter.pl
PsRebooter should be able to determine the machine you want to manage automatically, if for some reason it doesn't you can manually set the 'ps' variable in the configuration file to indicate the correct machine.
$ps = 'ps0000';
Note: You can use this feature to reboot your machine from another machine.
Status updates are now sent by PsManager when PsManager detects a reboot. Thus a message is now sent after a reboot and no longer upon request of a reboot.
Guaranteed freedom of use and code transparency.
The PsRebooter program is released under an open source license (GNU-GPL v3), which means that you can use this script for free and make any modifications that you please. You are in no way dependent on the original author of this program for future maintenance and your right to use it never expires. The source code of the script is easily viewable (the script is written in perl), you can scrutinize it or have it scrutinized to convince yourself that it does what it says it does.
If you are using the Dreamhost VPS Rebooter script, you may also be interested in using the Dreamhost VPS Manager script (PsManager) to automatically manage the memory allocated to your VPS.
There is a Dreamhost forum thread for PsManager where you can also ask questions about PsRebooter. If you are using or want to use PsRebooter feel free to contact me by E-mail about any problems or suggestions.
Note: If you want to be notified of important new releases of PsRebooter and PsManager, or problems affecting these scripts, send me an E-mail and ask to be added to the mailing list. (It is still a small mailing list that I maintain manually.)