2

I am trying to setup CloneZilla to be bootable via PXE without using NFS. I do not have NFS running on our PXE server and would like to keep it that way. However, most of the information that I have found online indicates that you need to setup NFS in order to PXE boot CloneZilla. I believe that I am pretty close in getting it to work, but am not sure where to go next. Listed below are the different PXE menu option configurations that I have used so far.

LABEL Clonezilla Live
  MENU LABEL Clonezilla Live
  KERNEL utilities/clonezilla/vmlinuz
  APPEND initrd=utilities/clonezilla/initrd.img boot=live live-config noswap nolocales edd=on nomodeset ocs_live_run="ocs-live-general" ocs_live_extra_param="" ocs_live_keymap="" ocs_live_batch="no" o$

I have also tried the following append lines, without success:

APPEND initrd=utilities/clonezilla/initrd.img boot=live union=aufs noswap noprompt vga=788 fetch=tftp://10.130.155.23/filesystem.squashfs
APPEND initrd=utilities/clonezilla/initrd.img boot=live union=aufs noswap noprompt vga=normal nomodeset nosplash fetch=tftp://10.130.155.23/filesystem.squashfs

Each of them have resulted in a no go with the following error: "Unable to find a live file system on the network". It looks like it gets to the point of trying to load the filesystem.squashfs file, hangs, and then throws the error. Any help would be greatly appreciated.

4 Answers 4

5

We faced the same problem and found the following to be excellent for explanations:

Our configuration:

  • Debian/kFreeBSD (sid)
  • tftp-hpa (5.2-4)
  • Clonezilla Live Image (current stable 1.2.12-67)

The cause of the problem, like explained in the second link, it's related to the value of the -b parameter (blocksize option) of the tftp command. The tftp command is used to retrieve the squasfs file system from the server, and it's invoked (in this case with the wrong parameter -b value) by the live script in the initrd.

Our workaround is to modify the initrd editing the inside live script (/scripts/live) and adjust the problematic parameter value no bigger than 9212 or delete it.

Replacing:

tftp -g -b 10240

with

tftp -g

fixes our problem.

To some good explanation about modifying an initrd see:

1
  • I edited the initrd.img, repacked it, but the result is the same problem for my setup. virtualbox, two guests waiting for ethernet card(s) up... if this fails, maybe the ethernet card is not supported by the kernel 3.10-2-686pae? Debian live image failed to boot. Virtualbox vm guest pxelinux server and another VM Guest Server --> eth0 = bridged adapter on host --> eth1 = internal network ("int") guest B--> eth0 = internal network --> eth1 = bridged adapter on host
    – user191374
    Sep 25, 2013 at 5:02
2

Regarding the error "Unable to find a live filesystem on the network", I indeed diagnosed this to be due to the failing tftp download of filesystem.squashfs. ($ cat live.log in the busybox)

Digging deeper into the error I found that editing the fetch parameter in /tftpboot/pxelinux.cfg/default fixed this problem for me.

By default it looks like:

APPEND initrd=initrd.img boot=live config noswap nolocales edd=on nomodeset ocs_live_run="ocs-live-general" ocs_live_extra_param="" ocs_live_keymap="" ocs_live_batch="no" ocs_lang="" vga=788 nosplash noprompt fetch=tftp://INSERT-IP-HERE/filesystem.squashfs

However, I've stored my clonezilla live files (including filesystem.squashfs) file in the absolute linux path /tftpboot/clonezilla-i486/ and not in the absolute root path /. Therefore I had to change the APPEND line to look like this:

APPEND initrd=clonezilla-i486/initrd.img boot=live config noswap nolocales edd=on nomodeset ocs_live_run="ocs-live-general" ocs_live_extra_param="" ocs_live_keymap="" ocs_live_batch="no" ocs_lang="" vga=788 nosplash noprompt fetch=tftp://INSERT-IP-HERE/tftpboot/clonezilla-i486/filesystem.squashfs
1

I am able to boot Clonezilla via PXE using only tftp:

LABEL clonezilla1.2.12-10
        MENU LABEL ^Clonezilla 1.2.12-10
        kernel images/clonezilla-1.2.12-10-i686-pae/vmlinuz
        append initrd=images/clonezilla-1.2.12-10-i686-pae/initrd.img boot=live config noswap nolocales edd=on nomodeset noprompt ocs_live_run="ocs-live-general" ocs_live_extra_param="" ocs_live_keymap="NONE" ocs_live_batch="no" ocs_lang="en_US.UTF-8" vga=773 nosplash fetch=tftp://59.167.xxx.xx/images/clonezilla-1.2.12-10-i686-pae/filesystem.squashfs

I wonder if the errors you saw using fetch=tftp:// were version-specific to a certain release, or you need some other options that I include in mine?

According to my comments in the pxelinux config file, I got it going using just this documentation: http://clonezilla.org/show-live-doc-content.php?topic=clonezilla-live/doc/99_Misc

1
  • It works, but HTTP is much faster... (And if you are using cobbler, it seems to delete the additional files in /var/lib/tftpboot) Aug 16, 2018 at 14:08
0

I use cobbler to PXE boot Clonezilla, so it may be a bit different from your situation. Here's my pxelinux.cfg:

kernel /images/Clonezilla/vmlinuz1
ipappend 2
append initrd=/images/Clonezilla/initrd1.img  edd=on ocs_live_run=ocs-live-general text ocs_live_keymap noprompt ocs_live_extra_param ocs_lang locale=  union=aufs hostname=jaunty boot=live ocs_live_batch=no mode_option=1024x768 nolocales fetch=http://192.168.2.1/cobbler/ks_mirror/clonezilla/images/pxeboot/filesystem.squashfs  auto

This configuration is using HTTP to transfer the file system. Also note that this is for the Debian version of Clonezilla.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .