2014年5月28日 星期三

使用 virt-manager 透過 URL 安裝 Debian/Ubuntu 系統

常常需要快速地安裝不同版本的 Debian/Ubuntu 的 VM 環境,但是卻又覺得老是在那裡下載 ISO 還是設定 PXE 也很麻煩,那麼有沒有更簡便的安裝方式呢?於是就搜尋了一下,還真的有方法可以達成,以下利用 Debian/Ubuntu installer 內建的 tasksel 機制來安裝一個 openssh-server 為例。

首先是安裝 qemu 相關的軟體套件。

sudo apt-get install virt-manager qemu-kvm qemu-system python-spice-client-gtk

然後再重新登入帳號,讓 libvirtd 的權限生效。

接下來就可以執行 virt-manager 這個應用程式來新增 VM 指定使用網路安裝

接下來將 http://free.nchc.org.tw/ubuntu/dists/precise-updates/main/installer-amd64/ 這樣的網址輸入進去,並且自訂 tasks=openssh-server gfxpayload=800x600x16,800x600 -- quiet 這樣的內核選項。

然後設定一下記憶體使用量跟 CPU 數量。

接著設定一下硬碟大小。

最後結束前看看需要不要在開始安裝前,使用自訂組態進行最後的微調,如果不要直接按完成就可以了。

接下來的動作就是 Debian/Ubuntu installer 原本的安裝過程,如果想要更進一步自動化安裝流程的話,則可搭配使用 preseed.cfg 跟我在 http://fourdollars.github.io/d-i/ 上面所使用的機制一樣。

以此類推,如果想要安裝哪一個 Debian/Ubuntu installer 的版本,只要輸入相對應的 URL 即可,再搭配在 kernel parameter 輸入 tasksel 提供的 task 選項來執行安裝預先設定好的項目即可。

以下是目前 Ubuntu 14.04 上面 tasksel 所提供的 task 選項。

$ tasksel --list-tasks
u server Basic Ubuntu server
u openssh-server OpenSSH server
u dns-server DNS server
u lamp-server LAMP server
u mail-server Mail server
u postgresql-server PostgreSQL database
i print-server Print server
u samba-server Samba file server
u tomcat-server Tomcat Java server
u cloud-image Ubuntu Cloud Image (instance)
u virt-host Virtual Machine host
u ubuntustudio-graphics 2D/3D creation and editing suite
u ubuntustudio-audio Audio recording and editing suite
u edubuntu-desktop-gnome Edubuntu desktop
u kubuntu-active Kubuntu Active
u kubuntu-desktop Kubuntu desktop
u kubuntu-full Kubuntu full
u ubuntustudio-font-meta Large selection of font packages
u lubuntu-desktop Lubuntu Desktop
u lubuntu-core Lubuntu minimal installation
u mythbuntu-desktop Mythbuntu additional roles
u mythbuntu-frontend Mythbuntu frontend
u mythbuntu-backend-master Mythbuntu master backend
u mythbuntu-backend-slave Mythbuntu slave backend
u ubuntustudio-photography Photograph touchup and editing suite
u ubuntustudio-publishing Publishing applications
u ubuntu-gnome-desktop Ubuntu GNOME desktop
i ubuntu-desktop Ubuntu desktop
u ubuntu-usb Ubuntu desktop USB
u ubuntustudio-video Video creation and editing suite
u xubuntu-desktop Xubuntu desktop
u edubuntu-dvd-live Edubuntu live DVD
u kubuntu-active-live Kubuntu Active Remix live CD
u kubuntu-live Kubuntu live CD
u kubuntu-dvd-live Kubuntu live DVD
u lubuntu-live Lubuntu live CD
u ubuntu-gnome-live Ubuntu GNOME live CD
u ubuntustudio-dvd-live Ubuntu Studio live DVD
u ubuntu-live Ubuntu live CD
u ubuntu-usb-live Ubuntu live USB
u xubuntu-live Xubuntu live CD
u manual Manual package selection

至於 Debian 請參考 tasksel-data 裡面的 /usr/share/tasksel/descs/debian-tasks.desc 的內容。

參考資料:Should I use tasksel, tasks in APT or install regular metapackages?
張貼留言