All computer changes discarded after restart

There's an Internet café that I frequent, and I've noticed that after restarting any computer - no matter what I did on that computer - it goes back to the exact same state as it was before, with all the changes discarded.

I can install programs, uninstall programs, tamper with all kinds of settings, but once the computer restarts - it's exactly like before.

I'm curious what could be the way they achieve this, is it software related or hardware related?


There's a few tools that let you do this, and a few hackish methods as well.

The 'proper' way to do this on XP was using windows steadystate - and while there was never a proper replacement, MS claims you can do these things with standard tools in Windows 7

There are also commercial tools for this like deepfreeze that sandbox a system.

Some have also reported that you can use the Enhanced Write Filter component from windows embedded on the desktop varient to overlay a ram stored overlay over a regular hard drive image.

An interesting, and rather unusual alternative is to mount the boot drives over iSCSI, then snapshot the file system the boot drives are stored on - this is what was done in the lan party house. In the same vein, it might be possible to use a VHD boot, then simply replace the modified VHD with a fresh one each boot on windows 7 or later.

There's a lot of ways to do it on windows.

On linux? Use a livecd


They could be using Deep Freeze:

Faronics Deep Freeze Enterprise makes PCs indestructible. It protects endpoints by Freezing the desired configuration set by you – the IT professional. Any unwelcome or unwanted changes users make while in-session are prevented from sticking. It’s really simple. By restarting your computers, systems are returned to the desired state.

enter image description here
Screenshot from here.


It's easy to do and there are several ways to do this with either Windows or Linux, and I can only assume with Macs as well. Besides doing this from a software perspective, you can also use special hardware like thin clients. If you have any experience with Linux LiveCD's, it's the same principle. You start the OS, you allow the users to do everything they want to do, but you write these changes to RAM (or a temporary folder on disk). Once you log out or restart the computer, all default settings will be re-read from disk and thus everything will look and feel the same as before the changes.

For internet cafes, this is an important thing because even if you get a virus infection, or people installing bloatware, malware, mess up system settings, a simple reboot fixes any problem so you don't need to send out an engineer and deal with costly downtime.


Macs do this with NetBoot - the computer boots over the LAN, the OS is on a read-only disk image on the server. A shadow image (writeable volume union mounted over the read-only image) handles anything the user wants do do. The shadow image can be on a local volume (faster) or on a server allowing diskless workstations.

When the client is rebooted the shadow image is destroyed and a fresh one made. Despite what you may think the whole process is surprisingly fast. booting a roomfull of Macs all at once takes a while but once everything is running you hardly notice a difference.