Pages

Subscribe:

Ads 468x60px

Labels

顯示具有 無硬碟 標籤的文章。 顯示所有文章
顯示具有 無硬碟 標籤的文章。 顯示所有文章

2015年9月7日 星期一

如何使用 Synology NAS 實作 PXE

資料來源


概述

DiskStation 支援 TFTP 並搭載 Synology DHCP Server 套件,可成為開機前執行環境 (Preboot Execution Environment, PXE) 設定中不可或缺的重要角色。透過 PXE,用戶端裝置可使用儲存在 DiskStation 上的網路啟動載入器程式來開機,不需透過本機儲存空間上的作業系統來啟動。對於欲在大型部署環境下集中並簡化管理程序的企業來說,實為一套理想的解決方案。

本文將引導您啟動 TFTP 服務並透過 DiskStation 設定 PXE。
注意:本文假設您已具備程式或網路管理之經驗。

目錄

  1. 什麼是 PXE?
  2. 開始進行之前的準備
  3. 設定 PXE

1.什麼是 PXE?

開機前執行環境 (Preboot Execution Environment, PXE) 可讓裝置經由網路開機,無須透過本機儲存空間上的作業系統來啟動。用戶端裝置不需使用其本機儲存空間上的作業系統,即能透過 Synology NAS 上的網路啟動載入器程式 (Network bootstrap program, NBP) 進行開機。
在此種環境下,您可在 Synology NAS 上為用戶端裝置安裝作業系統,不必攜帶一疊安裝光碟、實際前往每台用戶端 PC。設定一台新的用戶端 PC 就跟將其連上網路並開啟電源一樣簡單。此方式可大幅節省管理時間。
若要實作 PXE,您需將網路啟動載入器程式儲存在 Synology NAS 任一個您所選的資料夾中。修改現有 DHCP 伺服器設定以將用戶端裝置重新導至正確的檔案路徑之後,用戶端裝置就能透過 TFTP 存取網路啟動載入器程式。另一個作法是安裝 Synology DHCP Server 套件,便可在同一台 Synology NAS 上提供 DHCP 及 TFTP 服務,從而實作一套多合一 PXE 解決方案。

2.開始進行之前的準備

在您開始進行之前,請執行下列操作:
  • 架設 DiskStation 並安裝 Synology DiskStation Manager (DSM)。
  • 建立至少一個儲存空間 (參見此處) 及共用資料夾 (參見此處)。
  • 確定您的用戶端裝置支援 PXE。
欲瞭解基本硬體、軟體設定的相關資訊,請參閱 Synology 產品的快速安裝指南。您也可以參閱 Synology DiskStation 使用手冊來取得與本文主題相關的額外資訊。兩者皆可於 Synology 下載中心取得。

3.設定 PXE

在下列區塊中,我們將介紹兩種能讓 DiskStation 協助您實作 PXE 的方式:

3.1 透過外部 DHCP 伺服器在 DiskStation 上設定 PXE 及 TFTP 服務

簡單式檔案傳輸通訊協定 (Trivial File Transfer Protocol, TFTP) 為一套簡單的檔案傳輸通訊協定,經常用來將網路啟動載入器程式傳輸至 PXE 用戶端裝置。啟動 DiskStation 上的 TFTP 服務便可將網路啟動載入器程式傳輸至用戶端裝置。用戶端裝置與現有的 DHCP 伺服器結合後,就能取得 DiskStation 上儲存的網路啟動載入器程式並用其開機。下方的圖表 1 說明此種 PXE 設定下各裝置所扮演的角色。
圖表 1 說明此種 PXE 設定下不可或缺的三種裝置。
  1. DHCP 伺服器為用戶端裝置提供 TFTP 伺服器的 IP 位址及網路啟動載入器程式資訊 (例如檔案路徑等)。
  2. TFTP 伺服器 (亦即您的 DiskStation) 透過 TFTP 將網路啟動載入器程式傳輸至用戶端裝置。
  3. 用戶端裝置使用網路啟動載入器程式開機。
