Windows 兼容 (Wine)
Wine (Wine Is Not an Emulator) 是一个能够在多种 POSIX-compliant 操作系统(如 Linux、macOS 及 BSD 等)上运行 Windows 应用的兼容层。它不是虚拟机或模拟器,而是实时将 Windows API 调用翻译成 POSIX 调用,让你无需 Windows 许可即可运行 Windows 程序。
启用 32 位架构
大多数 Windows 应用仍然是 32 位的,因此您需要在 64 位的 Debian 系统上启用对 32 位应用的支持 (multi-arch)。
sudo dpkg --add-architecture i386
sudo apt update
安装 Wine
您可以选择从 Debian 官方仓库或 WineHQ 官方仓库安装。WineHQ 的版本通常更新。
方案一:从 Debian 仓库安装
这是最简单直接的方法,但版本可能不是最新的。
sudo apt install wine wine32 wine64 libwine fonts-wine
方案二:从 WineHQ 官方仓库安装 (推荐)
这种方式可以获取最新的 Wine 版本,兼容性更好。
添加 WineHQ 密钥:
bashsudo mkdir -pm755 /etc/apt/keyrings sudo wget -O /etc/apt/keyrings/winehq-archive.key https://dl.winehq.org/wine-builds/winehq.key
添加 WineHQ 仓库: (请根据您的 Debian 版本选择相应的命令)
bash# For Debian 12 (Bookworm) sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/debian/dists/bookworm/winehq-bookworm.sources # For Debian 11 (Bullseye) # sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/debian/dists/bullseye/winehq-bullseye.sources
更新并安装 Wine:
bashsudo apt update sudo apt install --install-recommends winehq-stable
winehq-stable
是稳定版,您也可以选择winehq-devel
(开发版) 或winehq-staging
(测试版)。
配置 Wine
首次运行 winecfg
时,Wine 会在您的家目录下创建一个 .wine
文件夹,用于存放虚拟的 C: 盘和配置信息。
winecfg
这个命令会打开一个图形化配置窗口,您可以:
- 选择 Windows 版本:在“应用程序”标签页,您可以为不同程序模拟不同的 Windows 版本 (如 Windows 10, Windows 7)。
- 配置显卡和声卡:在“显示”和“音频”标签页进行设置。
- 管理驱动器映射:在“驱动器”标签页,您可以将 Linux 目录映射为虚拟的 Windows 驱动器盘符。
运行 Windows 应用
配置好后,您可以直接用 wine
命令运行 .exe
文件。
下载一个 Windows 程序 (例如 Notepad++)。
使用 Wine 运行安装程序:
bashwine npp.8.6.2.Installer.x64.exe
安装过程将和在 Windows 上一样。
从桌面快捷方式或终端运行程序: 安装完成后,Wine 可能会在桌面创建
.desktop
快捷方式。您也可以直接运行安装好的程序:bashwine ~/.wine/drive_c/Program\ Files/Notepad++/notepad++.exe
使用辅助工具 (Lutris)
对于复杂应用,特别是游戏,手动配置 Wine 可能非常繁琐。推荐使用 Lutris 这样的工具来简化过程。Lutris 提供了大量由社区维护的安装脚本,可以自动完成 Wine 的配置、依赖安装等步骤。
安装 Lutris:
bashsudo apt install lutris
使用 Lutris: 打开 Lutris,搜索您想安装的应用或游戏,然后点击 "Install" 即可。Lutris 会在后台为您处理好一切。
具体应用案例
虽然 Wine 功能强大,但某些复杂应用(如最新版的 Microsoft Office)或大型游戏(特别是带反作弊系统的)的兼容性仍然是一个挑战。
案例一:安装 Microsoft Office
直接使用 Wine 安装最新版 Microsoft Office 非常困难,通常会失败。这是因为 Office 深度集成于 Windows 系统,依赖大量不对外开放的组件。
解决方案:
- 使用 CrossOver (商业软件): CrossOver 是一款基于 Wine 的商业软件,由 Wine 的主要贡献者 CodeWeavers 开发。它为 Office、Adobe 等流行软件提供了专业的支持和一键安装脚本,是目前在 Linux 上完美运行 Office 的最可靠方案。
- 使用 PlayOnLinux 或 Lutris: 这些图形化工具提供了社区维护的安装脚本,它们会自动下载特定版本的 Wine、配置所需的环境变量和依赖库,大大提高了安装成功率。对于 Office 2013/2016 等旧版本,成功率相对较高。
- 安装 Office 365 / Online 版本: 如果您只需要核心功能,使用浏览器访问 Office 365 是最简单、最无缝的替代方案。
案例二:运行 Windows 游戏
Linux 游戏生态近年来发展迅猛,核心驱动力就是 Valve 公司开发的 Proton。
什么是 Proton? Proton 是 Valve 公司基于 Wine 开发的一个兼容层,内置于 Steam 客户端中。它集成了 DXVK (将 DirectX 9/10/11 转换为 Vulkan) 和 VKD3D-Proton (将 DirectX 12 转换为 Vulkan) 等技术,极大地提升了 Windows 游戏在 Linux 上的图形性能和兼容性。
如何在 Steam 中使用 Proton?
- 安装 Steam:bash
sudo apt install steam
- 启用 Steam Play:
- 打开 Steam 客户端,进入 “Steam” > “设置”。
- 在 “兼容性” (Compatibility) 标签页中,勾选 “为所有其他产品启用 Steam Play” (Enable Steam Play for all other titles)。
- 在下拉菜单中,选择一个较新的 Proton 版本,例如 “Proton Experimental”。
- 安装和运行游戏: 现在,您可以在 Steam 库中像在 Windows 上一样下载和运行 Windows 独占游戏。Steam 会在后台自动通过 Proton 进行兼容处理。您可以在 ProtonDB 网站上查询特定游戏的兼容性报告和玩家反馈。
对于非 Steam 平台的游戏 (例如来自 GOG、Epic Games Store 或战网的游戏),Lutris 是最佳选择。它为这些平台提供了专门的安装脚本,能够自动处理 Wine 版本、前缀配置和游戏启动器的安装。