使用 Proton 在 Linux 上玩游戏
简介¶
Proton 是 Valve 的一个项目,旨在通过其 Steam 客户端将游戏带到 Linux 桌面。Proton 是 Wine 的一个分支,Wine 是一个兼容层,用于在 Linux(以及其他符合 POSIX 标准的操作系统)上运行 Windows 应用程序。
自 2018 年 8 月 Proton 问世以来,Proton Compatible Steam Group 已发布了 802 篇评论!这是 Valve 和 Proton 社区取得的巨大进步,因为最初在发布日期测试和认证的游戏只有 27 款。
与 Wine 不同,Proton 通常不需要配置,并且面向完全的初学者。只需安装 Steam 并启用 Proton!
假设¶
- 一台带有桌面环境的 Rocky Linux 工作站
- Flatpak
- Steam 账户
安装 Steam¶
使用 Flatpak 安装 Steam
flatpak install steam
输入选项 20
以选择 app/com.valvesoftware.Steam/x86_64/stable
,然后按 Enter 安装 Steam。
安装 Steam 后,它将自动开始更新。
更新后,您必须登录您的 Steam 账户。如果您还没有账户,应该注册一个。
启用 Proton 兼容性¶
登录 Steam 后,点击左上角的 Steam,然后选择 设置。
在 Steam 设置的左侧菜单中选择 兼容性。
请注意上面照片中,“启用 Steam Play 以支持兼容的游戏”显示为已启用,而“启用 Steam Play 以支持所有其他游戏”未启用。这意味着在 Proton 上测试和验证可玩的游戏已准备好,但未经验证的游戏将无法运行。有些未经验证的游戏在 Proton 上运行良好,但需要控制器映射或一些相对较小的调整。因此,作者建议启用 Steam Play 以支持不受支持的游戏,并自己进行测试!
切换“启用 Steam Play 以支持所有其他游戏”。在提示时重启 Steam。
兼容性并非总是普遍的
许多人报告 ProtonDB 兼容的游戏存在问题,而 Linux 兼容的游戏则运行正常。这通常是由于 SELinux 策略保护文件系统造成的。
首先,使用以下命令检查系统的 SELinux 状态:
sestatus
这将返回三种结果之一:
- SELinux 状态:disabled(如果 SELinux 保护已完全关闭)
- SELinux 状态:permissive(如果 SELinux 处于宽容模式)
- SELinux 状态:enforcing(如果 SELinux 完全保护您的系统)
如果 SELinux 已禁用,那么它不会是导致您游戏问题的根源。如果它处于强制模式,那么它可能是罪魁祸首。尝试在游戏前使用以下命令暂时将 SELinux 设置为宽容模式:
sudo setenforce 0
游戏完成后,请记住使用以下命令将 SELinux 策略设置回强制模式:
sudo setenforce 1
为了获得更永久的解决方案,同时保留 SELinux 策略,您必须研究是哪个规则阻止了您的游戏,这需要对 SELinux 和底层工具进行更深入的了解。请参阅 我们关于 SELinux 安全的指南,以更全面地了解 SELinux。
结论¶
重启 Steam 后,下载您最喜欢的 Windows 游戏并尝试一下!无需进一步配置。祝您游戏愉快!
作者:Joseph Brinkman
贡献者:Steven Spencer, Ganna Zhyrnova