CentOS 7 设置 Jar包、MinIO、Nginx 开机自启动 傷城~ 2024-02-05 23:24 22阅读 0赞 ##### 一、设置 Jar 包开机自启动 ##### 假设我们的 jar 包在 `/home/test/` 目录下, 同时在这个目录下创建启动脚本 touch start.sh 里面的内容如下: #!/bin/bash export JAVA_HOME=/opt/jdk1.8 export PATH=$JAVA_HOME/bin:$PATH cd /home/test/ nohup java -jar xxx.jar >> /home/test/xxx.log 2>&1 & **注意:** 里面的环境变量是必须的,将`/opt/jdk1.8`改成你自己的路径,`cd /home/test/` 这一步也不能少,还有 `#!/bin/bash` 这一行 给脚本赋予权限 chmod 777 start.sh 手动测试一下 `start.sh` ,然后 `ps -ef | grep xxx.jar`, 查看是否能正常启动。 若上述步骤正常,说明 jar 包和脚本都正确, 接下来设置开机自启动: 首先,我们去 `/etc/systemd/system` 目录下新建一个 `start-jar.service` 文件,xxx 就是自定义的服务名称 cd /etc/systemd/system touch start-jar.service 在文件中写入以下内容: [Unit] Description=xxx After=network.target [Service] Type=forking ExecStart=/home/test/start.sh PrivateTmp=true [Install] WantedBy=multi-user.target 其中: > Description:服务的描述 > After:设置在某个服务启动后启动 > \[Service\] 服务参数配置 > ExecStart 服务运行执行的命令,放上面创建的脚本位置 > \[Install\] 服务安装的相关设置,可设置为多用户 根据需要,自己修改 Description 和 ExecStart 的内容即可(ExecStart后面的java命令需要全路径) 设置权限: chmod 777 start-jar.service 设置开机自启动 systemctl daemon-reload systemctl enable start-jar.service 自己可以 `systemctl start start-jar` 试一下能否启动成功。 启动成功之后可以查看下服务状态: systemctl status start-ytb.service ![在这里插入图片描述][5d068fb6a46544d2aac4676aa7478537.png] 此时启动成功说明脚本没有问题。建议使用下面命令查看自启动是否设置成功: systemctl list-unit-files | grep start-ytb.service ![在这里插入图片描述][a3d658c201684c7984d2a32734006a0f.png] 如果是 enabled 则说明设置成功。如果是 static 则设置自启动失败。 ###### 二、设置 MinIO 开机自启动 ###### 步骤和上面的设置 jar 自启动一样,不一样的就是启动脚本: #!/bin/bash export MINIO_ACCESS_KEY=ytbfile export MINIO_SECRET_KEY=wIsc0m-1ng /root/minio/minio server /data 12345 [Unit] Description=Minio service Documentation=https://docs.minio.io/ [Service] WorkingDirectory=/root/minio/ ExecStart=/root/minio/start.sh Restart=on-failure RestartSec=5 [Install] WantedBy=multi-user.target ###### 三、设置 Nginx 开机自启动 ###### 如果用 yum install 命令安装的,[yum命令][yum]会自动创建nginx.service文件,直接用命令 systemcel enable nginx.service 如果使用源码手动编译的则需要手动创建 `nginx.service` 服务文件。 1.在系统服务目录里创建nginx.service文件 vi /lib/systemd/system/nginx.service 内容如下: [Unit] Description=nginx After=network.target [Service] Type=forking ExecStart=/usr/local/nginx/sbin/nginx ExecReload=/usr/local/nginx/sbin/nginx -s reload ExecStop=/usr/local/nginx/sbin/nginx -s quit PrivateTmp=true [Install] WantedBy=multi-user.target 保存退出。 2.设置开机启动 systemctl enable nginx.service ###### 四、补充 ###### 可以使用这个命令来查看服务启动日志 journalctl -u 服务名 例如: journalctl -u start-jar.service [5d068fb6a46544d2aac4676aa7478537.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/01/30/d25727315ac04e82b0c6deb306ef2071.png [a3d658c201684c7984d2a32734006a0f.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/01/30/e59aa9204e984528af891329653d3f71.png [yum]: https://so.csdn.net/so/search?q=yum%E5%91%BD%E4%BB%A4&spm=1001.2101.3001.7020
还没有评论,来说两句吧...