What is Persistence?

Persistence is a hybrid between a LiveCD/USB and a full install. One of the beauties of a LiveCD is that it allows you to boot Linux without touching any hard drives so you can have a "test-drive" without fear of altering your current system. Another feature of a LiveCD is that once it is burned, it is close to impossible for it to get infected with a virus or a Trojan horse. Every time you boot it, you start off with a system that is clean and pristine.

Persistence gives you a way of remembering things between boots. In order to do so, it needs access to a read-write device, typically either a hard drive or a USB stick. If you are only using one machine that is yours then you can put the persistence file(s)s on one of your hard drives.

Three Kinds of Persistence

The antiX distribution offers up to three different forms of persistence on our Live Media (LiveCD/DVD/USB, etc). Remastering is only available on writable media such as a LiveUSB or a LiveHD (frugal install) not a CD or DVD. All three forms can be used together if desired. They each have different strengths and weakness which are important to understand in order choose the right method or methods for your purposes.

Home Persistence

Home persistence is the simplest and safest. The homefs persistence file is mounted at /home. Any changes made to files under /home are (nearly) instantly stored on homefs filesystem. It is good if you want to save settings (such as bookmarks or changes to your desktop) but it doesn’t save changes made to the system (such as installing packages). Generally, if you need the root password to do it then it is not saved. Home persistence is also ideal if you want to download and save a lot of data. It is the safest precisely because you can’t save any system changes with it. Even if your system gets compromised, it will be very difficult for the bad guys to make any permanent changes to your system.

Root Persistence

Root persistence allows you to save changes to the system in addition to saving personal settings. It has two significant limitations. These limitations are due to the fact that as the system is running the changes are stored in RAM and will be lost unless they are specifically copied back to the rootfs file. If your computer crashes before the changes are copied back then your changes will be lost. The other limitation is that the amount of new information you can store is limited by how much free RAM you have.

Remastering

We include remastering as a form of persistence for purposes of comparison. The Remastering page contains implementation details. If root persistence is like using a piton while climbing up a cliff, remastering is more like setting up a camp or bivouac site.

How does it Work?

The information for both root and home persistence is stored in two files called rootfs and homefs. Unlike previous versions of antiX, there is no longer an option to use a entire partition for root or home persistence. The default location for these files is right next to the squashfs file, on the same device and in the same directory. We suggest that you use this default location whenever possible, but sometimes it is not possible (such as when booting from a LiveCD or LiveDVD). For these cases you can specify which device the persistence files are on. You can also specify a different directory.

How do I Create Persistence Files?

The homefs and rootfs persistence files are straightforward to create once you know the trick. You just need to decide how large you want to make the file and what file system you want to use on it. We suggest using ext2, ext3, or ext4. If file(s) will be on a USB stick then you should consider turning journaling off if using ext3 or ext4 to prevent shortening the life of the USB stick. Enabling extents in ext4 might increase efficacy, especially on USB sticks.

Using the antix2usb gui app

You can run antiX live from a usb stick. To install to usb stick you can use our tool antix2usb or unetbootin. Both will work, but our tool enables users to also set up persistence prior to running. If using UNetbootin you will have to set up persistence once running from the stick/device.

using antix2usb gui.

  • Plugin your usb stick.

  • If it auto-mounts, unmount it.

  • Open antix2usb from antixcc → disks -antiX2usb

  • Select ISO file. Navigate to where the ISO fole is and click Open.

  • Install to USB device should automatically detect your usb device and show how much space is available.

  • System partition. antix2usb allows users to either use the full disk or part of the disk space by creating a partition. If you do not want to use persistence, then minimum recommended size for a partition is shown below.

    • antiX-full:1GB

    • antiX-base:512MB

    • antiX-core:200MB

  • You can set the language here or at the boot menu.

Options:

  • Format. This refers to the usb device partition. ext2 is recommended.

  • Bootloader. This gets installed into the MBR of the usb device. syslinux is only used with fat32.

  • Persistence. There are four options here.

    • No persistence - just leave as default.

    • home persistence - check home and select size

    • root persistence - check root and select size

    • Both home and root persistence - check both home and root and select sizes.