當前位置: 首頁>>技術教程>>正文


一個CD磁盤,多個Linux發行版:Netboot CD

, , , , , , , , , ,

介紹

不久之後,每個Linux用戶都會開始創建一個隨身攜帶的工具箱。但是,這取決於手頭的任務。您可能需要安裝發行版,可能隻需要一個livecd,進行security-related工作或僅進行備份。因此,工具箱變得越來越大,從而變得越來越不方便。今天的文章主題是NetbootCD。 NetbootCD並非實時Linux環境的補充,而是旨在幫助您使用單個multiboot磁盤來安裝多個Linux發行版,這與7個Linux安裝磁盤的要求相反。
從這個意義上說,NetbootCD是一張CD磁盤,通過提供一個簡單菜單,您就可以通過netinstall各種發行版,從而可以選擇發行版/版本和其他簡單選項。因此,絕對必須有一個良好的Internet連接。您將隻需要知識來安裝您選擇的發行版,今天在公園裏散步,在許多Linux發行版中都有簡單易用的安裝程序。我們將向您展示如何使用NetbootCD以及如何破解它,以便向列表中添加更多發行版,前提是您具有一定的腳本知識。實際上,您也可以將磁盤用作基本的實時Linux發行版,但稍後會介紹更多。

獲取NetbootCD

NetbootCD基於Tiny Core Linux,因此您不必獲得一些巨大的ISO。可以下載磁盤映像並將其放入CD。還有一個選項可以將其放置在軟盤上,但是這裏不會處理,因為軟盤為error-prone且幾乎已絕種。上麵的鏈接將指導您,但是,如果您確實要選擇軟盤方式。我們建議至少使用512 MB的內存,而Fedora則需要更多,因為您選擇的發行版的內核和initrd映像將下載到RAM。現在,讓我們來看一下NetbootCD的功能。

使用NetbootCD

從項目的網頁上可以看到,您可以使用NetbootCD來安裝Ubuntu,Debian(穩定,測試和不穩定),Fedora,OpenSUSE,Mandriva,Scientific Linux,CentOS和Slackware。我們將介紹每個發行版,並告訴您一些有關它的信息,此外,如前所述,我們還將教您如何將自己喜歡的發行版添加到列表中,前提是它是二進製發行版,並且可以進行netinstall。

引導CD時,會出現一個簡單的菜單,您可以從HDD引導或CD引導中進行選擇。

netbootcd grub

下一個菜單(主菜單)將讓您開始選擇發行版,以通過網絡進行安裝,或者首先進行一些可用的設置。我們建議您首先選擇[d] ownload,以便使用安裝腳本作為up-to-date。如果上述分配選擇適合您,則隻需選擇[i] nstall。否則,請選擇[q] uit,以便您出現提示並開始編輯安裝腳本,但我們現在還沒有。

netbootcd welcome main screen

如果NetbootCD沒有檢測到活動的網絡連接(即不支持無線連接),例如DHCP,您將進入提示,可以使用/sbin /ifconfig設置靜態連接。然後跑

 $ sudo /usr/bin/nbscript.sh 

進入上圖所示的主菜單。 [u] tils菜單包含grub4dos,因此您可以修複引導程序問題以及TinyCore Linux(普通和小型(!)版本)。如果您要使用syslinux(NetbootCD使用的引導程序).cfg文件,則[s] cript選項可以為您提供幫助。使用[q] uit不會重新啟動,但會將您帶到終端。無論如何,現在我們假設您要安裝發行版,因此讓我們進入[i] nstall選項。

在我們的示例中,我們通過NetbootCD安裝了Ubuntu,但是在繼續之前,我們將對其他發行版提供一些意見。

Debian的

選擇Debian(32位或64位版本或Joey Hess提供的每日安裝程序)時,係統會詢問您要安裝哪種版本,或者是否要手動選擇安裝程序的地址。我們選擇了Debian 32不穩定,沒有遇到任何問題。

Fedora的

在這裏,我們可以安裝Fedora 13、14或15,但是找不到64位選項,隻有32位。但是,係統將要求您確認NetbootCD可以找到安裝程序的地址,並將’i386’替換為’x86_64’。如果您決定使用Fedora 15,請確保至少有768 MB的RAM才能使用安裝程序,或者隻是編輯anaconda(這是一個Python腳本),然後尋找check_memory函數。但是,如果少於512 MB,則可能會出現速度慢或OOM錯誤。而且您沒有聽到我的消息。

