以前是PC上运行了ASF的。也没有很别扭,但是可控性不高,一旦PC关机就会结束挂卡。
而且桌面上始终有一个窗口,对于强迫症也不是很友好。
后来有了自己的VPS,就打算在服务器端运行ASF,所以查询各种资料,有了这篇博客。
1. 准备工作
您需要:Steam账号,VPS(ip+root密码), 远程连接程序(如PuTTY)和想挂卡的程序的Manifest id。
2. 安装.NET core
依次输入以下命令:
1 | rpm --import https://packages.microsoft.com/keys/microsoft.asc |
理论上来说到这里就好了。测试一下:dotnet --version,如果显示版本号,说明安装无误。
3. 安装ASF
1 | mkdir asf && cd asf |
简单的操作过后,ASF就已经安装在VPS上了。
4. 配置ASF
首先获取JSON配置文件。由于博主本人之前用了windows版的ASF,因此直接上传到asf\config下就好了。
如果没有JSON文件,请访问JSON配置页面填写相关信息即可获取。
如果是挂卡,需要在GamesPlayedWhileIdle里面输入游戏的manifest id,类似如下格式:
1 | "GamesPlayedWhileIdle": [ |
全部修改完之后,保存即可。
5. 运行ASF
1 | screen -S asf #screen命令 |
注意:默认安装路径在/root/asf下。
就成功在VPS上运行了ASF。
运行Screen命令的目的在于可以后台运行。如果用CentOS自带的快捷键Ctrl+Z,ASF程序会进入后台并退出挂卡状态。
在挂卡成功以后,按Ctrl+A,然后按D键就可以返回到控制台本身,同时挂卡也不会停止。
(按Ctrl+D则会结束当前的Screen)
如果有需要返回这个Screen,首先查看一下当前有哪些Screen:
1 | screen -ls |
获取到以后,通过以下命令进入Screen:
1 | screen -r ASF |
虽然个人觉得没有这个必要。毕竟直接修改JSON文件,ASF会自动识别更新的。
(除非你想停止挂卡)
PS:如何kill screen窗口
a. screen内部:
输入exit或Ctrl+D
b. screen外部:
1.使用screen窗口的名字
screen -S session_name -X quit
2.回到screen窗口,再退出screen窗口
或
1.回到screen窗口
screen -r session_name
2.利用exit退出screen窗口,退出窗口后session窗口被自动kill
exit # 可能需要多次exit命令,因为screen中正在运行的程序可能也需要使用exit命令才退出(先使用exit命令退出screen中正在运行的程序,再使用exit命令退出screen)
写论文之余学点新东西。
这篇博文参考了以下文章:
Linux下使用ASF工具 Steam 挂卡的配置使用
JustArchiNET / ArchiSteamFarm - Github
Screen命令 - Linux命令大全
Linux 用户必知:一分钟掌握14个常用Linux命令行快捷键
Linux中的screen命令的用法
感谢他们的分享。