Wednesday, June 15, 2016

Clonezilla: Boot from EFI

In this post, I show how to boot clonezilla (iso) from EFI bootloader (Clover) or from USB key with syslinux. You may be familiar with my previous post Boot iso image from GRUB2 or Clonezilla UEFI boot.
This time I have slightly different use case:

  • I have working EFI partition with Clover BootLoader on my laptop
  • I needed to add Clonezilla to Clover menu, to be able to boot from my HDD

Without further ado, lets get started. First of all, you need to download clonezilla ISO and mount it:
mount -o loop,ro /tmp/clonezilla-live-2.4.6-25-amd64.iso /mnt/clonezilla

Next step is to copy files to your /boot partition:
cp -r /mnt/clonezilla /boot/

Now you simply add new entry to Clover configuration /boot/efi/clover/config.plist:
         <dict>
            <key>AddArguments</key>
            <string>initrd=/clonezilla/live/initrd.img boot=live ignore_bootid live-media-path=/clonezilla/live union=overlay username=user config components quiet noswap edd=on nomodeset nodmraid locales= keyboard-layouts= ocs_live_run="ocs-live-general" ocs_live_extra_param="" ocs_live_batch=no vga=788 ip= net.ifnames=0 nosplash i915.blacklist=yes radeonhd.blacklist=yes nouveau.blacklist=yes vmwgfx.enable_fbdev=1</string>
            <key>Disabled</key>
            <false/>
            <key>FullTitle</key>
            <string>Clonezilla</string>
            <key>Hidden</key>
            <false/>
            <key>Ignore</key>
            <false/>
            <key>Path</key>
            <string>\clonezilla\live\vmlinuz</string>
            <key>Type</key>
            <string>Linux</string>
            <key>Volume</key>
            <string>EFI</string>
            <key>VolumeType</key>
            <string>Internal</string>
            <key>#Image</key>
            <string>\icons\gentoo_os.icns</string>
            <key>#CustomLogo</key>
            <string>\icons\gentoo_boot.icns</string>
            <key>#BootBgColor</key>
            <string>00000000</string>
         </dict>

With the above configuration you should be able to boot clonezilla with Clover.
NOTE: The <string> line parameters can be used to boot clonezilla e.g. with Multiboot created USB, simply edit the syslinux.cfg configuration

The above configuration works well, however, you might run into one issue:
  • booting clonezilla from your /boot partition will cause that the partition will be mounted and used by clonezilla, thus you won't be able to clone/make img from this partition.

Really simple solution for this it to load clonezilla to RAM. So you just have to use slightly different boot parameters for the Clover entry:
         <dict>
            <key>AddArguments</key>
            <string>initrd=/clonezilla/live/initrd.img boot=live live-media-path=/clonezilla/live union=overlay username=user config components quiet noswap edd=on nomodeset nodmraid noeject locales= keyboard-layouts= ocs_live_run="ocs-live-general" ocs_live_extra_param="" ocs_live_batch=no vga=788 toram=filesystem.squashfs ip= net.ifnames=0  nosplash i915.blacklist=yes radeonhd.blacklist=yes nouveau.blacklist=yes vmwgfx.enable_fbdev=1</string>
            <key>Disabled</key>
            <false/>
            <key>FullTitle</key>
            <string>Clonezilla2RAM</string>
            <key>Hidden</key>
            <false/>
            <key>Ignore</key>
            <false/>
            <key>Path</key>
            <string>\clonezilla\live\vmlinuz</string>
            <key>Type</key>
            <string>Linux</string>
            <key>Volume</key>
            <string>EFI</string>
            <key>VolumeType</key>
            <string>Internal</string>
            <key>#Image</key>
            <string>\icons\gentoo_os.icns</string>
            <key>#CustomLogo</key>
            <string>\icons\gentoo_boot.icns</string>
            <key>#BootBgColor</key>
            <string>00000000</string>
         </dict>

With this configuration your clonezilla will load itself into RAM and you can easily clone your /boot partition.

No comments:

Post a Comment