若要在 DiskStation 上啟動 TFTP:
  1. 前往主選單 > 控制台 > 檔案服務,並選擇 TFTP/PXE 頁籤。
  2. 勾選啟動 TFTP 服務
  3. 在 TFTP 根目錄區塊,選擇您存放網路啟動載入器程式及用戶端裝置開機所需之全部檔案的資料夾。(您的設定及環境可能會與下列例子有所不同。)
  4. 按一下套用來儲存設定。
  5. 登入 DHCP 伺服器並完成網路的正確設定。(此外,您也可以參考下方區塊來在同一台 DiskStation 上設定 DHCP Server 並完成 PXE。)
  6. 開啟用戶端裝置的電源。您現在便能使用 PXE 來使其開機。

3.2 在同一台 DiskStation 上設定 DHCP Server 並實作 PXE

如果您希望使用 DiskStation 同時提供 TFTP 及 DHCP 服務,您可前往套件中心安裝 Synology DHCP Server 套件。在執行 DHCP Server 的情況下,只需一台 DiskStation 便能提供 PXE 必要的服務,因此可簡化您的環境設定。圖表 2 說明此種 PXE 設定下各裝置所扮演的角色。
圖表 2 說明在一台 DiskStation 上執行 DHCP Server 並實作 PXE 時各裝置所扮演的角色。
  1. TFTP + DHCP 伺服器 (也就是您的 DiskStation) 可為用戶端裝置提供網路啟動載入器程式的資訊 (例如檔案路徑等)。
  2. 用戶端裝置使用網路啟動載入器程式開機。
若要在 DiskStation 上設定 DHCP 伺服器:

  1. 前往主選單 > 控制台 > 檔案服務,並選擇 TFTP/PXE 頁籤。
  2. 勾選為 PXE 在此伺服器上設定 DHCP 服務。若您尚未安裝 DHCP Server,您將接到前往套件中心安裝 DHCP Server 的提示。
  3. 開機載入器區塊中,選擇您前面所指定之 TFTP 根目錄內的網路啟動載入器程式。(您的設定及環境可能會與下列例子有所不同。)
  4. 正確設定 DHCP 子網路。IP 位址會根據這些設定分配給 PXE 用戶。
  5. 開啟用戶端裝置的電源。您現在便能使用 PXE 來使其開機。

2015年9月1日 星期二

DRBL+winroll可以自動加入AD了

資料來源


DRBL+winroll可以自動加入AD了

文章由 bunker9075 » 週二 11月 08, 2011 2:27 pm
各位原台中縣的資訊夥伴:
大家好!原來我們的資訊環境很多都是:REMBO+WIN2003+WINXP+AD管理電腦教室(其實真的是一個很完美的環境),後來因為REMBO被併走,再加上CLIENT端的os漸漸換成win7,所以作業系統大量部署這一塊大家都自己想辦法解決!為了解決rembo不再支援win7這個問題,我決定不再求助付費軟體,怕的就是以後又像rembo一樣,控制權操在他人手裡,這幾個月來一直鑽研國網中心的drbl,發現他的效能真的很好,唯一無法與rembo相比的是client端無法自動加入ad,所以從今年六月開始,就不斷的寫email去盧國網中心的開發人員,想不到他們竟然會理我這個無名小卒,經過數個月的郵件溝通,現在DRBL+winroll也可以做到像rembo一樣自動加入ad了 :lol: !目前我的測試環境如下:
server端:ubuntu10.10_server版+drbl_stable版
client端:winxp+winroll-v1.3.0-149
AD:WIN2003_SERVER
早上用acerpower_m6作大量部署的測試已經成功,真的可以像rembo一樣派送了!目前還有一些系統依序要做測試,:
WIN2008+WIN7環境
WIN2003+WINXP環境
WIN2003+WIN7環境
2008+WINXP環境
如果也想走此一解決方案的夥伴,建議您裝DRBL的server最好採用ubuntu,因為drbl是去找os裡的網卡驅動來做pxe動作(路徑:/lib/modules/2.6.35-22-generic-pae(實際到該路徑看核心名稱為何?)/kernel/drivers/net,一般我們習慣用的centos包的網卡驅動太少了)
最後,不知各位資訊夥伴需不需要我再提供進一步的drbl經驗,也許各位都已經用三個小朋友解決作業系統大量部署問題了,畢竟作這種系統的廠商很多,只是明年開始就沒有電腦維護費了,而drbl效能又很好,不用實在可惜!
bunker9075
 
文章: 477
註冊時間: 週三 3月 03, 2004 8:16 pm
來自: 社口國小

在硬碟上一次安裝ezgo、win7、conezilla live及一鍵還原備份功能選單

資料來源

