无NFS的CloneZilla PXE引导

我试图设置CloneZilla通过PXE启动而不使用NFS。 我没有NFS在我们的PXE服务器上运行,并希望保持这种方式。 但是,我在网上find的大部分信息表明,您需要设置NFS以便PXE启动CloneZilla。 我相信我能够很好地工作,但我不确定下一步该怎么去。 下面列出的是我迄今为止使用的不同的PXE菜单选项configuration。

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$ 

我也尝试了下面的附加行,没有成功:

 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 

他们每个人都导致了一个没有去与以下错误:“无法findnetworking上的实时文件系统”。 它看起来像试图加载文件system.squashfs文件,挂起,然后抛出错误。 任何帮助将不胜感激。

我们遇到同样的问题,发现以下内容对于解释是非常好的:

我们的configuration:

  • Debian / kFreeBSD(sid)
  • tftp-hpa(5.2-4)
  • Clonezilla Live Image(目前稳定1.2.12-67)

问题的原因(如第二个链接中所述)与tftp命令的-b参数(blocksize选项)的值有关。 tftp命令用于从服务器检索squasfs文件系统,并通过initrd的实时脚本调用它(在这种情况下,参数的值为错误的-b值)。

我们的解决方法是修改编辑内部活动脚本( /scripts/live )的initrd,并调整不大于9212的问题参数值或删除它。

更换:

 tftp -g -b 10240 

 tftp -g 

修复了我们的问题。

有关修改initrd的一些很好的解释,请参阅:

关于错误“无法在networking上find活动文件系统”,我的确诊断这是由于filesystem.squashfs的tftp下载失败。 ( $ cat live.log busybox中的$ cat live.log

深入挖掘错误,我发现编辑/tftpboot/pxelinux.cfg/default的读取参数为我解决了这个问题。

默认情况下,它看起来像:

 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 

不过,我已将我的clonezilla实时文件(包括filesystem.squashfs)文件存储在绝对Linuxpath/tftpboot/clonezilla-i486/而不是保存在绝对根path/ 。 所以我不得不改变APPEND行看起来像这样:

 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 

我只能使用tftp通过PXE启动Clonezilla:

 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 

我不知道你使用fetch = tftp://看到的错误是针对特定版本的特定版本,还是你需要一些其他的选项,

根据我在pxelinuxconfiguration文件中的评论,我使用了这个文档: http ://clonezilla.org/show-live-doc-content.php?topic=clonezilla-live/doc/99_Misc

我使用皮匠 PXE启动Clonezilla,所以它可能会有点不同于你的情况。 这是我的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 

该configuration使用HTTP来传输文件系统。 另外请注意,这是Debian版本的Clonezilla。