🧭 核心概念与工作原理

WinBoat 不是一个模拟器,而是一个集成层。它的工作原理是:

  1. 容器化 Windows:在 Docker 或 Podman 容器中运行一个完整的 Windows 系统(作为虚拟机)。
  2. 通信与集成:通过一个“访客服务器”(Guest Server)与 Windows 通信。
  3. 应用透传:利用 FreeRDP 和 Windows 的 RemoteApp 协议,将 Windows 应用程序窗口“提取”出来,作为原生 Linux 窗口显示。这意味着 Windows 应用可以像 Linux 原生应用一样被启动、切换和操作。
  • 文件系统共享:你的 Linux 主目录会自动挂载到 Windows 中,方便文件交换。

重要提示:该项目目前处于 Beta 测试阶段,可能会遇到 Bug,需要用户具备一定的故障排查能力。

📦 系统要求与安装

1. 硬件与系统要求

  • 内存:至少 4 GB RAM。
  • CPU:至少 2 个线程
  • 存储:至少 32 GB 可用空间(用于存放 Windows 镜像和文件)。
  • 虚拟化:必须在 BIOS/UEFI 中启用 KVM(硬件虚拟化)。
  • 支持 Linux 发行版:主流发行版均可,并提供 .deb(Debian/Ubuntu)、.rpm(Fedora/RHEL)和 AppImage 格式。

2. 安装前依赖

根据你选择的容器运行时,需要安装相应软件。

方案一:使用 Docker(推荐)

  • Docker Engine不支持 Docker Desktop,必须安装 Docker Engine。
  • Docker Compose v2
  • 将你的用户加入 docker,以避免每次使用 sudo

方案二:使用 Podman

  • Podman:版本需 4.x.x 或更高(Debian/Ubuntu 默认 apt 源可能版本过旧)。
  • Podman Compose

通用依赖

  • FreeRDP:版本需 3.x.x,并确保编译时包含了声音支持。

3. 安装 WinBoat 本体

GitHub Releases 页面下载适合你系统的包:

  • AppImage:通用格式,下载后赋予执行权限即可运行。
  • Unpacked:解压后直接运行 winboat 可执行文件。
  • .deb / .rpm:使用系统包管理器安装(如 sudo dpkg -i winboat.deb)。

Nix 用户:可通过 Nixpkgs 安装,并需在配置中启用 Docker 并添加用户到 docker 组。

🚀 使用指南

  1. 首次启动与设置
    • 运行 WinBoat,它会引导你完成初始设置。
    • 你需要选择容器运行时(Docker/Podman)和 Windows 的配置(如版本、内存、CPU 核心等)。
    • 程序会自动下载 Windows 镜像并创建容器。这个过程可能需要一些时间,取决于网络速度。
  2. 运行 Windows 应用
    • 设置完成后,WinBoat 会显示一个应用列表或一个完整的 Windows 桌面选项。
    • 集成模式(推荐):从 WinBoat 界面中选择“运行应用”,它会像启动 Linux 原生应用一样,在 Linux 桌面上打开一个独立的 Windows 应用窗口。
    • 全桌面模式:你也可以选择启动完整的 Windows 桌面,以远程桌面方式操作。
  3. 文件访问
    • 你的 Linux 主目录(/home/用户名)会自动映射到 Windows 中的某个网络位置,方便跨系统复制文件。

⚙️ 常见问题与注意事项

  • 问题1:启用 KVM 虚拟化
    需要进入电脑的 BIOS/UEFI 设置(通常在启动时按 Del、F2、F10 等键),找到虚拟化技术(Intel VT-x 或 AMD-V)选项并启用。
  • 问题2:Docker Desktop 不被支持
    请务必安装 Docker Engine(社区版),而不是 Docker Desktop。
  • 问题3:Podman 版本过低
    在 Debian/Ubuntu 上,官方 apt 源的 Podman 版本可能过旧。请参考 Podman 官方文档添加正确的软件源以安装 4.x 以上版本。
  • 问题4:FreeRDP 版本或编译选项
    确保系统安装的是 FreeRDP 3.x。在 Ubuntu 22.04 LTS 及更新版本中,通常可通过 sudo apt install freerdp3-x11 安装。如果声音无法工作,可能是编译时未包含 pulseaudioalsa 支持。
  • 性能与资源:由于是虚拟化运行,性能消耗会高于原生 Linux 应用。建议分配足够的内存和 CPU 核心给 Windows 容器。

总结

WinBoat 提供了一种在 Linux 上使用 Windows 应用的便捷途径,尤其适合需要特定 Windows 软件但不想安装双系统的用户。部署的核心是确保系统满足虚拟化要求,并安装正确的容器运行时(Docker Engine)和 FreeRDP 3.x。由于项目处于测试阶段,请做好遇到问题并自行排查的准备。如果你能接受这些条件,WinBoat 可以为你带来相当无缝的跨平台应用体验。