返回首页

Linux 游戏:使用 Bottles 和 Wine 运行 Windows 游戏

在 Linux (Fedora) 上通过 Flatpak 安装 Bottles 并设置以运行经典 Windows 游戏的详细指南。了解 Bottles 和 Wine 如何提供兼容性。

Linux 游戏:使用 Bottles 和 Wine 运行 Windows 游戏
Advertisement 728x90

Linux 游戏:用 Bottles 在 Linux 上畅玩经典 Windows 游戏

现代 Linux 发行版正日益成为一个可行的游戏平台,这在很大程度上要归功于 Steam 和 Proton 的努力。然而,要运行那些不属于 Steam 生态系统的经典 Windows 游戏和应用程序,则需要一种不同的方法。Bottles 提供了一个解决方案:一个用户友好的 Wine 图形界面,它允许您为运行 Windows 软件创建隔离的环境。在本指南中,我们将深入探讨在 Fedora 上安装 Bottles 的过程,并演示如何运行标志性游戏《S.T.A.L.K.E.R.:切尔诺贝利的阴影》,从而证明这种方法在 Linux 上重温挚爱游戏的有效性。

理解 Bottles 和 Wine:兼容性的基石

Wine (Wine Is Not an Emulator) 是一个兼容层,它使得 Windows 应用程序能够在各种符合 POSIX 标准的操作系统上运行,包括 Linux、macOS 和 BSD。与传统的模拟器或虚拟机不同,Wine 并不完全模仿 Windows 操作系统的内部逻辑。相反,它将 Windows API 调用转换为等效的 POSIX 调用,从而直接访问系统资源。与完全虚拟化相比,这显著提升了性能。

Bottles 是一个现代且直观的 Wine 图形前端,旨在简化各种 Wine 前缀(通常被称为“容器”或“瓶子”)的管理。每个“容器”代表一个隔离的环境,它模拟 Windows 文件结构(例如 C: 驱动器),并包含特定应用程序或游戏所需的所有 Wine 库和设置。这种方法有助于避免不同 Wine 版本或各种程序所需依赖项之间的冲突。例如,一个“瓶子”可以配置为需要 DirectX 9 的旧游戏,而另一个则可以设置为使用 DirectX 11 或 12 的新应用程序。这确保了在 Linux 上处理各种 Windows 软件时具有高度的灵活性和稳定性。

Google AdInline article slot

要成功运行您的目标软件,您需要游戏或应用程序的安装文件以及已安装的 Bottles。

通过 Flatpak 在 Fedora 上安装 Bottles

在 Fedora 等现代 Linux 发行版上安装 Bottles 的最简单和推荐方法是使用 Flatpak 包管理器。Flatpak 为应用程序提供了一个隔离的环境,增强了安全性、稳定性,并简化了依赖项管理。

要通过 Flatpak 安装 Bottles,请在您的终端中执行以下命令:

Google AdInline article slot
# Install Flatpak support (if not already installed)
sudo dnf install flatpak

# Add the Flathub repository
sudo flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

# Install Bottles
flatpak install flathub com.usebottles.bottles

执行这些命令后,Bottles 将被安装并准备好使用。您可以从操作系统的应用程序菜单中启动它。

创建和配置您的第一个“瓶子”

首次启动 Bottles 时,系统会提示您创建一个新的“瓶子”(容器)。此过程可能需要几分钟,因为 Bottles 会初始化虚拟文件系统并安装必要的 Wine 组件。

  • 选择瓶子类型: Bottles 提供各种针对游戏、软件或自定义配置优化的“环境”。对于游戏,建议选择合适的游戏配置文件,其中包含预安装的组件,如 DXVK、VKD3D 和 Wine-GE。
  • 初始化: 选择类型后,Bottles 将创建所有必要的文件和文件夹。完成后,您将看到新瓶子的管理界面。

在每个瓶子内部,都有一个模拟的 C:\ 驱动器,可以通过您的文件管理器访问。此目录将作为 drive_c/ 出现在您 Linux 系统中瓶子的文件夹内。您应该将游戏或应用程序的安装文件复制到此处。

