在 HYPER-V 上运行 FreeBSD 的最佳做法
适用对象:Hyper-V Server 2012, Windows 8.1, Windows Server 2012 R2, Microsoft Hyper-V Server Technical Preview, Windows Server 2012, Hyper-V Server 2012 R2, Windows 10 Technical Preview, Windows Server Technical Preview, Windows 8
本主题包含用于在 HYPER-V 上运行 FreeBSD 虚拟机建议的列表。
添加用于在 fstab 中列出的所有设备的 Uuid
安装 HYPER-V 存储集成服务时,可能会更改某些设备的名称,而且其 fstab 中的对应项将不再有效。 若要避免出现 fstab 的问题可以用 Uuid 替换设备名称。
重要
在进行任何更改之前请您 fstab 的备份副本。
检查 fstab 内容并记下的设备名称。 在此示例中,根设备名称是 ada0p2 和交换设备名称是 ada0p3。
# cat /etc/fstab # Device Mountpoint FStype Options Dump Pass# /dev/ada0p2 / ufs rw 1 1 /dev/ada0p3 none swap sw 0 0
标识用于 freebsd ufs 和 freebsd 交换使用 Uuid gpart 列表 命令。
# gpart list | grep -A 11 'ada0p2\|ada0p3' | grep 'rawuuid\|type\|Name' Name: ada0p2 rawuuid: d1241bc9-1b9e-11e3-8dae-00155ddc3f35 rawtype: 516e7cb6-6ecf-11d6-8ff8-00022d09712b type: freebsd-ufs Name: ada0p3 rawuuid: d126e943-1b9e-11e3-8dae-00155ddc3f35 rawtype: 516e7cb5-6ecf-11d6-8ff8-00022d09712b type: freebsd-swap
Ada0p2 的 UUID (rawuuid) d1241bc9-1b9e-11e3-8dae-00155ddc3f35 且 ada0p3 的 UUID d126e943-1b9e-11e3-8dae-00155ddc3f35。
将替换为 Uuid fstab 设备名称。
# vi /etc/fstab # Device Mountpoint FStype Options Dump Pass# /dev/gptid/d1241bc9-1b9e-11e3-8dae-00155ddc3f35 / ufs rw 1 1 /dev/gptid/d126e943-1b9e-11e3-8dae-00155ddc3f35 none swap sw 0 0
重启系统以确保 Uuid 是都正常工作。 如果需要撤消的任何更改,您可以通过不同的 FreeBSD 系统下安装分区还原您 fstab。
禁用快速 IDE 驱动程序
与 HYPER-V IDE 驱动程序,这会导致 CDROM 被禁用的快速 IDE 驱动程序冲突。 若要启用 CD-ROM 禁用快速 IDE 驱动程序。
启动虚拟机。
在 FreeBSD 引导菜单中,选择 6。 在加载程序提示符下进行转义。
在启动加载程序提示符中,输入以下命令:
set hw.ata.disk_enable=1 boot
备注
步骤 3 禁用快速 IDE 驱动程序,并取得控制权的 IDE ATA 驱动程序。 如果没有快速 IDE 支持应立即启动虚拟机。
在 FreeBSD 上创建几何标签 8.x
在启动期间,设备节点被创建新的设备的发现。 这可能意味着添加新设备时,可以更改设备名称。 如果在启动过程中获得根装入错误,应创建的每个 IDE 分区以避免冲突和更改永久几何标签。
为单用户模式重新启动系统。 这可以通过选择启动菜单选项 4,来实现或性能-s 从引导启动提示。 或者,您可以通过指定"引导-s"启动特定的内核。 请注意最后一个命令的顺序。
在单用户模式下,为每个您 fstab (包括根和交换) 中列出的 IDE 磁盘分区中创建几何标签。 例如:
# cat /etc/fstab # Device Mountpoint FStype Options Dump Pass# /dev/ad0s1b none swap sw 0 0 /dev/ad0s1a / ufs rw 1 1 /dev/acd0 /cdrom cd9660 ro,noauto 0 0 # glabel label rootfs /dev/ad0s1a # glabel label swap /dev/ad0s1b # glabel status Name Status Components rootfs N/A ad0s1a swap N/A ad0s1b
处找不到几何标签上的其他信息: 19.7。标记磁盘设备。
重新启动到多用户模式 (默认值)。 编辑您 /etc/fstab 使其包含标签。 例如:
# Device Mountpoint FStype Options Dump Pass# /dev/label/swap none swap sw 0 0 /dev/label/rootfs / ufs rw 1 1 /dev/acd0 /cdrom cd9660 ro,noauto 0 0