A method for a computer repairing itself, the method comprising the computer-executed steps of: booting from a first boot device; then, in response to a signal indicating a need for repair, booting from a second boot device; and then repairing software on the first boot device while booted from the second boot device.