![在某些沙箱/容器中安装 Steam](https://linux22.com/image/1118499/%E5%9C%A8%E6%9F%90%E4%BA%9B%E6%B2%99%E7%AE%B1%2F%E5%AE%B9%E5%99%A8%E4%B8%AD%E5%AE%89%E8%A3%85%20Steam.png)
我正在研究 Steam Debian 软件包,发现它添加了另一个存储库和一个 GPG 密钥,我发现这非常麻烦,因为我不想通过升级和debian/postinst
脚本授予 Valve 我电脑的超级用户权限。
有没有办法可以在某个容器中安装 Steam,而不影响系统的其余部分?
答案1
答案2
您可以使用 chroot 为 steam 安装单独的操作系统,但从常规安装中访问该程序。我自己从未设置过 chroot,也不是专家,因此下面只是提供了设置 chroot 所需的一般步骤的模糊描述帮助您决定该选项是否有趣。如果您决定走这条路线,您应该遵循更精确的指南。
步骤1:
使用 Ubuntu 安装设置另一个分区并安装您想要的应用程序。
第2步:
在您的常规 Ubuntu 安装类型中:“sudo mount /dev/sda1/mnt/thechrootfolder”(您需要调整此代码以进入第二个 Ubuntu 安装)
步骤#3:
在您的常规 Ubuntu 安装类型中:“sudo mount --bind /dev/media/sda1/dev”(您正在尝试挂载常规安装的 dev 文件夹)
在常规 Ubuntu 安装中输入:“sudo mount --bind /proc/media/sda1/proc”
在常规 Ubuntu 安装中输入:“sudo mount --bind /sys/media/sda1/sys”
步骤4:
在常规 Ubuntu 安装中输入:“sudo cp /etc/resolv.conf /2ndubuntuinstalllocation/etc/resolv.conf”(这是访问互联网所需的 dns 功能所必需的)
步骤#5:
在常规 Ubuntu 安装类型中输入:“sudo xhost +”,这将允许所有用户访问当前用户的 xserver,这样当您启动应用程序时,它可以在您当前的 xserver 中打开。(虽然有效,但这不是一种安全的方法,因为任何本地用户都可以访问当前用户的 XSERVER!!!您应该始终限制访问。)
步骤#6:
在常规 Ubuntu 安装中输入:“sudo chroot /2ndinstalllocaiton(这是您进入其他安装)。现在在终端中输入代码以启动所需的应用程序(它将从其他操作系统运行,但出现在您的常规安装 xserver 中)。
答案3
只需稍加努力,您就可以在非特权 LXC 容器中安装并运行 Steam(详情请点击此处) 以阻止它访问您的文件系统和正在运行的进程。使用这种方法不会造成明显的性能损失。
您也可以考虑在 Docker 中运行 Steam。我还没有这样做,但在网上搜索后,我发现了几个关于这个主题的帖子。