DRBL/Clonezilla 進階課程 孫振凱蔡育欽 http://drbl.nchc.org.tw, http://drbl.sourceforge.net http://clonezilla.nchc.org.tw, http://clonezilla.org.tw 國家高速網路與計算中心 National Center for High-Performance Computing (NCHC) Q2, 2011
Free Software Lab, NCHC, Taiwan 2 Polling 是電腦教室或網路管理員? 曾經使用 Linux 經驗? 桌面使用? 伺服器使用? 曾經使用過無碟系統? 曾經安裝 使用 DRBL? 曾經使用過硬碟備份工具? 曾經安裝使用 Clonezilla SE? Clonezilla Live?
Outline : Day 1 網路調校 DRBL/Clonezilla 系統安裝 DRBL 原理與架構介紹 在 virtualbox 上建置 drbl 開發與測試環境 進階使用 : DRBL pxelinux 的設定, 包含指定 IP address 或 MAC address 作法, 修改開機選單, 抽換背景圖片 在 DRBL 環境下設置網路安裝檔案 DRBL SSI mode 的使用與修改 兩個 DHCP server 並存作法 DRBL client 群組管理 將 BIOS 更新程式放進 freedos 以便透過 PXE 開機更新 BISO 的作法 在 DRBL server 上製作 Linux 套件網路安裝隨身碟 如何在 DRBL 上建置 SAN (AoE, iscsi) 開機環境 Free Software Lab, NCHC, Taiwan 3
Free Software Lab, NCHC, Taiwan 4 Outline : Day 2 進階使用 : Clonezilla SE /Clonezilla Live Clonezilla live 與 Clonezilla SE (Server Edition) 原理與架構介紹 Clonezilla box mode 介紹 Unicast, multicast, broadcast clone 介紹與注意事項 如何轉換印象檔中的硬碟代號 PXE 開啟 Clonezilla live 作法 如何製作 clonezilla live 開機 usb 隨身碟或硬碟 我要怎麼自己從無到有做一個 Clonezilla live? 客製化 Clonezilla live 製作 有沒有可能把 Clonezilla Live 放到硬碟中來執行? 利用 virtualbox 來做 Clonezilla 開發與測試環境
Free Software Lab, NCHC, Taiwan 5 線上文件 管理與使用 -> 四 進階使用 http://drbl.nchc.org.tw/advanced
環境準備 至 GDM 使用一般使用者登入 Password: ilovedrbl 如果要新增帳號 加入 admin 群組 export LC_ALL=C adduser [your account] adduser [your account] admin 變更 root 密碼 設定對內網路卡 auto eth? iface eth? inet static address 192.168.101.254 netmask 255.255.255.0 Free Software Lab, NCHC, Taiwan 6
Free Software Lab, NCHC, Taiwan 7 實驗平台環境 DRBL Server eth0 dhcp Gateway-> Internet DRBL client eth1 192.168.101.254 Network link eth0 192.168.101.x eth1
DRBL 安裝流程圖 Start Step 1 : 安裝支援之 Linux 作業系統與應用程式 Step 2 : 安裝 DRBL 主程式 Debian base: Debian, Ubuntu, B2D Redhat base: Redhat, Fedora, Centos, RHEL, Scientific Linux, SuSe, OpenSuSE Step 3 : 安裝 DRBL 所需服務 環境能否提供網路 Yes 使用 /opt/drbl/sbin/drblsrv No 使用 /opt/drbl/sbin/drblsrv-offline Step 4 : 佈署用戶端環境 Question: drblsrv 與 drblpush 差異與使用時機 drblsrv-offline 使用實機 Stop Free Software Lab, NCHC, Taiwan 8
Clonezilla 實務技術課程 Free Software Lab, NCHC, Taiwan 9 Exercise Task : 安裝 Full DRBL mode/ full Clonezilla mode Scenario Full DRBL mode/ full Clonezilla mode 使用 server 核心 : 注意 pae 支援 不鎖網卡 Client : 實體機器 Check point 確認 client 能以 DRBL client 模式開啟
DRBL 進階使用 10
Outline 網路調校 DRBL/Clonezilla 系統安裝 DRBL 原理與架構介紹 在 virtualbox 上建置 drbl 開發與測試環境 進階使用 : DRBL pxelinux 的設定, 包含指定 IP address 或 MAC address 作法, 修改開機選單, 抽換背景圖片 在 DRBL 環境下設置網路安裝檔案 DRBL SSI mode 的使用與修改 兩個 DHCP server 並存作法 DRBL client 群組管理 將 BIOS 更新程式放進 freedos 以便透過 PXE 開機更新 BISO 的作法 在 DRBL server 上製作 Linux 套件網路安裝隨身碟 如何在 DRBL 上建置 SAN (AoE, iscsi) 開機環境 Free Software Lab, NCHC, Taiwan 11
DRBL 系統架構 ( 一 ) g int oob EXP Client site BIOS 1.DHCP request BIOS 3.Request for pxelinux.0 PXE Boot 5.Request for kernel, initrd kernel Boot 7.Run initrd then mount NFS for necessary user login 9. account verify Free Software Lab, NCHC, Taiwan Ethernet 1 2 3 4 5 6 7,8 9,10 Server site DHCP 2. Network info, nextserver, PXE files TFTP 4. return pxelinux.0 TFTP 6. return Kernel, initrd NFS 8. return NFS mount NIS 10. return authentication PXE 所必須的之服務 DHCP service tftp service 相關設定檔 : /etc/dhcp3/dhcpd.conf /etc/default/tftpd-hpa 12
Linux boot process overview 觀察 client 檔案系統 Server service DHCP service tftp service nfs service showmount -a nis service Free Software Lab, NCHC, Taiwan 13
Clonezilla 實務技術課程 Free Software Lab, NCHC, Taiwan 14 Exercise Task : DRBL 環境額外空間 (server/client) 掛載 Reference: http://drbl.nchc.org.tw/one4all/desktop/ 步驟三 Scenario A. Server 上分享 /work1 ext3 B. Client 預設掛載 /localwork ext3 C. Default to startup apache2 service Check point 確認 client 能自動掛載 server 與 local space
Free Software Lab, NCHC, Taiwan 15 DRBL/Clonezilla 模式比較 Full DRBL DRBL SSI Full Clonezilla Clonezilla Box Clonezillalive /etc, /var of client Files in /etc and /var of client after reboot Extra space in server/client Max client #/ethernet card in server NFS-based Tmpfs-based NFS-based Tmpfs-based (tar ball) Tmpfs-based (Squashfs) Kept Gone Kept Gone Gone ~ 50-100 MB* 0 ~ 50-100 MB* 0 0 253 253 253 253 253 * Depends on the packages installed in the server
Outline 網路調校 DRBL/Clonezilla 系統安裝 DRBL 原理與架構介紹 在 virtualbox 上建置 drbl 開發與測試環境 進階使用 : DRBL pxelinux 的設定, 包含指定 IP address 或 MAC address 作法, 修改開機選單, 抽換背景圖片 在 DRBL 環境下設置網路安裝檔案 DRBL SSI mode 的使用與修改 兩個 DHCP server 並存作法 DRBL client 群組管理 將 BIOS 更新程式放進 freedos 以便透過 PXE 開機更新 BISO 的作法 在 DRBL server 上製作 Linux 套件網路安裝隨身碟 如何在 DRBL 上建置 SAN (AoE, iscsi) 開機環境 Free Software Lab, NCHC, Taiwan 16
Free Software Lab, NCHC, Taiwan 17 實驗環境 (Host+guest machine) Gateway-> Internet DRBL Server eth0 192.168.62.x 虛擬機器中的網路卡模式與注意事項 : NAT Bridge Internal network Host-only network eth1 192.168.101.254 client Virtual Machine Network link client DRBL client eth0 192.168.101.x eth0 192.168.101.x eth0 192.168.101.x
Clonezilla 實務技術課程 Free Software Lab, NCHC, Taiwan 18 Exercise Task I: 切換 Full DRBL/SSI mode Task II : Install Virtualbox ose 新增兩個 guest machine 串接到 host machine 的 eth1 將新增的兩台 guest machine 以鎖 mac address 方式重新佈署
Outline 網路調校 DRBL/Clonezilla 系統安裝 DRBL 原理與架構介紹 在 virtualbox 上建置 drbl 開發與測試環境 pxelinux 的設定, 包含指定 IP address 或 MAC address 作法, 修改開機選單, 抽換背景圖片 在 DRBL 環境下設置網路安裝檔案 DRBL SSI mode 的使用與修改 兩個 DHCP server 並存作法 DRBL client 群組管理 將 BIOS 更新程式放進 freedos 以便透過 PXE 開機更新 BISO 的作法 在 DRBL server 上製作 Linux 套件網路安裝隨身碟 如何在 DRBL 上建置 SAN (AoE, iscsi) 開機環境 Free Software Lab, NCHC, Taiwan 19
Free Software Lab, NCHC, Taiwan 20 Outline 網路調校 DRBL/Clonezilla 系統安裝 DRBL 原理與架構介紹 在 virtualbox 上建置 drbl 開發與測試環境 pxelinux 的設定, 包含指定 IP address 或 MAC address 作法, 修改開機選單, 抽換背景圖片 在 DRBL 環境下設置網路安裝檔案 將 BIOS 更新程式放進 freedos 以便透過 PXE 開機更新 BISO 的作法 DRBL client 群組管理 DRBL SSI mode 的使用與修改 兩個 DHCP server 並存作法 在 DRBL server 上製作 Linux 套件網路安裝隨身碟 如何在 DRBL 上建置 SAN (AoE, iscsi) 開機環境
Exercise pxelinux 的設定, 包含指定 IP address 或 MAC address 作法, 修改開機選單, 抽換背景圖片 手動修改開機選單 變更背景圖片 在 DRBL 環境下設置網路安裝檔案 加入 Debian, Ubuntu, Centos 網路安裝檔案 變更開機選單 Clonezilla 實務技術課程 Free Software Lab, NCHC, Taiwan 21
Free Software Lab, NCHC, Taiwan 22 Outline 網路調校 DRBL/Clonezilla 系統安裝 DRBL 原理與架構介紹 在 virtualbox 上建置 drbl 開發與測試環境 pxelinux 的設定, 包含指定 IP address 或 MAC address 作法, 修改開機選單, 抽換背景圖片 在 DRBL 環境下設置網路安裝檔案 DRBL client 群組管理 將 BIOS 更新程式放進 freedos 以便透過 PXE 開機更新 BISO 的作法 DRBL SSI mode 的使用與修改 兩個 DHCP server 並存作法 在 DRBL server 上製作 Linux 套件網路安裝隨身碟 如何在 DRBL 上建置 SAN (AoE, iscsi) 開機環境
Free Software Lab, NCHC, Taiwan 23 Outline 網路調校 DRBL/Clonezilla 系統安裝 DRBL 原理與架構介紹 在 virtualbox 上建置 drbl 開發與測試環境 pxelinux 的設定, 包含指定 IP address 或 MAC address 作法, 修改開機選單, 抽換背景圖片 在 DRBL 環境下設置網路安裝檔案 DRBL client 群組管理 將 BIOS 更新程式放進 freedos 以便透過 PXE 開機更新 BISO 的作法 DRBL SSI mode 的使用與修改 兩個 DHCP server 並存作法 在 DRBL server 上製作 Linux 套件網路安裝隨身碟 如何在 DRBL 上建置 SAN (AoE, iscsi) 開機環境
Clonezilla 實務技術課程 Free Software Lab, NCHC, Taiwan 24 Exercise 將 BIOS 更新程式放進 freedos 以便透過 PXE 開機更新 BISO 的作法 以 ASUS Eee PC 900 軔體更新為例 DRBL client 群組管理 根據 ip 來將 client 分群
Free Software Lab, NCHC, Taiwan 25 Outline 網路調校 DRBL/Clonezilla 系統安裝 DRBL 原理與架構介紹 在 virtualbox 上建置 drbl 開發與測試環境 pxelinux 的設定, 包含指定 IP address 或 MAC address 作法, 修改開機選單, 抽換背景圖片 在 DRBL 環境下設置網路安裝檔案 將 BIOS 更新程式放進 freedos 以便透過 PXE 開機更新 BISO 的作法 DRBL client 群組管理 DRBL SSI mode 的使用與修改 兩個 DHCP server 並存作法 在 DRBL server 上製作 Linux 套件網路安裝隨身碟 如何在 DRBL 上建置 SAN (AoE, iscsi) 開機環境
Free Software Lab, NCHC, Taiwan 26 Outline 網路調校 DRBL/Clonezilla 系統安裝 DRBL 原理與架構介紹 在 virtualbox 上建置 drbl 開發與測試環境 pxelinux 的設定, 包含指定 IP address 或 MAC address 作法, 修改開機選單, 抽換背景圖片 在 DRBL 環境下設置網路安裝檔案 將 BIOS 更新程式放進 freedos 以便透過 PXE 開機更新 BISO 的作法 DRBL client 群組管理 DRBL SSI mode 的使用與修改 兩個 DHCP server 並存作法 在 DRBL server 上製作 Linux 套件網路安裝隨身碟 如何在 DRBL 上建置 SAN (AoE, iscsi) 開機環境
Free Software Lab, NCHC, Taiwan 27 Outline 網路調校 DRBL/Clonezilla 系統安裝 DRBL 原理與架構介紹 在 virtualbox 上建置 drbl 開發與測試環境 pxelinux 的設定, 包含指定 IP address 或 MAC address 作法, 修改開機選單, 抽換背景圖片 在 DRBL 環境下設置網路安裝檔案 將 BIOS 更新程式放進 freedos 以便透過 PXE 開機更新 BISO 的作法 DRBL client 群組管理 DRBL SSI mode 的使用與修改 兩個 DHCP server 並存作法 在 DRBL server 上製作 Linux 套件網路安裝隨身碟 如何在 DRBL 上建置 SAN (AoE, iscsi) 開機環境
Clonezilla 進階使用 28
Free Software Lab, NCHC, Taiwan 29 Outline 進階使用 : Clonezilla SE /Clonezilla Live Clonezilla live 與 Clonezilla SE (Server Edition) 原理與架構介紹 Clonezilla box mode 介紹 Unicast, multicast, broadcast clone 介紹與注意事項 如何轉換印象檔中的硬碟代號 PXE 開啟 Clonezilla live 作法 如何製作 clonezilla live 開機 usb 隨身碟或硬碟 我要怎麼自己從無到有做一個 Clonezilla live? 客製化 Clonezilla live 製作 有沒有可能把 Clonezilla Live 放到硬碟中來執行? 利用 virtualbox 來做 Clonezilla 開發與測試環境
再生龍 Clonezilla Clonezilla [OCS (Opensource Clone System)] Clonezilla 是一完整的硬碟資料複製的工具, 類似 Ghost (Symantec) 或是 Rembo(Acquired by IBM Tivoli software)/ Acronis (True Image) 整合 partclone(http://partclone.org/),partimage (http://www.partimage.org), ntfsclone 與 udpcast 1 ( http://udpcast.linux.lu/) 處理元件包含 : 實體資料 : 分割區資料 LVM2 開機載入 (MBR:446+64+2 EFI) 隱藏磁區 用於裸機 (bare material) 還原, 不同於 與以檔案為基礎的備份方式 : 差異備份 還原卡模式 兩種釋出版本 註 1: 使用在 Server edition Live edition : 合單機 個人使用, 作為備份 還原單一機器使用 Server edition (SE) : 適合大量批次還原, 集中式管理, 如 : 電腦教室管理 大量出機生產線... Free Software Lab, NCHC, Taiwan 30
Free Software Lab, NCHC, Taiwan 31 再生龍 Clonezilla GPL 支援儲存與還原不同作業系統 GNU/Linux, MS Windows, Mac OS X, BSD, VMWare EMS File system: ext2/3/4, reiserfs3/4, xfs, jfs, btrfs 1, ntfs, vfat,hfs+, UFS+, VMFS Supports LVM2 無法辨識之檔案系統使用 dd Block base 備份方式 只備份有使用之區塊, 提高備份還原效能 Smart copying, 支援 Grub 1/2 ( 恢復 重建 ) 支援 serial console 檔案式架構之印象檔 : 格式通透 公開 標準格式 ; 易於彈性調整 支援 Multicast 1 : 適合大量佈署 能結合使用 Live edition 1 註 1: 使用在 Server edition
檔案系統支援比較表 Linux File System MAC MS Window BSD Vmware Esx(i) ext2/3 ext4 reiserfs reiser4 xfs jfs btrfs HFS+ FAT NTFS UFS+ VMFS Clonezilla 1.2.6-40 FOG 029 Fsarchiver 0.6.10 G4L 0.34 Mondo Rescue 2.2.9.4 Partimage 0.6.9 True Image 2011 Ghost 15.0 Free Software Lab, NCHC, Taiwan Y Y Y Y Y Y Y Y Y Y Y Y Y N Y N Y Y N N Y Y N N Y Y Y Y Y Y Y N N Y N N Y N Y N Y Y N N Y Y N N Y Y Y Y Y Y Y N Y N N N Y N Y N Y Y N N Y Y N N Y Y N N N N N N Y Y N Y Y N N N N N N N Y Y N N 32
Clonezilla 實務技術課程 Free Software Lab, NCHC, Taiwan 33 Execrise Task: 利用 Clonezilla SE 做 save disk Save disk/partation Now in server Later in client Select in client
Free Software Lab, NCHC, Taiwan 34 Outline 進階使用 : Clonezilla SE /Clonezilla Live Clonezilla live 與 Clonezilla SE (Server Edition) 原理與架構介紹 Unicast, multicast, broadcast clone 介紹與注意事項 Clonezilla box mode 介紹 如何轉換印象檔中的硬碟代號 PXE 開啟 Clonezilla live 作法 如何製作 clonezilla live 開機 usb 隨身碟或硬碟 我要怎麼自己從無到有做一個 Clonezilla live? 客製化 Clonezilla live 製作 有沒有可能把 Clonezilla Live 放到硬碟中來執行? 利用 virtualbox 來做 Clonezilla 開發與測試環境
Clonezilla 實務技術課程 Free Software Lab, NCHC, Taiwan 35 Execrise 利用 Clonezilla SE 採 multicast 機制來 restore guest machine wget http://drbl.nchc.org.tw/course.arch/thin lenny.tar sudo tar thin lenny.tar C /home/partimag dcs 切換 restore disk use multicast 問題? 如何解決? 利用 cnvt ocs dev 轉換磁碟代號 sudo /opt/drbl/sbin/cnvt ocs dev xp.vbox.4g hda sda dcs 切換 restore disk use multicast
Free Software Lab, NCHC, Taiwan 36 Outline 進階使用 : Clonezilla SE /Clonezilla Live Clonezilla live 與 Clonezilla SE (Server Edition) 原理與架構介紹 Unicast, multicast, broadcast clone 介紹與注意事項 Clonezilla Full/Box/use Live mode 介紹 如何轉換印象檔中的硬碟代號 PXE 開啟 Clonezilla live 作法 如何製作 clonezilla live 開機 usb 隨身碟或硬碟 我要怎麼自己從無到有做一個 Clonezilla live? 客製化 Clonezilla live 製作 有沒有可能把 Clonezilla Live 放到硬碟中來執行? 利用 virtualbox 來做 Clonezilla 開發與測試環境
Free Software Lab, NCHC, Taiwan 37 DRBL/Clonezilla 各類模式比較 Full DRBL DRBL SSI Full Clonezilla Clonezilla Box Clonezillalive /etc, /var of client Files in /etc and /var of client after reboot Extra space in server/client Max client #/ethernet card in server NFS-based Tmpfs-based NFS-based Tmpfs-based (tar ball) Tmpfs-based (Squashfs) Kept Gone Kept Gone Gone ~ 50-100 MB* 0 ~ 50-100 MB* 0 0 253 253 253 253 253 * Depends on the packages installed in the server
Clonezilla 實務技術課程 Free Software Lab, NCHC, Taiwan 38 Execrise 切換至 Clonezilla Box 模式 dcs > more > clonezila mode > use box mode 切換至 use Clonezilla live as OS 模式 /opt/drbl/sbin/drbl ocs live prep i clonezilla live version.iso 用 dcs 指定 save / restore 觀察 pxed 開機參數 移除 /opt/drbl/sbin/drbl ocs live prep u 參數群 : ocs sr / Clonezilla live 自己的開機參數
Clonezilla 實務技術課程 Free Software Lab, NCHC, Taiwan 39 以 save disk 為例 Execrise Non live mode (Full/Box) : ocs_opt=" l en_us.utf 8 use partclone clone hidden data p reboot z1p i 1000000 savedisk 2011 05 10 23 img sda" 真正執行 ocs sr $ocs_opt Live mode : ocs_live_extra_param="" ocs_live_keymap="none" ocs_live_batch="no" ocs_lang="en_us.utf 8" nosplash noprompt netboot=nfs nfsroot=192.168.11.254:/tftpboot/node_root/clonezilla live/ ocs_server="192.168.11.254" ocs_daemonon="ssh" ocs_prerun="mount t nfs 192.168.0.29:/home/partimag /home/partimag/" ocs_live_run="ocs sr l en_us.utf 8 usepartclone clone hidden data p reboot z1p i 1000000 savedisk 2011 05 10 23 img sda" 以 restore disk 為例 Live mode : ocs_live_extra_param="" ocs_live_keymap="none" ocs_live_batch="no" ocs_lang="en_us.utf 8" nosplash noprompt netboot=nfs nfsroot=192.168.11.254:/tftpboot/node_root/clonezilla live/ ocs_server="192.168.11.254" ocs_daemonon="ssh" ocs_prerun="mount t nfs 192.168.0.29:/home/partimag /home/partimag/" ocs_live_run="ocs sr l en_us.utf 8 g auto e1 auto e2 r clone hidden data p reboot max time to wait 300 mcast port 2232 multicast_restoredisk 2011 01 24 thin.maverick sda" http://clonezilla.nchc.org.tw/clonezilla-live/doc/fine-print.php?path=./99_misc/00_live-initramfsmanual.doc#00_live-initramfs-manual.doc
Free Software Lab, NCHC, Taiwan 40 Outline 進階使用 : Clonezilla SE /Clonezilla Live Clonezilla live 與 Clonezilla SE (Server Edition) 原理與架構介紹 Clonezilla box mode 介紹 Unicast, multicast, broadcast clone 介紹與注意事項 如何轉換印象檔中的硬碟代號 PXE 開啟 Clonezilla live 作法 如何製作 clonezilla live 開機 usb 隨身碟或硬碟 我要怎麼自己從無到有做一個 Clonezilla live? 客製化 Clonezilla live 製作 有沒有可能把 Clonezilla Live 放到硬碟中來執行? 利用 virtualbox 來做 Clonezilla 開發與測試環境
Free Software Lab, NCHC, Taiwan 41 Outline 進階使用 : Clonezilla SE /Clonezilla Live Clonezilla live 與 Clonezilla SE (Server Edition) 原理與架構介紹 Clonezilla box mode 介紹 Unicast, multicast, broadcast clone 介紹與注意事項 如何轉換印象檔中的硬碟代號 PXE 開啟 Clonezilla live 作法 如何製作 clonezilla live 開機 usb 隨身碟或硬碟 我要怎麼自己從無到有做一個 Clonezilla live? 客製化 Clonezilla live 製作 有沒有可能把 Clonezilla Live 放到硬碟中來執行? 利用 virtualbox 來做 Clonezilla 開發與測試環境
Note Clonezilla live 使用 save/restore Onethefly Clonezila live 客制化 Include image Include image, customized script Debian live templet customize Free Software Lab, NCHC, Taiwan 42
Free Software Lab, NCHC, Taiwan 43 實驗環境 (Host+ 虛擬網卡裝置 ) DRBL Server eth0 192.168.62.x Gateway-> Internet DRBL client eth1 192.168.101.254 Network link eth0 192.168.101.x tap0 192.168.123.254 eth1