Friday, 14 February 2014

Build your own Porteus ISO and run it with persistence using Easy2Booot

Porteus is a linux distro that is quick to boot and you can be running a browser within 30 seconds from selecting the menu entry in the E2B menu. Porteus is a complete linux operating system that is optimized to run from a USB flash drive. It's small (under 300MB) and fast which allows you to start up and get online while most other operating systems are left spitting dust.

You can also configure and build your own ISO online in just a few seconds too!

To download the ISO of your choice, click on the Download button on the top of the page at This will take you to a page that walks you through selecting and downloading your ISO. Users with 64-bit hardware can use either version, but users with 32-bit hardware can only use the 32-bit (i486) version so I suggest you stick with the 32-bit version.

You can make a Desktop Edition or a Kiosk Edition. The Kiosk Edition has been restricted to only allow public users access the web browser. It is ideal to boot to if you just want to quickly boot to a browser from another system. Furthermore, the browser has been locked down to prevent users from tampering with system settings. The kiosk edition will run on both 32-bit (i486 or greater) and 64-bit (x86_64) systems and is extremely lightweight in terms of size and used resources. Default kiosk image size is under 50 MB while your custom kiosk ISO size will depend on your choice of adding extra components like flash, java, additional fonts, end even what home page you want, etc. When the kiosk boots it automatically opens firefox to the home page. When firefox is restarted all caches are cleared and browser reopens automatically with a clean session. By adding Flash and Java, I could play YouTube videos with sound on my Asus EeePC with no problem.

For your first ISO, I suggest you start with the Desktop 32-bit - GUI - KDE4 version. Just select your options from, choose a browser (choice of Firefox, Chrome or Opera), a Word Processor (AbiWord or LibreOffice), Skype and Development tools (binutils, gcc, make, etc.), video card drivers (nVidia, Radeon, Linux OpenSource) and Printer Support (as desired) and click on the large BUILD button. Within a few seconds your ISO will be ready to download and copy to your E2B drive!

The Kiosk version is worth checking out also, just to see what configuration options you have in the Kiosk build wizard!

MBR-boot Porteus with persistence on E2B from ISO

To run Porteus from Easy2Boot with persistence, use the correct Porteus-xxx-persistent.mnu file (in the \_ISO\docs\Sample mnu files folder of E2B. Instructions are inside the .mnu file, or you can follow the instructions in Tutorial 73.

See also here for more details.

UEFI-booting with persistence

Porteus uses rEFInd for UEFI-booting. I used Porteus-XFCE-v3.2rc5-x86_64.iso.

1. Convert the ISO file to a FAT32 .imgPTN file. Increase the suggested size to allow for a persistence file (e.g.  add 300 MB extra).

2. Switch to the .imgPTN file

3. Edit the \EFI\BOOT\refind.conf file as below:

menuentry "Porteus GUI mode" {
volume KERNELS
icon EFI/BOOT/icons/os_porteus.png
loader boot/syslinux/vmlinuz
initrd boot/syslinux/initrd.xz
options ""
submenuentry "Save changes" {
add_options "changes=/porteus/porteussave.dat"

4. Edit the \boot\syslinux\porteus.cfg file as below for MBR booting:

MENU LABEL Graphics mode
KERNEL vmlinuz
APPEND initrd=initrd.xz changes=/porteus/porteussave.dat
    Run Porteus the best way we can.
    Try to autoconfigure graphics
    card and use the maximum
    allowed resolution

5. Boot to Porteus and use the Systems - Porteus Save File Manager   (password=toor) to create a \porteus\porteussave.dat file on the E2B USB drive. Set the size so that it uses all the free space available.

You may get some error messages on first boot but these can be ignored.

Tip: Use CTRL-S to pause the boot messages and CTRL-Q to resume, so you can see if the persistence file was accepted as valid or not.

Now you should be able to UEFI or MBR boot with persistence.