Google AdInline article slot

启动安装和初始游戏设置

一旦游戏的安装文件(例如 setup.exe 或其他可执行文件)已复制到您的瓶子内的 drive_c/ 目录中,您就可以继续进行安装。

  • 运行可执行文件: 在 Bottles 界面中,选择您的瓶子,然后点击“运行可执行文件”按钮并指定游戏安装程序的路径。
  • 安装过程: Windows 安装程序将在隔离的瓶子环境中启动。按照在 Windows 上一样的标准安装说明进行操作。游戏将安装到您的瓶子的虚拟文件系统中。
  • 添加到程序列表: 安装完成后,Bottles 将自动检测已安装的游戏并将其添加到相应瓶子内的“程序”列表中。这使得将来可以轻松启动,而无需再次查找可执行文件。

优化和故障排除潜在问题

通过 Wine/Bottles 在 Linux 上运行旧游戏时,一个常见问题是与图形 API 的交互。Bottles 通常默认包含 DXVK——一个将 DirectX 9/10/11 转换为 Vulkan 的转换层,以及用于 DirectX 12 的 VKD3D-Proton。虽然 DXVK 显著提高了许多现代游戏的性能,但对于某些旧游戏,它可能会导致兼容性问题或不稳定。

配置建议:

  • 禁用 DXVK: 如果游戏无法启动或运行不正常,请尝试在瓶子的设置中暂时禁用 DXVK。为此,请导航到瓶子的设置,找到与图形组件或 DXVK 相关的部分,并停用相应的开关。这将强制 Wine 使用其内置的 DirectX 实现或其他可用的兼容层。
  • 选择 Wine 版本: Bottles 允许您轻松切换不同版本的 Wine 和 Wine-GE (GloriousEggroll),每个版本都可能为特定游戏提供更好的兼容性。尝试不同的 Wine 版本可以解决启动问题。
  • 安装附加组件: 在某些情况下,游戏可能需要特定的 Windows 库或组件(例如 .NET Framework、Visual C++ Redistributables)。Bottles 提供了一个方便的工具,可以直接从 Bottles 界面安装这些组件。

运行《S.T.A.L.K.E.R.:切尔诺贝利的阴影》的例子表明,即使是最初并非为 Linux 设计的游戏,也可以成功启动并运行。这一经验为希望将 Linux 作为主要娱乐平台而又不放弃他们喜爱的 Windows 游戏的玩家和技术专业人士开辟了广阔的可能性。

结论:Linux 游戏的新视野

使用 Bottles 和 Wine 在 Linux 上运行旧版 Windows 游戏不仅仅是一个技术解决方案;它是朝着扩展基于 Linux 的操作系统功能迈出的重要一步。这种方法不仅让您能够享受经典游戏,还能利用以前仅限于 Windows 平台的专业软件。对于开发人员和技术专业人士而言,理解 Bottles、Wine 和 Flatpak 背后的原理,为测试、部署和使用跨平台解决方案开启了新的机遇。Bottles 易于安装和配置,即使对于具有中等技术知识的用户来说,它也是一个易于使用的工具,而其深度定制选项则允许经验丰富的用户为特定任务微调环境。

主要收获:

  • Bottles 通过使用 Wine 作为兼容层而非模拟器,简化了在 Linux 上运行 Windows 应用程序的过程。
  • 每个“瓶子”(容器)都是一个模拟 Windows 文件系统的隔离环境,可防止应用程序之间发生冲突。
  • 通过 Flatpak 安装可确保在 Fedora 等发行版上实现高安全性、稳定性和易管理性。
  • 旧游戏的最佳性能可能需要手动配置瓶子参数,例如禁用 DXVK 或选择特定的 Wine 版本。
  • Bottles 技术显著扩展了 Linux 的游戏潜力,使大量经典和现代 Windows 游戏变得可访问。

— Editorial Team

Advertisement 728x90

继续阅读