我的電腦教室系統主要是利用phantosys來管理,phantosys的好處是支援win xp ,win 7 32bits 、win7 64 bits及Linux,因為我們的電腦教室授權是phantosys lite版,只能支援2個主要的root 映像檔,每個root可以分4層分支系統,所以我們的電腦教室一個root映像檔是win7,一個root 映像是ezgo9,phantosys的server用的等級不用太高,像我們是server是用core 2 duo,硬碟也是一般的硬碟,網卡也是內建的Giga,交換器是全giga,線是用cate6,這樣環境下,跑得還變順的。
client可以無硬碟方式執行,或是利用硬碟建cache,不過有建cache的話開機速度會比較快。

雖然這樣的系統好管理,但是很怕哪一天server掛點或交換器出包,那電腦課就準備開天窗了,所以我一直在想硬碟的系統要如何建置,除了方便我派送外也要方便我管理,那clonezilla和DRBL當然是不二人選。

首先,我規畫至少要安裝二個作業系統,一個是linux,一個是windows,另外也要在硬碟安裝clonezilla live,這樣我就不需要用光碟或usb開機載入clonezilla live,最好開機選單也做個即時還原功能,若系統亂了就請學生選還原,就可以將系統還原。

所以,我的硬碟規畫是:
sda1:win7
sda2:win7的儲存空間
sda3:linux的 /
sda5:linux的/home
sda6:linux的swap
sda7:clonezilla live安裝區

另外,也要留至少30GB的未配置區給phantosys作cache用

安裝順序是:
  1. 先用Gparted Live分割磁區,但要注意先不要留未配置區,因為win7安裝時會在未配置區安裝100MB的資料,這對於到時要建立還原映像檔時會很麻煩,所以我會只建二個partition,第一個是給win7
  2. 安裝win7到第一個分割區
  3. 然後,會再用Gparted Live 將第二分割區拿掉,再建立主分割區[sda2,sda3],延伸分割區[sda5,sda6,sda7]
  4. 將sda2格式化為ntfs
  5. 安裝ezgo9,sda3為/,sda5為/home,sda6為swap,sda7格式化ext3並留待安裝clonezilla live
  6. 安裝ezgo9後,系統就會建立一份多重開機選單
  7. 進入ezgo9後:修改root密碼,並設定開機預設項目,參考http://kuotzurung.blogspot.tw/2012/03/ezgo9clonezilla-live.html
  8. 安裝clonezilla live 到sda7, mount /dev/sda7 /mnt , 下載Clonezilla live的zip檔,將所有檔案解開到/mnt, 將/mnt/下的目錄"live"改成"live-hd"
  9. 修改 /etc/grub.d/40_custom,將clonezilla live加到開機選單
    ================================================menuentry "Clonezilla" {set root=(hd0,7)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/sda7 toram=filesystem.squashfsinitrd /live-hd/initrd.img}================================================注意: 這邊grub 2的開機參數,為了要顯示雙引號"在/proc/cmdline 中,雙引號"前面都要加上\。接著重跑update-grub2,不過我在執行上遇到要先執行update-grub2再執行update-grub 
  10. 重開機後,就可以在選單選clonezilla live開機,建立win7的映像檔到/sda2,映像檔我命名為win7-backup,同樣的方式再建立ezgo9的映像檔到/sda2,映像檔我命名為linux-backup
  11. 準備修改  /etc/grub.d/40_custom 並建立win7還原指令選單,我參考了新莊中信國小蔡明貴主任的文件 http://auto.ezschool.tw/ ,及 http://jainan.blogspot.tw/2011/09/196-for-acer-veriton-m490.html 可是因為他們的還原映像檔是和clonezilla live放在同一個磁區,所以在還原上不會有問題,但我的映像檔是放在/sda2,而clonezilla live是放在/sda7,所以原本我的 /etc/grub.d/40_custom是修改成這樣,修改完後執行update-grub2及update-grub------------------------------------------------------------------------------------------------------
    #!/bin/sh
    exec tail -n +3 $0
    # This file provides an easy way to add custom menu entries.  Simply type the
    # menu entries you want to add after this comment.  Be careful not to change
    # the 'exec tail' line above.
    menuentry "Clonezilla" {
    set root=(hd0,7)
    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/sda7 toram=filesystem.squashfs
    initrd /live-hd/initrd.img
    }
    menuentry "Recovery Win7" {
    set root=(hd0,7)
    linux /live-hd/vmlinuz boot=live live-config noswap nolocales edd=on nomodeset  ocs_live_run=\"ocs-live-restore\" ocs_live_extra_param=\"-g auto -e1 auto -e2 -c -r -j2 -k -p true restoreparts win7-backup sda1\" ocs_live_keymap=\"NONE\" ocs_live_batch=\"yes\" ocs_lang=\"\" vga=788 ip=frommedia nolocales live-media-path=/live-hd bootfrom=/dev/sda7
    initrd /live-hd/initrd.img
    }
    -------------------------------------------------------------------------------------------------
  12. 但是開機後,選 Recovery Win7 執行後會出現 The directory /home/partimag/win7-backup for the inputed name does NOT exist!
  13. 後來找到clonezilla live的開機參數說明http://clonezilla.nchc.org.tw/clonezilla-live/doc/fine-print.php?path=./99_Misc/00_live-initramfs-manual.doc提到ocs_prerun, ocs_prerun1, ocs_prerun2... 等參數讓你可以在Clonezilla主程式被執行前,執行相關指令,例如ocs_prerun="/live/image/myscript.sh"
  14. 因此加入了ocs_prerun=\"sudo mount /dev/sda2 /live/image/home/partimag\" 這行,所以再重新修改了/etc/grub.d/40_custom
    ------------------------------------------------------------------------------------------------------
    #!/bin/sh
    exec tail -n +3 $0
    # This file provides an easy way to add custom menu entries.  Simply type the
    # menu entries you want to add after this comment.  Be careful not to change
    # the 'exec tail' line above.
    menuentry "Clonezilla" {
    set root=(hd0,7)
    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/sda7 toram=filesystem.squashfs
    initrd /live-hd/initrd.img
    }
    menuentry "Recovery Win7" {
    set root=(hd0,7)
    linux /live-hd/vmlinuz boot=live live-config noswap nolocales edd=on nomodeset  ocs_prerun=\"sudo mount /dev/sda2 /live/image/home/partimag\" ocs_live_run=\"ocs-live-restore\" ocs_live_extra_param=\"-g auto -e1 auto -e2 -c -r -j2 -k -p true restoreparts win7-backup sda1\" ocs_live_keymap=\"NONE\" ocs_live_batch=\"yes\" ocs_lang=\"\" vga=788 ip=frommedia nolocales live-media-path=/live-hd bootfrom=/dev/sda7
    initrd /live-hd/initrd.img
    }
    -------------------------------------------------------------------------------------------------
    再重新執行
     update-grub2及update-grub
  15. 終於…可以直接在選單上執行還原功能了


  16. 之後再找時間安裝winroll,再用DRBL派送系統,我理想中的電腦教室系統就可以大功告成了!
