一、Centos7.6前期准备(系统与工具)
系统基础配置
确认系统版本:通过远程连接工具输入cat/etc/redhat-release,验证是否为CentOSLinuxrelease7.6.x,建议使用64位系统(32位系统易出现内存不足问题)。
关闭SELinux:编辑/etc/selinux/config文件,将SELINUX=enforcing改为SELINUX=disabled,执行setenforce0临时生效,避免拦截服务端进程。
划分目录:执行mkdir-p/usr/local/legend/server/usr/local/legend/data,分别存放服务端程序与数据库文件,便于后续管理。
必备工具清单(Linux适配版)
远程连接工具:Xshell(命令行操作)、WinSCP(可视化文件传输,方便Windows与Centos互传文件);
传奇服务端:选择Linux兼容版(如1.76复古Linux端,避免使用Windows服务端,会出现运行报错);
数据库:MariaDB5.5(Centos7.6默认兼容版本,替代MySQL,避免高版本数据库适配问题);
依赖库:gcc、glibc-devel、net-tools(服务端编译与运行必备,需通过yum命令安装);
文本编辑器:Notepad++(本地修改服务端配置文件,支持Linux格式编码);
Linux登录器:侠客登录器Linux版(生成客户端可识别的登录程序,支持跨系统连接)。
二、Centos7.6环境搭建(核心步骤)
安装依赖库与基础工具
执行以下命令批量安装依赖:
yuminstall-ygccglibc-develnet-toolsmariadb-servermariadb
启动MariaDB并设置开机自启:
systemctlstartmariadb
systemctlenablemariadb
初始化数据库(设置root密码,删除匿名账号):
执行mysql_secure_installation,按提示输入密码(建议记录),依次选择“Y”确认删除匿名账号、禁止root远程登录(若需远程管理,后续可单独授权)。
配置传奇数据库
登录MariaDB:mysql-uroot-p,输入密码后进入数据库命令行;
创建传奇专用数据库并授权:
createdatabaselegend_dbcharactersetutf8;
grantallprivilegesonlegend_db.*to'legend_user'@'localhost'identifiedby'你的密码';
flushprivileges;
导入服务端SQL文件:
通过WinSCP将服务端自带的db.sql上传至/usr/local/legend/data,执行mysql-ulegend_user-plegend_db</usr/local/legend/data/db.sql,输入密码完成导入,随后输入exit退出数据库。
三、Centos7.6传奇服务端部署
服务端文件传输与解压
通过WinSCP将Linux版传奇服务端压缩包(如legend_server.tar.gz)上传至/usr/local/legend/server;
执行命令解压:
tar-zxvf/usr/local/legend/server/legend_server.tar.gz-C/usr/local/legend/server
赋予服务端执行权限(Centos权限严格,必须操作,否则无法启动):
chmod+x/usr/local/legend/server/*.sh
chmod+x/usr/local/legend/server/GameSrv/usr/local/legend/server/LoginSrv
修改服务端配置文件
编辑服务端IP与端口配置:
执行vi/usr/local/legend/server/Config/ServerInfo.conf,按i进入编辑模式,将ServerIP改为服务器公网IP,ServerPort设为7000(默认未占用端口),按Esc后输入:wq保存退出;
调整游戏参数:
编辑/usr/local/legend/server/Config/GameConfig.conf,修改经验倍率(如ExpRate=5)、金币掉落率(GoldRate=3),保存方式同上。
启动服务端进程
执行启动脚本(后台运行,避免关闭Xshell后进程终止):
nohup/usr/local/legend/server/StartServer.sh&
验证进程是否正常:
执行psaux|grepGameSrv,若显示GameSrv与LoginSrv进程,说明启动成功;若提示“缺失libxxx.so”,需通过yuminstall安装对应缺失库(如yuminstall-ylibstdc++.so.6)。
四、登录器适配与网络配置
生成Linux兼容登录器
通过WinSCP将Linux登录器生成工具上传至/usr/local/legend/server,赋予执行权限:chmod+x/usr/local/legend/server/LoginMaker;
执行登录器生成命令:
cd/usr/local/legend/server
./LoginMaker-ip你的公网IP-port7000-out/usr/local/legend/server/LegendLogin.exe
通过WinSCP将生成的LegendLogin.exe下载至本地,复制到传奇客户端根目录。
开放服务器端口(防火墙配置)
Centos7.6默认使用firewalld防火墙,执行以下命令开放7000端口:
firewall-cmd--zone=public--add-port=7000/tcp--permanent
firewall-cmd--reload
验证端口是否开放:firewall-cmd--zone=public--query-port=7000/tcp,显示“yes”即配置成功。
五、Centos7.6架设常见问题解决
服务端启动后进程立即消失
执行catnohup.out查看错误日志,若提示“数据库连接失败”,检查ServerInfo.conf中数据库账号密码是否与MariaDB配置一致;若提示“权限不足”,重新执行chmod+x赋予所有服务端文件执行权限。
远程客户端无法连接服务器
排查步骤:①执行netstat-tuln|grep7000,确认端口是否处于监听状态;②检查服务器公网IP是否正确(可通过curlifconfig.me获取);③若使用云服务器,需在控制台安全组中额外开放7000端口(部分云厂商防火墙与系统防火墙独立)。
游戏内中文乱码
编辑/etc/profile文件,添加编码配置:
echo"exportLANG=en_US.UTF-8">>/etc/profile
source/etc/profile
重启服务端:pkillGameSrv,再执行nohup/usr/local/legend/server/StartServer.sh&。
MariaDB无法远程连接(需管理数据库时)
登录MariaDB授权远程访问:
mysql-uroot-p
grantallprivilegeson*.*to'root'@'%'identifiedby'你的密码';
flushprivileges;
开放3306端口:firewall-cmd--zone=public--add-port=3306/tcp--permanent,重新加载防火墙后即可通过Navicat远程连接。
系统基础配置
确认系统版本:通过远程连接工具输入cat/etc/redhat-release,验证是否为CentOSLinuxrelease7.6.x,建议使用64位系统(32位系统易出现内存不足问题)。
关闭SELinux:编辑/etc/selinux/config文件,将SELINUX=enforcing改为SELINUX=disabled,执行setenforce0临时生效,避免拦截服务端进程。
划分目录:执行mkdir-p/usr/local/legend/server/usr/local/legend/data,分别存放服务端程序与数据库文件,便于后续管理。
必备工具清单(Linux适配版)
远程连接工具:Xshell(命令行操作)、WinSCP(可视化文件传输,方便Windows与Centos互传文件);
传奇服务端:选择Linux兼容版(如1.76复古Linux端,避免使用Windows服务端,会出现运行报错);
数据库:MariaDB5.5(Centos7.6默认兼容版本,替代MySQL,避免高版本数据库适配问题);
依赖库:gcc、glibc-devel、net-tools(服务端编译与运行必备,需通过yum命令安装);
文本编辑器:Notepad++(本地修改服务端配置文件,支持Linux格式编码);
Linux登录器:侠客登录器Linux版(生成客户端可识别的登录程序,支持跨系统连接)。
二、Centos7.6环境搭建(核心步骤)
安装依赖库与基础工具
执行以下命令批量安装依赖:
yuminstall-ygccglibc-develnet-toolsmariadb-servermariadb
启动MariaDB并设置开机自启:
systemctlstartmariadb
systemctlenablemariadb
初始化数据库(设置root密码,删除匿名账号):
执行mysql_secure_installation,按提示输入密码(建议记录),依次选择“Y”确认删除匿名账号、禁止root远程登录(若需远程管理,后续可单独授权)。
配置传奇数据库
登录MariaDB:mysql-uroot-p,输入密码后进入数据库命令行;
创建传奇专用数据库并授权:
createdatabaselegend_dbcharactersetutf8;
grantallprivilegesonlegend_db.*to'legend_user'@'localhost'identifiedby'你的密码';
flushprivileges;
导入服务端SQL文件:
通过WinSCP将服务端自带的db.sql上传至/usr/local/legend/data,执行mysql-ulegend_user-plegend_db</usr/local/legend/data/db.sql,输入密码完成导入,随后输入exit退出数据库。
三、Centos7.6传奇服务端部署
服务端文件传输与解压
通过WinSCP将Linux版传奇服务端压缩包(如legend_server.tar.gz)上传至/usr/local/legend/server;
执行命令解压:
tar-zxvf/usr/local/legend/server/legend_server.tar.gz-C/usr/local/legend/server
赋予服务端执行权限(Centos权限严格,必须操作,否则无法启动):
chmod+x/usr/local/legend/server/*.sh
chmod+x/usr/local/legend/server/GameSrv/usr/local/legend/server/LoginSrv
修改服务端配置文件
编辑服务端IP与端口配置:
执行vi/usr/local/legend/server/Config/ServerInfo.conf,按i进入编辑模式,将ServerIP改为服务器公网IP,ServerPort设为7000(默认未占用端口),按Esc后输入:wq保存退出;
调整游戏参数:
编辑/usr/local/legend/server/Config/GameConfig.conf,修改经验倍率(如ExpRate=5)、金币掉落率(GoldRate=3),保存方式同上。
启动服务端进程
执行启动脚本(后台运行,避免关闭Xshell后进程终止):
nohup/usr/local/legend/server/StartServer.sh&
验证进程是否正常:
执行psaux|grepGameSrv,若显示GameSrv与LoginSrv进程,说明启动成功;若提示“缺失libxxx.so”,需通过yuminstall安装对应缺失库(如yuminstall-ylibstdc++.so.6)。
四、登录器适配与网络配置
生成Linux兼容登录器
通过WinSCP将Linux登录器生成工具上传至/usr/local/legend/server,赋予执行权限:chmod+x/usr/local/legend/server/LoginMaker;
执行登录器生成命令:
cd/usr/local/legend/server
./LoginMaker-ip你的公网IP-port7000-out/usr/local/legend/server/LegendLogin.exe
通过WinSCP将生成的LegendLogin.exe下载至本地,复制到传奇客户端根目录。
开放服务器端口(防火墙配置)
Centos7.6默认使用firewalld防火墙,执行以下命令开放7000端口:
firewall-cmd--zone=public--add-port=7000/tcp--permanent
firewall-cmd--reload
验证端口是否开放:firewall-cmd--zone=public--query-port=7000/tcp,显示“yes”即配置成功。
五、Centos7.6架设常见问题解决
服务端启动后进程立即消失
执行catnohup.out查看错误日志,若提示“数据库连接失败”,检查ServerInfo.conf中数据库账号密码是否与MariaDB配置一致;若提示“权限不足”,重新执行chmod+x赋予所有服务端文件执行权限。
远程客户端无法连接服务器
排查步骤:①执行netstat-tuln|grep7000,确认端口是否处于监听状态;②检查服务器公网IP是否正确(可通过curlifconfig.me获取);③若使用云服务器,需在控制台安全组中额外开放7000端口(部分云厂商防火墙与系统防火墙独立)。
游戏内中文乱码
编辑/etc/profile文件,添加编码配置:
echo"exportLANG=en_US.UTF-8">>/etc/profile
source/etc/profile
重启服务端:pkillGameSrv,再执行nohup/usr/local/legend/server/StartServer.sh&。
MariaDB无法远程连接(需管理数据库时)
登录MariaDB授权远程访问:
mysql-uroot-p
grantallprivilegeson*.*to'root'@'%'identifiedby'你的密码';
flushprivileges;
开放3306端口:firewall-cmd--zone=public--add-port=3306/tcp--permanent,重新加载防火墙后即可通过Navicat远程连接。

