使用 PreSeed(全自动)从 Rescue System 安装 Debian?

jen*_*ens 4 debian

我需要在完全自动化的服务器上远程安装 debian 系统。

如果我可以访问此服务器上的 debian 操作系统映像(通过使用 DVD 驱动器或带有 Debian 操作系统映像的 USB 记忆棒),这将非常容易:我只需要在“启动/安装”提示下输入PreSeed 文件的 url。但我无法访问服务器上的 DVD 驱动器或 USB 记忆棒。

就我而言,我只能通过救援系统(运行最小的 debian)访问服务器。我知道我可以使用debootstrap. 但问题是,使用 debootstrap 不是自动的,我必须先格式化光盘,安装它们,执行 debootstrap 等等。

我想要做的是,登录到救援系统并调用一个“程序”,如 debootstrap 或带有预置文件的 debian 安装程序,一切都应该自动完成。但是 debootstrap 不支持预置文件。而且我不知道在这样的救援系统环境中如何调用安装程序。

我怎样才能做到这一点?是否可以在救援系统中下载完整的 Debian ISO 映像,将其解压缩到内存中,然后以某种方式调用该 CD 的安装程序?但是如何?我必须在那里执行什么命令?

或者是否有一些小工具可以做到这一点,我需要使用图像的 url 调用并预置信息,然后进行安装?如上所述,debootstrap 没问题,但我想使用 debian 安装程序中的 preseed 文件,而无需任何手动干预。debootstrap 涉及大量手动工作。

非常感谢您的帮助!!詹斯

bah*_*mat 8

如果可能,我建议您自己制作一张新 CD,然后邮寄或上传给可以为您放入托盘的人。使用 VM 来创建和测试映像,直到您可以使其 100% 非交互式。请记住,您只需要最基本的功能。一个带有 SSH 和一个用户的运行系统就足够了。剩下的你可以(小心地)远程完成。

我还没有用 Squeeze 做过这个,但我认为这个过程是相似的。最坏的情况是,您可以自动安装 Lenny 并升级到 Squeeze。

您需要一个 preseed 文件作为先决条件。使用debconf-get-selections生成此。从该命令的输出开始,并根据需要进行编辑。有关预置内容的任何信息,请参阅Debian 的官方文档预置安装程序

1)从 Debian下载 ISO 。
2) 挂载和复制 CD 内容

mount -o loop debian-508-amd64-netinst.iso /mnt
mkdir ~/autoinstall
rsync -a -H --exclude=TRANS.TBL /mnt/ ~/autoinstall/
Run Code Online (Sandbox Code Playgroud)

3) 编辑isolinux/isolinux.cfg并用以下内容替换整个内容

default install

LABEL install
   kernel /install.amd/vmlinuz
   append vga=normal initrd=/install.amd/initrd.gz preseed/file=/cdrom/preseed.txt debian-installer/locale=en_US console-keymaps-at/keymap=us --
LABEL linux
   kernel /install.amd/vmlinuz
   append vga=normal initrd=/install.amd/initrd.gz preseed/file=/cdrom/preseed.txt debian-installer/locale=en_US console-keymaps-at/keymap=us --

prompt 0
timeout 0
Run Code Online (Sandbox Code Playgroud)

4) 将您的预置数据放在~/autoinstall名为preseed.txt.
5) 构建图像。

cd ~/autoinstall/
mkisofs -o ~/autoinstall.iso -r -J -no-emul-boot -boot-load-size 4  -boot-info-table -b isolinux/isolinux.bin -c isolinux/boot.cat ~/autoinstall/
Run Code Online (Sandbox Code Playgroud)

您现在可以使用该映像从 VM 启动。在安装程序问您问题的任何地方,将该答案添加到 press.txt 文件并重复步骤 4 和 5。

继续这样做,直到你有一个可行的安装程序。您可能会在调整预置文件的同时构建 20-30 个图像,直到正确为止。确保您包括在内openssh-serverpkgsel/include并且您应该能够远程登录。