想象一下拥有 100 台计算机的实验室的情况,情况 1 - 所有 100 台计算机的硬件配置都相同 - 在整个实验室中安装 Ubuntu 9.10 的最佳方法是什么
案例 2 - 所有 100 台计算机的硬件配置都不同 - 在整个实验室中安装 Ubuntu 9.10 的最佳方法是什么
有实际经验吗?有好的链接吗?
答案1
对于案例 1,我们使用了一个很棒的小工具,称为 udpcast。它可以自动化和优化 Richard Holloway 解释的整个过程。
答案2
“Ubuntu 服务器官方书籍”在亚马逊上。如果你使用 Ubuntu Server,这确实是一本写得非常好、内容广泛的书。它甚至没有那么过时(很少谈论 Upstart),而且语法错误也很少。下面的教程就是我从这本书中学到的。
它有一整章关于自动化和定制 Ubuntu 安装的内容。
此外,上一期“系统管理”Linux 期刊(我想是 2010 年 3 月或 4 月)有一篇从头到尾都类似的文章,写得很好,主题相同。
编辑:显然,几个月后他们的文章就可以免费在线阅读了。
以下是文章:经济尺寸极客 - 安装工具包
需要研究的三个关键词:
Preseeding
Kickstart
PXE
希望这可以帮助。
教程
我只介绍如何安装 netboot,而不是使用 Kickstart/Preseeding 进行自定义安装。我假设您知道 DHCP 配置。这并不难。
1)您需要在
/etc/dhcp3/dhcpd.conf 中配置 DHCP 服务器(您需要一个)的几个新选项。
a. 在子网声明中,有
range dynamic-bootp lowip highip
基本上,在您的范围配置中添加“dynamic-bootp”选项。
b. 接下来,在全局设置或指定的子网中,添加以下两个选项:
next-server ip_of_netboot_server
filename "pxelinux.0"
2)tftpd-hpa
在网络启动服务器上安装软件包。确保 UDP 端口 69 已打开。
3)获取网络启动映像。Ubuntu
预先配置了许多设置,因此您可以快速完成简单的设置,从而让接下来的操作变得简单。
$ cd /var/lib/tftpdboot
$ sudo wget http://archive.ubuntu.com/ubuntu/dists/lucid/main/installer-amd64/current/images/netboot/netboot.tar.gz
$ sudo tar -xzvf netboot.tar.gz`
有很多不同的方法可以调整所有这些程序、网络启动安装选项等,使其成为一个非常强大的定制工具。我所描述的只是基本框架。
从这里
您可以将计算机接入网络,从 LAN 启动它(通过 BIOS 或 POST 时的热键)并安装 Ubuntu。它将从互联网上获取大量软件包,因此请做好准备。您可以设置镜像或 apt-cache 服务器来缓解此问题,但正如我所说,这只是简单的设置。
答案3
如果每台机器都相同,我会构建一台机器,然后将dd
每个分区复制到 USB 驱动器或 FTP 服务器上。
然后,您可以从实时 CD 启动下一台机器,并将dd
USB 驱动器或 FTP 服务器上的分区简单地放到磁盘上。
我曾经使用 Mondo Rescue 来克隆机器,但是对于我的需要来说它太复杂了。
100 台机器很多,而且会很耗时,所以我希望会有更好的解决方案。
对于不同硬件上的机器,我会执行最小安装,并有自己的安装程序脚本,将基本操作系统转换为我们公司的特定要求,安装软件包并设置配置文件。还有很多东西,比如 kickstart,也可以做到这一点。
答案4
我 +1不是使用基于图像的安装。
使用 FAI,因为它是最灵活的工具。而且它是一款非常可靠的工具,我已经用了 10 多年了。FAI 会为您效劳,尤其是当您拥有不同的机器时。
FAI 项目现在有了一个新的 $HOME。它的