為什麼我要這麼麻煩做這個還原功能呢,直接用DRBL派就好了呀,其實這是為了配合phantosys的cache,因為只要重派送,動到未配置區,phantosys就需要在學生機一台一台重建cache,那可真是煩人的事呀,而且之後要還原,就可以請學生直接按選單上的還原,再教他們按y就可以囉!
--------------------------------------------------------------------------------------------------

加入一鍵備份功能:
修改/etc/grub.d/40_custom
加入

menuentry "Backup Win7" {
set root=(hd0,7)
linux /live-hd/vmlinuz boot=live live-config noswap nolocales edd=on nomodeset   ocs_prerun=\"sudo mount /dev/sda2 /live/image/home/partimag\" ocs_live_run=\"ocs-live-restore\" ocs_live_extra_param=\"-q2 -c -j2 -z1p -i 2000 -p true saveparts win7-backup sda1\" ocs_live_keymap=\"NONE\" ocs_live_batch=\"yes\" ocs_lang=\"\" vga=788 ip=frommedia nolocales live-media-path=/live-hd bootfrom=/dev/sda7
initrd /live-hd/initrd.img
} 
主要就是修改ocs_live_extra_param這個參數,變成
ocs_live_extra_param=\"-q2 -c -j2 -z1p -i 2000 -p true saveparts win7-backup sda1\"

意思就是將sda1分割區存成名稱為win7-backup的映像檔

------------------------------------------------------------------------------------------------------
安裝winroll
若啟用sshd服務,服務所用的帳號為cyg_server,密碼存放在c:\cygwin\drbl_winroll-config\SSHD_SERVER_PW.txt