`

Clonezilla的PXE安装实验笔记

 
阅读更多

#这篇是很早写的个人笔记,原文在这里(PDF 文件)。最近有人问及,所以拿出来再重新贴一下,也许对某些人有用。虽然应用于 FreeBSD 上,没有涉及到 Ubuntu ,但对于 Ubuntu 及 Linux 用户来说,方法基本上相通的。

一、概述

现在的桌面机集本都集成了带有 PXE 模块的网卡,所以可以有效利用这一功能来进行网络化的系统布置及备份还原。这套方案用到了 VirtualBox ,Freebsd , Clonezilla 等开源操作系统及工具,所有软件都是免费开源的。

截图1:

Freebsd上架设PXE Boot服务及CloneZilla远程备份还原服务

二、设置 DHCP 服务

我的 DHCP 服务器是现成的,放在 Windows 上,所以只要设置一下 066 和 067 这两个选项就 OK 了, 在 066 中输入启动服务器 IP 地址,在 067 中输入 pxelinux.0 ,如下图。

Freebsd上架设PXE Boot服务及CloneZilla远程备份还原服务

这样就可以通过 DHCP 来指定 TFTP 启动服务器及启动文件了。

当然你也可以在 Freebsd 上安装 DHCP 服务器

pkg_add -r isc-dhcp31-server

创建 /usr/local/etc/dhcpd.conf 文件

allow booting;
allow bootp;
default-lease-time 600;
max-lease-time 7200;
authoritative;
ddns-update-style ad-hoc;
log-facility local7;
option domain-name “home.lan”;
option domain-name-servers 192.168.1.1;
server-name “192.168.1.1″;
server-identifier 192.168.1.1;
next-server 192.168.1.1;
option routers 192.168.1.1;
option root-path “192.168.1.1:/usr/tftpboot”;
filename “pxelinux.0″;
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.10 192.168.1.11;
}

在 /etc/rc.conf 中加入以下行

dhcpd_enable=”YES”

启动 DHCP

 

/usr/local/etc/rc.d/isc-dhcpd start

三、架设 PXE Boot 服务

1) 安装 Freebsd

这个就不必多说了,可以参考 Freebsd 使用手册-安装 Freebsdhttp://www.freebsd.org/doc/zh_CN/books/handbook/install.html

2 ) 设置 PXE Boot Server

编辑 /etc/inetd.conf ,把下面一行的 # 去掉 并把/tftpboot 改为 /usr/tftpboot

#tftp dgram udp wait root /usr/libexec/tftpd tftpd -l -s /usr/tftpboot

编辑 /etc/rc.conf ,加入下面一行

inetd_enable=”YES”

在 Shell 下输入以下命令,用来启动 inetd 及 tftp 进程。

/etc/rc.d/inetd start

在 /usr/ 目录下创建一个 tftpboot 文件夹

mkdir /usr/tftpboot

在 / 根目录下创建一个 tftpboot 的目录链接

ln -s /usr/tftpboot /tftpboot

到 http://www.kernel.org/pub/linux/utils/boot/syslinux/ 下载 syslinux,这个文件中包含了用于 pxe 启动的 pxelinux.0 及 vesamenu.c32 文件。

fetch http://www.kernel.org/pub/linux/utils/boot/syslinux/syslinux-3.85.tar.gz

解压缩

tar zxvf syslinux-3.85.tar.gz

复制 pxelinux.0 到 tftpboot 目录中

cp syslinux-3.85/core/pxelinux.0 /tftpboot/

复制 vesamenu.c32 到 tftpboot 目录中

cp syslinux-3.85/com32/menu/vesamenu.c32

回到 /tftpboot 目录,创建 pxelinux.cfg 目录

mkdir /tftpboot/pxelinux.cfg

创建 default 文件,代码如下

DEFAULT vesamenu.c32
MENU TITLE === PXE Boot Server ===
menu color title 1;36;44 #ffffffff #00000000 std
LABEL fog.local
localboot 0
MENU DEFAULT
MENU LABEL Boot from hard disk
TEXT HELP
Boot from the local hard drive.
If you are unsure, select this option.
ENDTEXT
LABEL fog.memtest
kernel fog/memtest/memtest
MENU LABEL Run Memtest86+
TEXT HELP
Run Memtest86+ on the client computer.
ENDTEXT
LABEL fog.centos
kernel centos/vmlinuz
append initrd=centos/initrd.img ip=dhcp dns=8.8.8.8 mode=quickimage keymap=
MENU LABEL Install CentOS 5.4
TEXT HELP
This mode will allow you install Centos 5.4!
ENDTEXT
LABEL fog.freebsd
kernel boot/freebsd.0
MENU LABEL Install Freebsd 8
TEXT HELP
This mode will allow you install Freebsd 8!
ENDTEXT
LABEL fog.clonezilla
kernel clonezilla/vmlinuz
append initrd=clonezilla/initrd.img boot=live union=aufs noswap noprompt vga=788 netboot=nfs nfsroot=192.168.1.1:/usr/data/clonezilla ocs_lang=”zh_CN.UTF-8″ ocs_live_keymap=”NONE”
MENU LABEL Run Clonezilla
TEXT HELP
This mode will allow you run Clonezilla to Backup/Restore OS!
ENDTEXT
PROMPT 0
TIMEOUT 30

default 里面的设置以后你也可以自已添加其它项目,这里我已包含了 Clonezilla 的启动项。

四、设置 CloneZilla 远程备份服务

下载 clonezilla ISO 文件 http://www.clonezilla.org/download/sourceforge/stable/iso-zip-files.php

加载 ISO 文件

mdconfig -a -t vnode -f /usr/data/clonezilla-live-1.2.4-28-486.iso -u 0
mount -r -t cd9660 /dev/md0 /mnt/clonezilla/

在 /tftpboot 目录下创建一个 clonezilla 目录

mkdir /tftpboot/clonezilla

复制光盘 /live 目录下的 initrd.img 及 vmlinuz 到 /tftpboot/clonezilla 目录下

cp /mnt/clonezilla/live/vmlinuz /tftpboot/clonezilla/
cp /mnt/clonezilla/live/initrd.img /tftpboot/clonezilla/

五、设置 NFS 服务

在 /etc/rc.conf 中加入以下几行

nfs_server_enable=”YES”
mountd_enable=”yes”
rpcbind_enable=”YES”

在 /etc 目录下创建 exports 文件,并加入以下一行

/usr/data/clonezilla /usr/data/freebsd -ro

在 /usr/data 目录创建 clonezilla 目录

mkdir /usr/data/clonezilla

把之前加载到 /mnt/clonezilla 下的 ISO 光盘中的内容全都复制到 /usr/data/clonezilla 目录中

cp -r /mnt/clonezilla/* /usr/data/clonezilla

然后,启动 nfs 服务

/etc/rc.d/rpcbind start
/etc/rc.d/mountd start
/etc/rc.d/nfsd start

然后通过以下命令来查看输出情况

showmount -e

结果应该为

Exports list on localhost:
/usr/data/clonezilla Everyone

另外,你也可以通过以下命令来查看 nfs 的运行状态

nfsstat

注意:如果修改 /etc/exports 后,可通过以下命令进行重新输出

/etc/rc.d/mountd reload

这里的NFS 输出路径与之前 pxelinux.cfg/default 中的 Label 标签设置相联系,主要是指定了 clonezilla netboot 的 nfs 路径,所以这两块必须相匹配,如下。

LABEL Clonezilla Live 
   MENU LABEL Clonezilla Live 
   MENU PASSWD Clonezilla 
   kernel images/Clonezilla/live/vmlinuz 
   append initrd=images/Clonezilla/live/initrd.img boot=live config noswap nolocales edd=on nomodeset ocs_live_run="ocs-live-general" ocs_live_extra_param="" ocs_live_keymap="NONE" ocs_live_batch="no" ocs_lang="zh_TW.UTF-8" vga=788 nosplash  netboot=nfs nfsroot=192.168.1.6:/Clonezilla
MENU LABEL Run Clonezilla
TEXT HELP
This mode will allow you run Clonezilla to Backup/Restore OS!
ENDTEXT

OK ,到这里所有的配置都完成了,试着从 PXE 启动一下 Clonezilla 吧,如果成功的话,你就可以通过它来备份还原系统了。

截图:启动界面

Freebsd上架设PXE Boot服务及CloneZilla远程备份还原服务

六、延伸1:设置可通过 PXE 安装的 CentOS 5

配置 Centos 的PXE 网络安装非常简单,只要把CentOS 安装 ISO 光盘中 /images/pxeboot 目录下的 vmlinuz 及 initrd.img 这两个文件放在 /tftpboot/centos 目录下,然后配置好 pexlinux.cfg/default 的 centos 标签就OK 了,主要是指定好相应文件地址。如下:

LABEL fog.centos
kernel centos/vmlinuz
append initrd=centos/initrd.img ip=dhcp dns=8.8.8.8 mode=quickimage keymap=
MENU LABEL Install CentOS 5.4
TEXT HELP
This mode will allow you install Centos 5.4!
ENDTEXT

七、延伸2:设置可通过 PXE 安装的 Freebsd 8

在 pxelinux 环境下通过 pxe 引导 Freebsd 有点复杂,因为不能通过 DHCP 服务器的 root-path 选项来指定 NFS 引导路径,所以必须通过 TFTP 来加载 freebsd 的引导文件,而且必须把 pxeboot 这个引导文件改成 filename.0 这样格式的文件名,否则不能正常加载引导文件,这应该是 pxelinux 的是一种文件格式规定,所以我们需要重新编译 pxeboot 文件以便可以从 tftp 来加载引导文件,ISO 光盘 /boot/ 目录下的 pxeboot 只能从 NFS 引导。

设置 nfs 输出及 tftp

下载 freebsd ISO 安装盘 下载地址:ftp://ftp.freebsd.org/pub/FreeBSD/releases/i386/ISO-IMAGES/8.0/

fetch ftp://ftp.freebsd.org/pub/FreeBSD/releases/i386/ISO-IMAGES/8.0/8.0-RELEASE-i386-disc1.iso

挂载安装盘

mdconfig -a -t vnode -f /usr/data/8.0-RELEASE-i386-disc1.iso
mount_cd9660 /dev/md0 /mnt/freebsd/

复制 boot 目录到 /tftp 目录下

cp -r /mnt/freebsd/boot /tftp/

解压缩 /tftp/boot 目录中的 mfsroot.gz 文件

cd /tftp/boot
gunzip mfsroot.gz

复制 光盘中所有文件到 /usr/data/freebsd 下

cp -r /mnt/freebsd/* /usr/data/freebsd/

设置 nfs 输出 ,把 /etc/exprots 文件中

/usr/data/clonezilla -ro

改为

/usr/data/clonezilla /usr/data/freebsd -ro

重新加载 exports

/etc/rc.d/mountd reload

用以下命令查看输出是否正确

showmount -e

输出结果应该为

Exports list on localhost:
/usr/data/freebsd Everyone
/usr/data/clonezilla Everyone

重新编译 pxeboot

获取 /usr/src 源代码,然后利用参数编译引导部分,使 pxeboot 能够从 tftp 上加载引导文件

cd /usr/src/sys/boot
make -DLOADER_TFTP_SUPPORT=YES

编译完后,复制 pxeboot 文件到 /tftpboot/boot 目录中,并改名为 freebsd.0

cp /usr/src/sys/boot/i386/pxeldr/pxeboot /tftpboot/boot/freebsd.0

部署 pxelinux 启用选项

编辑 /tftp/pxelinux.cfg/default ,加入以下菜单项

LABEL fog.freebsd
kernel boot/freebsd.0
MENU LABEL Install Freebsd 8
TEXT HELP
This mode will allow you install Freebsd 8!
ENDTEXT

OK ,到此整个配置过程就完成了,试着从 pxe 启动并安装 freebsd 吧,安装的时候记得通过 nfs 方式来安装

截图:

pxe boot

Freebsd上架设PXE Boot服务及CloneZilla远程备份还原服务

 

相关网页:http://www.linuxeden.com/html/softuse/20101129/105663.html

              http://clonezilla.nchc.org.tw/clonezilla-live/livepxe.php

               http://wenku.baidu.com/link?url=rIrNbB8pPdtkN1kqNAXQMKhMLZZaSakbkP8ZOrQfu6TGceYc0FGI7FKAVp4rLNjGdu_NAfospSRt719WT5P7WZX66M7EKisE8LFnaIgevly

               http://blog.ilc.edu.tw/blog/blog/25793/post/78473/470502

 
分享到:
评论

相关推荐

    pxeclonezilla:通过 clonezilla 的网络启动 (PXE) 备份到您的网络(sshfs、samba、nfs 或任何您拥有的)

    通过 Clonezilla 进行 PXE 备份 Ueberall zu ersetzen: $NAME -> Name des Computers; mehrere sind moeglich dann muss dies pro Computer einmal gemacht werden 00-11-22-... -> MAC 地址 von $NAME $SERVER...

    PXE引导再生龙安装Windows操作系统

    简化操作系统安装 PXE 再生龙 Windows操作系统安装

    Clonezilla 再生龙完整版安装与应用

    ### Clonezilla 再生龙完整版安装与应用详解 #### 一、Clonezilla 再生龙简介 Clonezilla是一款开源的磁盘复制与备份工具,主要用于个人计算机或服务器的磁盘克隆、备份与恢复。它支持从一台计算机上创建系统镜像...

    方便的集群网络安装软件clonezilla收藏.doc

    Clonezilla 集群网络安装软件知识点总结 Clonezilla 是一个开源的集群网络安装软件,可以快速地部署和管理大规模的计算机集群。下面是 Clonezilla 的知识点总结: 一、Clonezilla 的特点 Clonezilla 具有以下特点...

    Clonezilla作P2V

    ### Clonezilla进行P2V迁移的操作指南 #### 一、Clonezilla简介 Clonezilla是一款开源的磁盘克隆工具,支持多种操作系统环境下的磁盘备份与恢复操作。它能够高效地将物理机(Physical to Virtual,简称P2V)转换为...

    pxe网络克隆工具,非常好用

    1. **设置服务器**:首先,你需要在一台服务器上配置PXE服务,这包括安装并配置DHCP服务器以提供启动信息,以及设置TFTP(Trivial File Transfer Protocol)服务器来存储启动映像和系统镜像文件。 2. **创建系统...

    Clonezilla的使用

    Clonezilla 使用指南 从 Clonezilla 的使用开始,了解 Clonezilla 的优点,以及如何使用 Clonezilla 进行备份和还原。 Clonezilla 是一个免费的开源磁盘克隆工具,可以用来克隆硬盘、分区、磁盘映像等。 ...

    clonezilla-live-2.8.0-27-amd64.iso

    再生龙(Clonezilla)是一个免费的灾难恢复、硬盘克隆、硬盘映像档制作的部署和解决方案,由台湾的高速网络与计算中心所开发,以GNU通用公共许可协议(GPL)发布。 Clonezilla Live使用户能够将单个计算机的存储介质...

    Clonezilla备份还原Linux

    Clonezilla备份还原Linux系统的优点在于,它能够快速地对整个Linux系统进行备份和还原,且不需要安装任何软件,直接从Live CD或U盘启动即可使用。 Clonezilla支持多种文件系统,包括ext2、ext3、ext4、ReiserFS、XFS...

    PXE+kickstart批量部署操作系统.pdf

    **Cobbler**是一种用于简化PXE和Kickstart安装过程的工具,能够有效地管理整个安装流程。 - **1.4.1 Cobbler介绍**:Cobbler 是一款开源工具,旨在简化操作系统的大规模部署。它提供了图形界面和命令行接口,允许...

    最新版免费开源Clonezilla克隆还原工具

    Clonezilla是类似于TrueImage®或NortonGhost®的分区和磁盘映像/克隆程序。 它可以帮助您进行系统部署,裸机备份和恢复。 可以使用三种类型的Clonezilla:Clonezilla live,Clonezilla lite服务器和Clonezilla SE...

    clonezilla虚拟机备份与还原.doc

    在备份虚拟机之前,需要首先将 Clonezilla 安装到 U 盘中,然后从 U 盘启动虚拟机。这样可以确保虚拟机的磁盘镜像被正确地备份。 镜像设置 在 Clonezilla 中,用户可以设置备份的镜像文件的格式、压缩方式和存储...

    How to use Clonezilla Live with XenServer v1.0 (Offline)

    Clonezilla Live是一个可启动的克隆和镜像解决方案,它可以从USB闪存驱动器、光盘或PXE服务器启动。 XenServer是由Citrix Systems开发的服务器虚拟化解决方案,它允许用户在XenServer环境中执行物理到虚拟(P2V)...

    clonezilla-live-2.7.0-10-amd64.zip

    【标题】"clonezilla-live-2.7.0-10-amd64.zip" 提供的是一个基于 Linux 的开源克隆工具——再生龙(Clonezilla Live)的安装镜像。这个版本号2.7.0-10是针对AMD64架构(也称为x86_64)优化的,适用于现代的64位...

    网页 PXE网络启动WINPE及网络GHOST

    WINPE是微软提供的一种轻量级操作系统,它包含了一些基本的服务和工具,可以用来安装、配置或修复Windows操作系统。WINPE通常用于系统维护、数据恢复和自动化部署等场景。 首先,为了实现PXE网络启动,你需要一个...

    clonezilla使用教程

    clonezilla

    clonezilla-live-20220103-impish-amd64.iso

    Clonezilla is a partition and disk imaging/cloning program similar to True Image or Norton Ghost。 Clonezilla,中文名再生龙,是一个用于系统备份和还原的开源免费工具。类似以Ghost 或者 Acronis True Image...

    clonezilla-live-20160210-wily-amd64(Linux和win32/64).iso

    Clonezilla包含 Linux和MS Windows 版本 Clonezilla分区和磁盘映像/克隆程序 Clonezilla是一个免费的灾难恢复、硬盘克隆、硬盘映像档制作的部署和解决方案,由台湾的国家高速网络与计算中心(国网中心)所开发,...

Global site tag (gtag.js) - Google Analytics