当前位置: 首页>>技术教程>>正文


一个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/article/7406.html,未经允许,请勿转载。