This wizard only works when Puppy runs from the USB drive.

The type of memory which USB drives use can only support about 1000000 read/write operations. This creates a problem when running any program, and especially operating system, from the USB drive. The problem is: how to avoid frequent writes to the USB?

Puppy solves this problem using unionfs (or aufs, depending on the Puppy version). This is explained here, see the section about PUPMODE 13.  Unionfs  allows to keep all the changes to the filesystem in RAM. For example, suppose you have a file on your USB drive, and you modify this file. When you modify the file, Puppy actually first copies the file to RAM, and then keeps the modified file in RAM. So, all the modifications to the filesystem are actually stored in RAM.

This solves the problem of frequent writes to the USB memory. But still, at some point we have to "save" all the changes from RAM to the USB memory. Because otherwise the changes will be lost after the reboot.


There are several ways to organize the saving of RAM to USB. The most natural thing is to save regularly, every 30 minutes. This is the default option. The other two options are:
The second option is useful in the situation when you want to try some modification (like installing a new program) and not sure if you like the result, so you might want to go back. Just disable saving from RAM to USB, and all the changes will be lost after the reboot. And if you do like the changes you made, you can always turn on saving, so your changes will persist after the reboot.


The "advanced options" have to do with saving the so-called whiteout files.
Attention: advanced options will be reset after the reboot.
A brief explanation of whiteout files:
  1. Regular whiteout files. The whiteout files are needed when you want to erasea file on the USB. Again, in Puppy the file is not actually erased, but instead the special "whiteout file" is created in the ramdisk, which tells the system that it should ignore that "erased" file and make it invisible. What happens to that "whiteout file" during saving? The natural thing would be to actually erase that file on the USB which is "whited out". After that file was erased, the "whiteout file" itself is not needed anymore, so we just erase it as well. However, this is not always the right thing to do. The problem is, that some files on the Puppy filesystem come from the "squashes". Squashes are read-only compressed filesystems. You cannot actually erase the file on the squash, because the squash is read-only. If you really want to get rid of such a file, all you can do is to create a whiteout for it. Now, the question is, do we want this whiteout to be saved when we save files from RAM to USB? If we do not save it, then the "erased" file from the squash will reappear after the reboot. By default, the whiteout files are not saved.
  2. Dir-opaque whiteout files. The .wh.__dir_opaque file tells the system to ignore all the files in the possible folders with the same name on the lower brunches of the filesystem. Again, the dir-opaque files are not saved by default.