【共享】将Clonezilla Live放在硬碟中

仅仅用于软件推荐,不适合发求软件或软件使用问题方面的贴子
回复
头像
joshuaPC
帖子: 8
注册时间: 2014-11-12 15:21
系统: Gentoo,win7

【共享】将Clonezilla Live放在硬碟中

#1

帖子 joshuaPC » 2015-01-21 18:12

原文地址:http://clonezilla.nchc.org.tw/clonezill ... livehd.php


本文件说明如何将Clonezilla live放到一个已经有其他作业系统存在的硬碟中。
这里我们使用grub这个开机管理程式当范例。你必须把Clonezilla live的所有档案放在grub支援的档案系统分割区中,例如FAT, ext2/3, reiserfs等。//注意// grub不支援NTFS的档案系统,所以你不可以把Clonezilla live的档案放在NTFS分割区中。 如果你没有另外的分割区可以放置Clonezilla live的档案,你可以考虑用类似gparted这样的程式来将你的分割区缩小然后划分出另外一个分割区。本例中我们假设你已经有一个FAT的分割区/dev/hda4,准备要放置Cloenzilla live。以下说明如何做:

用硬碟中的作业系统来开机,例如用GNU/Linux来开机。
将/dev/hda4挂载成/mnt,你可以用这个指令做到: mount /dev/hda4 /mnt
下载Clonezilla live的zip档,将所有档案解开到/mnt,确认档案是放在目录/mnt/下,并且维持原来的目录架构。例如COPYING是在/mnt/目录下,不在/mnt/下的任何一个子目录中。你可以用这个指令做到: "unzip clonezilla-live-*.zip -d /mnt" (将clonezilla-live-*.zip取代成你下载的档案名称).
将/mnt/下的目录"live"改成其他目录名称,例如"live-hd"。你可以用这个指令做到: "cd /mnt; mv live live-hd"
若是你的开机管理程式是grub版本1.x的话,编辑你的grub设定档/boot/grub/menu.lst,增加以下的选单:
================================================
title Clonezilla live on harddrive
root (hd0,3)
kernel /live-hd/vmlinuz 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" ocs_lang="" vga=788 ip=frommedia nosplash live-media-path=/live-hd bootfrom=/dev/hda4 toram=filesystem.squashfs
initrd /live-hd/initrd.img
boot

================================================


如果你的开机管理程式是grub版本2.x (grub-pc)的话,以Debian Squeeze or Ubuntu 9.10为例,你可以修改 /etc/grub.d/40_custom,加上类似这样的部份:

================================================
menuentry "Clonezilla" {
set root=(hd0,4)
linux /live-hd/vmlinuz 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\" ocs_lang=\"\" vga=788 ip=frommedia nosplash live-media-path=/live-hd bootfrom=/dev/hda4 toram=filesystem.squashfs
initrd /live-hd/initrd.img
}

================================================
注意: 这边grub 2的开机参数,为了要显示双引号"在/proc/cmdline 中,双引号"前面都要加上\。
接著重跑update-grub2。(感谢Louie Chen提供此说明)

此外,也可以直接在grub2中使用单一个clonezilla live的iso档 (感谢来自grml的补丁档)。例如,将下载下来的clonezilla-live-1.2.12-10-i686-pae.iso放在 /dev/sda5 分割区目录/isos/下,然后编辑grub2 custom的档案 /etc/grub.d/40_custom 如下:

================================================
menuentry "Clonezilla live" {
set root=(hd0,5)
set isofile="/isos/clonezilla-live-1.2.12-10-i686-pae.iso"
loopback loop $isofile
linux (loop)/live/vmlinuz 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\" ocs_lang=\"\" vga=788 ip=frommedia nosplash toram=filesystem.squashfs findiso=$isofile
initrd (loop)/live/initrd.img
}
================================================
然后记得再次执行update-grub2。



//注意//:
上述的grub选单中我们另外放了3个参数,(1) live-media-path=/live-hd 表示我们将档案放在目录/live-hd中,而不是预设的/live目录中。 (2) bootfrom=/dev/hda4表示我们强迫开机要从第一个硬碟的第四个分割区(/dev/hda4)中的档案来开机,这样可以避免万一你有另外一个Clonezilla live放在光碟机中而被误用。(3)参数"toram=filesystem.squashfs"表示所有Clonezilla live的程式会被复制到记忆体中,不会将/dev/hda4一直挂载著。所以后续你在使用这个Clonezilla live的时候,可以将/dev/hda4挂载成Clonezilla的印象档目录。

记得配合你下载下来的Clonezilla live zip档案中的参数来修改,相关参数可以在/mnt/syslinux/syslinux.cfg中查到。你使用的Clonezilla live所用的参数,有可能和上述的参数不同,例如vmlinuz路径,"username", "hostname"等等都可能不同。

如果你没有将"live"的目录名称修改成"live-hd",你有可能会遇到使用光碟版或者是USB随身碟版的Clonezilla live开机时,会和这个硬碟版中的版本相混淆的问题。相关的讨论可以参考:
https://sourceforge.net/tracker2/?func= ... _id=115473
http://drbl.sourceforge.net/faq/fine-pr ... uashfs.faq


类似ghost,直接硬盘安装,再也不怕linux犯病了
头像
456jian
帖子: 82
注册时间: 2011-04-18 19:06

Re: 【共享】将Clonezilla Live放在硬碟中

#2

帖子 456jian » 2015-02-02 17:08

好东西!收藏!
回复