2016年5月18日 星期三

使用 preseed 自動安裝 Linux

我們一般安裝 Linux 的方式是一台一台裝,如果遇上大量佈建系統環境的情況,舉例來說,我們要裝 20 台 Linux 主機,那麼一台一台裝可能會非常辛苦。在這種情況下,Debian 提供了一種安裝系統的方式,稱為 preseed,其官方文件在:

https://wiki.debian.org/DebianInstaller/Preseed

這種安裝方式是透過一個預先作好的設定檔,檔案為 preseed.cfg (可自定檔案),裡面針對所需要的系統配置來定義要如何分割硬碟、安裝那些套件、root 密碼定義、一般使用者帳號、密碼定義,以及預設鏡像站 .. 等皆可設定在 pressed.cfg 中。

請至上課用 ftp 站下載預先建立好的 preseed.cfg,放在
http://192.168.10.254/preseed.cfg
用瀏灠器觀看其內容,看看是否有讀取的權限。

安裝

請修改 buildlinux1.sh 至 buildlinux2.sh,並將 boot d 改為 boot n,使用網路開機,在開機選單中按 TAB,加上底下設定:

auto=true url=http://192.168.10.254/preseed.cfg


然後按 Enter,看看系統會不會自動安裝。


這種手動安裝方式比較麻煩,還要在開機時按 TAB 進入開機選單編輯,如果要作全自動的安裝,請在 pxe server 底下的

/srv/tftp/debian-installer/amd64/boot-screens/txt.cfg 中將

append vga=788 initrd=debian-installer/amd64/initrd.gz --- quiet

改成

append vga=788 initrd=debian-installer/amd64/initrd.gz --- quiet auto=true priority=critical url=http://192.168.10.254/preseed.cfg

然後再重新啟動 buildlinux2.sh 試試看。



==========================================================================
假設要安裝 10 GB 之虛擬 Linux,其硬碟規畫如下:

/dev/sda1       /       ext4    2G
/dev/sda2       /usr    ext4    2.5G
/dev/sda3       swap    swap    2G
/dev/sda4       /home   xfs     *

其 preseed 語法如下:

d-i partman-auto/expert_recipe string
      boot-root ::
              2048 2100 4096 ext4
                      $primary{ } $bootable{ }
                      method{ format } format{ }
                      use_filesystem{ } filesystem{ ext4 }
                      mountpoint{ / }
              .
              2048 3000 4096 ext4
                      method{ format } format{ }
                      use_filesystem{ } filesystem{ ext4 }
                      mountpoint{ /usr }
              .
              1024 1500 300% linux-swap
                      method{ swap } format{ }

              .
              100000 1000000000 -1 xfs
                      method{ format } format{ }
                      use_filesystem{ } filesystem{ xfs }
                      mountpoint{ /home }

沒有留言:

張貼留言