![如何在没有光驱的 SSD 上安装 OpenBSD?](https://linux22.com/image/554483/%E5%A6%82%E4%BD%95%E5%9C%A8%E6%B2%A1%E6%9C%89%E5%85%89%E9%A9%B1%E7%9A%84%20SSD%20%E4%B8%8A%E5%AE%89%E8%A3%85%20OpenBSD%EF%BC%9F.png)
我正在寻找一个可以安装在 SSD 上以运行 pf 的 OpenBSD 可启动映像。我找到了适用于 m0n0wall 和 pfSense 的这些映像,但不包括适用于 OpenBSD 的映像。
有人能给我提供一张带有说明如何将其直接安装到 SSD 的图片链接吗?
提前致谢。
答案1
这bsdgurl.org 上的网页似乎提供了您正在寻找的内容。您需要将映像写入 USB 驱动器,从 USB 启动,然后安装到 DOM(固态硬盘)。如果您身边没有其他 BSD 盒,请使用方法 2。
答案2
首先进入 openbsd 的下载区(例如:http://ftp.heanet.ie/pub/OpenBSD/4.9/amd64/)你需要两个文件:
- 启动
- bsd.rd (rd 代表 ramdisk)
使用这两个文件,您需要设置一个 pxe 启动环境。
接下来,您需要设置一个 DHCP 服务器来识别网卡的 MAC 地址,并设置选项文件名和下一個伺服器。
以下是 Linux dhcpd 的一个示例:
主持人 soekris {
hardware ethernet 00:00:AB:CD:EF:1c; fixed-address 192.168.0.150; filename "pxeboot"; next-server 192.168.0.98;
}
您的 nextserver 是一个 tftp 服务器,提供文件 /pxeboot 和 /bsd.rd
在 Windows 上我使用优秀的 tftpd32d (http://tftpd32.jounin.net/)
您只需激活 TFTP 选项并将目录设置为包含两个文件的目录并启动它。
现在启动启用 PXE 的机器。确保您的 dhcp 守护进程提供正确的地址和正确的信息(在日志中检查 DHCPACK)
这文件名选项将指示您的机器加载并运行第一阶段的 pxeboot(有点类似于 grub)。然后,在提示符下,您可以等待或直接输入简体中文。该文件也将从 TFTP 服务器下载并启动安装过程。
您也可以查阅官方文档http://ftp.heanet.ie/pub/OpenBSD/4.9/amd64/INSTALL.amd64
并查找“使用 OpenBSD 或其他类 Un*x 系统创建 PXE 网络可启动设置:”部分
答案3
如果你多次执行此操作,pxe 启动是最简单的。
如果只需要几次,只需将您的闪存驱动器作为虚拟机中的根目录安装在另一台机器上。例如,如果您在 Linux 上使用 qemu/kvm,并且闪存驱动器显示为 /dev/sdc
kvm -drive file=/dev/sdc,if=virtio,cache=none -cdrom /path/to/install55.iso -boot d
您必须以 root 身份执行此操作才能获得对 /dev/sdc 的原始访问权限。另外,不必担心 virtio。它在 openbsd 中运行良好,并且如果驱动器是 ide、sata、scsi 或其他,安装仍将有效。我甚至在 soekris 上使用从 usb 启动的驱动器完成了此操作。
答案4
我所熟悉的大多数现成的可启动 OpenBSD 映像都是(或曾经是)针对嵌入式单板计算机(如 Soekris 和 Alix 设备)而设计的。主要目标是精简操作系统以适应较小的闪存卡。
如今,闪存设备变得越来越大,大多数人只是将整个 OpenBSD 操作系统直接安装到闪存介质上。
针对您的情况,我可以想到两个主要的安装选项:
- PXE 启动网络安装。
- 从另一台计算机直接安装到闪存/SSD 驱动器。
目前为止最简单的方法是直接安装方法。
这是我的建议。将 SSD 连接到已连接互联网的计算机。使用 OpenBSD 安装程序 cd-rom 启动该计算机。将 OpenBSD 安装到最近连接的 SSD 驱动器上。
安装后,根据需要修改 /etc/fstab 文件。您可以在安装结束时手动执行此操作,然后再重新启动。或者您可以再次启动到安装磁盘并选择 shell,挂载新安装的文件系统,然后使用 sed 命令进行修改。通常这意味着将所有 /dev/wd1x 条目更改为 /dev/wd0x。
移除 SSD 驱动器并插入目标机器。尝试启动它。如果启动时出现问题,通常是因为 /etc/fstab 条目不正确。在内核启动时检查 dmesg 输出,查看目标机器的硬盘设备被检测为什么。它们应该是 sd0 或 wd0。
祝你好运!