srv_install.sh 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. #! /bin/bash
  2. # 用于开新区
  3. if [[ -z "$1" || ! "$1" =~ ^[0-9]+$ ]]; then
  4. echo "错误: 请输入有效的 zone_id (正整数)。"
  5. exit 1
  6. fi
  7. serverPath=/data/server #能否获取当前路径作为服务器路径
  8. zone_id=$1
  9. echo -e "获取服务器id: ${zone_id} \n"
  10. ##################################
  11. index1=寻宝
  12. index2=服
  13. server_name=
  14. mapserver() {
  15. server_name=$index1$1$index2
  16. echo $server_name
  17. }
  18. ##################################
  19. ### 下面xxx修改为需要的路径
  20. to_dir=${serverPath}/bin${zone_id}
  21. if [ ! -d "$to_dir" ]; then
  22. # 目录不存在,创建目录
  23. mkdir -p "$to_dir"
  24. cd $to_dir
  25. # 目录不存在,创建目录
  26. mkdir -p "log"
  27. ## 复制 Config ,Main,AdminLogic 三个文件 创建common core excel module 四个软链接
  28. cp -r ${serverPath}/bin/script ${to_dir}
  29. cp -r ${serverPath}/bin/lua51.dll ${to_dir}
  30. cp -r ${serverPath}/bin/logic.exe ${to_dir}
  31. cp -r ${serverPath}/bin/logic ${to_dir}
  32. cp -r ${serverPath}/bin/libgcc_s_dw2-1.dll ${to_dir}
  33. chmod 777 logic
  34. rm -rf ${to_dir}/script/common
  35. rm -rf ${to_dir}/script/excel
  36. rm -rf ${to_dir}/script/module
  37. #cp ${serverPath}/bin/script/Config.lua ${serverPath}/bin${zone_id}/script/Config.lua
  38. #cp ${serverPath}/bin/script/Main.lua ${serverPath}/bin${zone_id}/script/Main.lua
  39. #cp ${serverPath}/bin/script/AdminLogic.lua ${serverPath}/bin${zone_id}/script/AdminLogic.lua
  40. ln -s ${serverPath}/bin/script/common ${serverPath}/bin${zone_id}/script/common
  41. #ln -s ${serverPath}/bin/script/core ${serverPath}/bin${zone_id}/script/core
  42. ln -s ${serverPath}/bin/script/excel ${serverPath}/bin${zone_id}/script/excel
  43. ln -s ${serverPath}/bin/script/module ${serverPath}/bin${zone_id}/script/module
  44. port=$((8191 + zone_id))
  45. port_admin=$((10000 + zone_id))
  46. database_idx=$((350001 + zone_id))
  47. svr_idx=$((810537 + zone_id))
  48. svrName_idx=$((zone_id - 1))
  49. # 替换配置文件
  50. sed -i "25c\PORT_CLIENT = ${port}" ${to_dir}/script/Config.lua
  51. sed -i "26c\PORT_ADMIN = ${port_admin}" ${to_dir}/script/Config.lua
  52. sed -i "29c\DB_NAME = \"ckwy_fy_S${database_idx}\"" ${to_dir}/script/Config.lua
  53. sed -i "32c\SVR_INDEX = ${svr_idx}" ${to_dir}/script/Config.lua
  54. mapserver $zone_id
  55. echo $server_name
  56. sed -i "33c\SVR_NAME = \"${server_name}\"" ${to_dir}/script/Config.lua
  57. fi
  58. #启动服务
  59. echo -e "开始启动服务:${zone_id}\n"
  60. cd $to_dir && ./logic