Loading... 《异星工厂》是由slpwnd制作发行的一款模拟经营类作品,在游戏中玩家的飞船坠落的在了异星球,在玩家需要利用星球上的资源生存下来并建立一个工厂。 收集资源,升级自己的设备,建设基础设施,让生产自动化,并打败你的敌人 <!--more--> 环境准备:Centos7.x 系统更新、国内服务器跟换阿里云源 境外服务器直接更新系统即可 ## 一、系统更新 更换源 首先备份原来的源,以防不可预测的错误能有恢复的余地 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup 导入阿里云Centos7源 wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo 或者 curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo 添加EPEL wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo ``` curl -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo ``` 清除YUM缓存 yum clean all 缓存阿里云源 yum makecache 至此已经成功更换,可以更新系统(非必要,时间较久) yum -y update 如更新了系统记得重启 ## 二、Centos glibc-2.18 环境编译 安装gcc与wget ``` yum install gcc -y yum install wget -y ``` 下载glibc-2.18.tar.gz ``` wget http://ftp.gnu.org/gnu/glibc/glibc-2.18.tar.gz ``` 私有加速地址(国内) ``` wget https://webstation.zimri.online/share/Game/factorio/server/glibc-2.18.tar.gz ``` 解压并进入到glibc-2.18 ``` tar -xvf glibc-2.18.tar.gz cd glibc-2.18 ``` 创建build文件夹 ``` mkdir build cd build ``` 编译 ``` ../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin make -j4 make install ldd --version ``` ## 三、screen 安装 Screen是一个可以在多个进程之间多路复用一个物理终端的全屏窗口管理器。 用户可以在一个screen会话中创建多个screen子会话,在每一个screen会话(或子会话)中就像操作一个真实的telnet/SSH连接窗口 ``` yum install screen -y ``` ## 四、防火墙例外 默认 CentOS7 使用的防火墙 firewalld 查看防火墙状态 ``` firewall-cmd --state 或者 systemctl status firewalld ``` 返回`success`代表已开启 如果关闭状态以下步骤可以不执行 也可以自行选择是否继续,默认是为了安全我们打开防火墙 状态关闭,需要启动防火墙 ``` systemctl start firewalld ``` 开机启用 ``` systemctl enable firewalld ``` 开放factorio指定端口 ``` firewall-cmd --zone=public --add-port=34197/udp --permanent ``` 当然ssh端口以防万一 也加上 ``` sudo firewall-cmd --zone=public --permanent --add-service=ssh ``` 3、重新载入,使配置生效 重载一下防火墙 ``` sudo firewall-cmd --reload ``` ## 五、Factorio 服务端准备 ### 1.下载程序 最新版 或按需 ``` cd ~ ``` ``` wget https://www.factorio.com/get-download/0.17.79/headless/linux64 ``` ### 2.私有加速地址(国内) ``` wget https://webstation.zimri.online/share/Game/factorio/server/0.17.79/linux64 ``` ### 3.解压压缩包 ``` tar -xvf linux64 ``` ### 4.推荐将项目移动到 /opt目录下 ``` mv -f /root/factorio /opt/factorio ``` ### 5.编辑配置文件 进入/opt/factorio/data文件夹,编辑server-settings.example.json文件 ``` cd /opt/factorio/data cp server-settings.example.json server-settings.json ``` 必要的一些设置 ``` "name": "[CN]服务器名字", "description": "服务器描述", "username": "factorio官网注册的账户", "password": "factorio密码", "token": "设置token 格式类似b50704b226ab50704b226ab50704b226a", ... ``` ### 6.生成地图* 第一次建立服务器 无论有没有地图 都需要执行一下 生成地图命令 才能正确加载 ``` cd /opt/factorio ``` ``` ./bin/x64/factorio --create ./saves/test1.zip ``` ### 7.开服 因为Factorio SSH命令独占 所以使用之前安装screen 命令 来达到后台运行 ``` screen -S factorio ``` 指定地图命令开服 ``` /opt/factorio/bin/x64/factorio --config /opt/factorio/config/config.ini --port 34197 --start-server /opt/factorio/saves/test1.zip --server-settings /opt/factorio/data/server-settings.json ``` 以saves文件内最新地图存档开服命令 ``` /opt/factorio/bin/x64/factorio --start-server-load-latest --server-settings /opt/factorio/data/server-settings.json ``` 然后直接退出SSH窗口即可 ### 8.管理命令 #### 登陆服务器 连接SSH后 显示后台执行的ssh命令行 ``` screen -ls ``` 输出 ``` There is a screen on: 1051.factorio_auto (Attached) 1 Socket in /var/run/screen/S-root. ``` 连接进去screen 输出前面有进程ID 可以直接使用ID登陆(ID是动态的) ``` screen -r 1051 ``` #### 立即存档 登陆进sceen后 直接输入 ``` /server-save ``` 即可存档 #### 退出factorio服务器 登陆进sceen后 直接按 Centr + C 服务器关闭 ## 六、开机自启动 因为Factorio SSH命令独占 开机启动命令选用 screen 带saves文件内最新地图存档开服命令 建立开机脚本 ``` cd /opt/factorio ``` ``` mkdir start cd start ``` ``` touch screen.sh vi screen.sh ``` INSERT内容如下 ``` screen_name="factorio_auto" screen -dmS $screen_name cmd="/opt/factorio/start/factorio-run.sh"; screen -x -S $screen_name -p 0 -X stuff "$cmd" screen -x -S $screen_name -p 0 -X stuff '\n' ``` 输入:wq保存 ``` touch factorio-run.sh vi screen.sh ``` INSERT内容如下 ``` /opt/factorio/bin/x64/factorio --start-server-load-latest --server-settings /opt/factorio/data/server-settings.json ``` 输入:wq保存 授予执行权限 ``` chmod +x factorio-run.sh chmod +x screen.sh ``` 编辑rc.local 最后一行加入上面建立的脚本 ``` vi /etc/rc.d/rc.local ``` ``` ... ... /opt/factorio/start/screen.sh ``` 授予执行权限 ``` chmod +x /etc/rc.d/rc.local ``` 最后修改:2024 年 01 月 18 日 © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 84 如果觉得我的文章对你有用,请随意赞赏
1 条评论
希望出一个部署幻兽帕鲁的教程