在 CentOS 上安装和配置 GeoServer并配置为系统服务

CentOS 上安装和配置 GeoServer 作为系统服务

1. 安装 GeoServer

  1. 下载 GeoServer

  2. 解压文件

    tar -zxvf geoserver-2.25.3-bin.zip -C /usr/local
    

2. 创建 systemd 服务文件

  1. 创建服务文件

    sudo vim /etc/systemd/system/geoserver.service
    
  2. 编辑服务文件
    输入以下内容,确保根据实际安装路径和用户进行调整:

    [Unit]
    Description=GeoServer Service
    After=network.target
    
    [Service]
    Type=simple
    User=root               # 确保使用正确的用户
    ExecStart=/usr/local/geoserver-2.25.3/bin/startup.sh
    ExecStop=/usr/local/geoserver-2.25.3/bin/shutdown.sh
    WorkingDirectory=/usr/local/geoserver-2.25.3
    Restart=on-abort
    
    [Install]
    WantedBy=multi-user.target
    
  3. 保存并退出

3. 设置脚本权限

确保 GeoServer 的启动和停止脚本具有执行权限:

sudo chmod +x /usr/local/geoserver-2.25.3/bin/startup.sh
sudo chmod +x /usr/local/geoserver-2.25.3/bin/shutdown.sh

4. 配置启动脚本

  1. 编辑启动脚本

    sudo vim /usr/local/geoserver-2.25.3/bin/startup.sh
    
  2. 确保第一行指定正确的解释器
    确保文件的第一行是:

    #!/bin/sh
    
  3. 保存并退出

5. 启用并启动服务

  1. 重新加载 systemd 配置

    sudo systemctl daemon-reload
    
  2. 启用服务(开机自启动)

    sudo systemctl enable geoserver
    
  3. 启动服务

    sudo systemctl start geoserver
    
  4. 检查服务状态

    sudo systemctl status geoserver
    

6. 排查问题

如果服务启动失败,检查日志获取更多信息:

journalctl -xe

常见错误及解决方案

  • Exec format error:确保 startup.sh 的第一行是正确的解释器声明 (#!/bin/sh)。
  • 权限问题:确保脚本文件具有执行权限 (chmod +x)。

7. 常用 systemctl 命令

  • 启动服务

    sudo systemctl start geoserver
    
  • 停止服务

    sudo systemctl stop geoserver
    
  • 重启服务

    sudo systemctl restart geoserver
    
  • 禁用自启动

    sudo systemctl disable geoserver
    
posted @ 2024-10-22 11:17  槑孒  阅读(48)  评论(0编辑  收藏  举报