OpenSUSE係統

在這裏也可以找到32位問題,解決方案是相同的:隻需編輯腳本即可進行設置。會出現一個CLI窗口,向您詢問安裝集的CD1:隻需選擇“上一步”並選擇進行HTTP安裝,配置網絡,輸入HTTP服務器的IP(我們使用195.135.221.134-download.opensuse.org),路徑(/distribution/11.4/repo/oss),應該沒問題(將11.4更改為所需的版本)。我們在KVM機器具有512 MB RAM,因此這與OpenSUSE和Fedora上的CLI界麵有關。如果您有更多的內存,則可能會看到更令人愉悅的圖形界麵。

netbootcd and suse linux installation

的Mandriva

在這裏,我們看到了32位的相同問題,但沒有問題。安裝過程類似於OpenSUSE的安裝過程,至少直到我們感興趣為止,但是您已經獲得了可用的HTTP服務器列表,並且還為您填寫了一些值,例如服務器上的目錄位置。曼德裏瓦獨得1分。

科學Linux和CentOS

我們將這兩個發行版一起對待,因為它們都是RHEL分支,並且隻有很小的差異。與Fedora一樣,您可以選擇安裝程序的位置,但是在這裏您可以選擇32位或64位。您還可以從RHEL 5或RHEL 6衍生版本中進行選擇,這使其成為我們在NetbootCD上找到的最完整的選項,以及Ubuntu和Debian。我們嘗試使用64位SL,並且一切正常,但是由於隻有512 MB內存,因此必須進行CLI安裝。

Slackware的

(NetbootCD的)網站警告您不能從HTTP服務器安裝Slackware,如果選擇Slackware,菜單也會警告您。但是,這更像是一個警告,您可以選擇最後三個可用的Slackware版本,而不必選擇體係結構。您可以選擇要引導的內核,並且可以以root用戶身份登錄(無需密碼)以開始設置磁盤。鍵入’setup’後,請確保在Samba /NFS /本地驅動器上具有Slackware安裝層次結構。

Ubuntu的

最後但並非最不重要的一點是我們的示例Linux發行版Ubuntu。在這裏,我們可以免費使用32位或64位版本,並可以從最新的四個Ubuntu版本中進行選擇。

netboot cd and ubuntu linux installation

我們選擇了Natty 32位,安裝順利進行。現在,讓我們看看如何修改前麵提到的腳本以適合我們的需求。

入侵nbscript.sh

不要逃避:這僅僅是shell腳本,不是Motorola匯編代碼,已經有示例,並且獎勵將是為您想要的和滿足感量身定製的係統。當然,更改不會是永久的,但這也不是問題:您可以創建自己的NetbootCD混音,但是由於有許多出色的教程,此處將不介紹如何進行混音。

您可以在實時CD上使用sudo,因為它是無密碼的。您需要提升的權限才能寫入/usr /bin,所以請記住sudo。 vi是包含的編輯器,所以我們開始吧

 $ sudo vi /usr/bin/nbscript.sh 

並查看腳本內部。假設我們要選擇Mageia:我們轉到 installmenu()函數並輸入Mageia條目:

 
mageia "Mageia" \

接下來,您將為每個條目看到很多if塊。我們必須添加自己的一個,使用複製和粘貼來贏得一些時間(我們選擇Fedora作為模型)。我們將使用一個更簡單的條目,因為Mageia是一個簡單的發行版,並且沒有很多發行版(實際上隻有一個發行版)。

if [ $DISTRO = "mageia" ];then
        dialog --backtitle "$TITLE --menu "Choose a system to install:" 20 70 13 \
        1 "Mageia 1" \
# The screenshot will show you a simple entry in the script for 
# Mageia 1 64-bit. This is really simplified for illustration, based on the Fedora entry,
# especially as Mageia has only one released version. Modify to taste.

custom mageia linux installation with netbootcd

結論

我們發現NetbootCD是一種非常可定製且實用的CD,具有許多用途,並且如我們所見,隻需很少的shell腳本知識,我們就可以根據需要將可用發行版的列表擴展到更全麵的發行版。我們希望您能從NetbootCD的使用中受益匪淺,但是您也會發現它很有用。我們確實做到了。

參考資料

本文由Ubuntu問答整理, 博文地址: https://ubuntuqa.com/zh-tw/article/7406.html,未經允許,請勿轉載。