本指南介绍了如何在 Intel NUC(下一代计算单元)设备上安装 Fuchsia。
具体步骤如下:
前提条件
在开始在 NUC 设备上安装 Fuchsia 之前,请确保您已完成以下任务:
设置 Fuchsia 开发环境
如需在工作站上设置 Fuchsia 开发环境,请完成 Fuchsia 使用入门指南。
获取零件
本指南需要以下各部分:
- NUC 设备(请参阅示例型号)
- USB 3.0 闪存盘
- 键盘
- 鼠标(可选)
- 带有 HDMI 端口的显示器
- HDMI 线
- 以太网线
- 十字螺丝刀(带磁性尖头)
构建 Fuchsia
如需在 NUC 设备上安装 Fuchsia,您需要在工作站上构建 x64 映像并生成 build 工件(包括 Fuchsia 安装程序)。
如需构建用于 NUC 安装的 Fuchsia,请执行以下操作:
将 build 配置设置为 x64 目标,并添加
recovery-installer
软件包。fx set core.x64 --with //build/images/recovery:recovery-installer
构建 Fuchsia:
fx build
构建 Fuchsia 最多可能需要 90 分钟。
准备好 U 盘
您需要准备一个可启动 U 盘,用于运行 Fuchsia 安装程序。 稍后在在 NUC 上安装 Fuchsia 部分,您将使用此 USB 驱动器将 NUC 引导至 Fuchsia 安装程序。
如需准备可启动 USB 驱动器,请执行以下操作:
将 U 盘插入工作站。
确定 U 盘的路径:
fx list-usb-disks
此命令会输出类似于以下内容的输出:
$ fx list-usb-disks /dev/sda - My Example USB Disk
创建可启动 U 盘:
fx mkinstaller -v PATH_TO_USB_DRIVE
将
PATH_TO_USB_DRIVE
替换为上一步中 USB 驱动器的路径。以下示例命令会选择
/dev/sda
路径:$ fx mkinstaller -v /dev/sda
完成后,该命令会在最后输出类似于以下内容的输出:
$ fx mkinstaller -v /dev/sda mkinstaller: WARNING: Changing ownership of /dev/sda to alice [sudo] password for alice: ... mkinstaller: INFO: Writing image fvm.sparse.blk to partition storage-sparse... mkinstaller: INFO: Wrote 835.6M in 35.55s, 23.5M/s mkinstaller: INFO: Done. mkinstaller: INFO: Ejected USB disk
从工作站中拔下 U 盘。
在 NUC 上启用 EFI 启动
更新 NUC 的 BIOS 设置,以便其可以从 U 盘启动。
NUC 设备提供两个版本的 BIOS:Visual BIOS(例如 NUC7)和 Aptio V BIOS(例如 NUC11)。具体步骤会因系统中包含的 BIOS 而略有不同。
可视 BIOS
图 1. Visual BIOS 的屏幕截图
如需在 NUC 上启用 EFI(可扩展固件接口)启动,请执行以下操作:
- 重启 NUC。
- 如需进入 BIOS 设置,请在启动时按
F2
。 - 点击顶部的高级按钮。
- 点击启动标签页。
点击 Boot Priority(启动优先级)标签页,然后确认以下设置:
- UEFI 启动已选中。
- 旧版启动未选中。
点击 Boot Configuration(启动配置)标签页,然后确认以下设置:
在 UEFI 启动窗口中:
- 先启动 USB 设备处于勾选状态。
- Boot Network Devices Last 已选中。
- Unlimited Network Boot Attempts(无限网络启动尝试次数)已勾选。
在 Boot Devices 窗口中:
- 已选中 USB。
- 网络启动设置为
UEFI PXE & iSCSI
。
点击 Secure Boot(安全启动)标签页,然后确认以下设置:
- 安全启动处于未选中状态。
如需保存并退出 BIOS,请按
F10
并点击是。
Aptio V BIOS
图 2. Aptio V BIOS 的屏幕截图
如需在 NUC 上启用 EFI(可扩展固件接口)启动,请执行以下操作:
- 重启 NUC。
- 如需进入 BIOS 设置,请在启动时按
F2
。 - 点击启动标签页。
点击安全启动,然后确认以下设置:
- 安全启动设置为
Disabled
。
- 安全启动设置为
如需返回,请点击左侧的 < 按钮。
点击 Boot Priority(启动优先级),然后确认以下设置:
- UEFI 启动已选中。
旧版启动未选中。
先启动 USB 设备处于勾选状态。
Boot Network Devices Last 已选中。
Unlimited Boot to Network Attempts 已勾选。
已选中 USB。
网络启动设置为
UEFI PXE & iSCSI
。
如需保存并退出 BIOS,请按
F10
键,然后点击确定。
在 NUC 上安装 Fuchsia
使用可启动 USB 驱动器将 NUC 启动到 Fuchsia 安装程序。然后,它会将 x64 映像(在构建 Fuchsia 部分中构建)安装到 NUC。
如需在 NUC 上安装 Fuchsia,请执行以下操作:
将可启动 U 盘插入 NUC。
重启 NUC。
NUC 会启动到 Fuchsia 安装程序(背景为粉色)。
按 Enter 选择
Install from USB
选项。在出现其他提示时,按 Enter 键继续。
安装完成后,从 NUC 设备上拔下 U 盘。
重新启动 NUC 设备。
NUC 现在已启动到 Fuchsia。
(可选)将 Fuchsia SSH 密钥上传到 NUC
如果您打算使用此 NUC 设备进行 Fuchsia 开发,则需要从主机将 Fuchsia 映像刷写到 NUC 设备,然后 NUC 会将特定于 Fuchsia 的 SSH 密钥上传到 NUC。将这些特定于 Fuchsia 的 SSH 密钥上传到 NUC 后,您就可以在宿主机上对 NUC 执行基于 ffx
的工作流。
如需将 Fuchsia SSH 密钥上传到 NUC,请执行以下操作:
完成附录中的将新的 Fuchsia 映像刷写到 NUC 部分中的步骤。
如需验证您是否可以从主机连接到 NUC,请运行以下命令:
ffx target show
此命令会输出类似于以下内容的输出:
$ ffx target show Target: Name: "fuchsia-54b2-0389-644b" SSH Address: "fe81::55b1:2ff2:fe34:567b%en10:22" Board: Name: "default-board" Revision: "1" Instruction set: "x64" ...
附录
支持的 NUC 型号
如需 GPU 支持,请使用 NUC7 (Kaby Lake)、NUC8 (Coffee Lake) 或更高一代的 NUC。
以下列出了一些示例模型:
- Intel® NUC Kit NUC7i5DNKE
- Intel® NUC Kit NUC7i5DNHE(首选)
- Intel® NUC Kit NUC7i3DNKE
- Intel® NUC Kit NUC7i3DNHE
- Intel® NUC Kit NUC8i5BEK
- Intel® NUC Kit NUC8i5BEH
- Intel® NUC Kit NUC8i3BEK
- Intel® NUC Kit NUC8i3BEH
将新的 Fuchsia 映像刷写到 NUC
NUC 开始运行 Fuchsia 后,您可以使用 Fuchsia 的刷写机制向 NUC 预配新的 Fuchsia 映像。
如需将 Fuchsia 映像刷写到 NUC,请执行以下操作:
使用以太网线将 NUC 直接连接到工作站。
(或者,您也可以将 NUC 连接到与工作站位于同一局域网中的路由器或 Wi-Fi 调制解调器。)
重启 NUC。
在 Fuchsia 的启动屏幕上,按
f
键选择fastboot
选项。NUC 进入 Fastboot 模式后,屏幕上会显示
Fastboot TCP is ready
。在工作站上,发现处于 Fastboot 模式的 NUC:
ffx target list
此命令会输出类似于以下内容的输出:
$ ffx target list NAME SERIAL TYPE STATE ADDRS/IP RCS fuchsia-54b2-0389-644b <unknown> Unknown Fastboot [fe81::55b1:2ff2:fe34:567b%en10] N
验证设备的状态是否为
Fastboot
。将新的 Fuchsia 映像刷写到 NUC:
fx flash
如果您之前有多个设备连接到主机,则可能需要明确指定 NUC 设备的名称,例如:
fx flash -s fuchsia-54b2-0389-644b
完成后,NUC 会重启并开始运行新的 Fuchsia 映像。
远程管理 NUC 设备
如需启用远程管理(包括 KVM),您需要配置 Intel AMT(Active Management Technology)。
首先,在 NUC 上配置 Intel ME:
- 重启 NUC。
- 在启动屏幕上按
Ctrl+P
进入 Intel ME 设置。 - 选择 MEBx 登录
设置新密码,默认密码为
admin
。配置网络:
- 选择 Intel(R) AMT Configuration(Intel(R) AMT 配置)。
取消配置现有网络设置:
- 选择取消配置网络访问
- 选择完全取消配置
- 按
Y
进行确认。
依次选择网络设置 > TCP/IP 设置 > 有线 LAN IPV4 配置。
将 DHCP Mode(DHCP 模式)设置为 Disabled(停用)。
将 IPv4 地址设置为可通过 EdgeRouter 从主机访问的地址。
在主机上,运行
ifconfig
并找到与 EdgeRouter 对应的条目,例如:$ ifconfig enx00e04c0c13ba: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.42.86 netmask 255.255.255.0 broadcast 192.168.42.255 ...
在这种情况下,您可以尝试使用地址 192.168.42.20
将子网掩码地址设置为主机与 EdgeRouter 连接的网络掩码,例如 255.255.255.0。
按
Esc
,直到返回到 Intel(R) AMT 配置。选择 Activate Network Access(启用网络访问权限),然后按
Y
进行确认。退出 Intel ME 设置并保存更改。
现在,在宿主机上配置 amtctrl
命令行实用程序:
以下说明假定您已设置了一些环境变量:
AMT_HOST
:您在 Intel ME 设置中配置的 IPv4 地址。AMT_PASSWORD
:您为 Intel ME 选择的密码。VNC_PASSWORD
:用于通过 VNC 访问 NUC 的密码。
克隆
amtctrl
代码库:git clone https://github.com/sdague/amt
安装
amtctrl
:cd amt && sudo ./setup.py install
配置 NUC IP 地址和密码:
amtctrl set -V $VNC_PASSWORD nuc $AMT_HOST $AMT_PASSWORD
启用 VNC:
amtctrl nuc vnc
现在,您可以通过连接到 AMT_HOST
中设置的 IP 地址,使用任何 VNC 客户端从主机访问 NUC。出现提示时,输入在 VNC_PASSWORD
中设置的密码。
您还可以使用以下终端命令开启、关闭或重新启动 NUC:
如需开启 NUC,请按以下步骤操作:
amtctrl nuc on
如需关闭 NUC,请执行以下操作:
amtctrl nuc off
如需重新启动 NUC,请执行以下操作:
amtctrl nuc reboot