• 周年纪念勋章活动已圆满结束,如有已购买但仍未申请的用户,可以通过对应勋章的下载链接申请~

教程 我的世界Linux开服教程-2.进程守护

本文章讲述如何使用systemctl守护进程,以及一些异常处理
上一篇文章:[我的世界Linux开服教程-1.基础篇]https://skymansion.cn/threads/linux-1.57/
参考上一篇文章,相信很多人都开起来了,或许大家会发现一个问题,当关闭终端后,服务端也随之关闭,那么如何做到关闭终端不关闭服务端呢?本文章会给大家带来详细的解答

1.编辑启动脚本
Bash:
nano Lunch.bat
添加以下行
Bash:
#!/bin/bash
加这行的原因是:
系统会检查脚本是否以正确的 shebang 行开始,例如 #!/bin/bash 或 #!/bin/sh。如果缺少这一行,系统无法识别如何执行该脚本。
Q:用户直接执行为什么不需要这一行?
答:如果是root用户,默认为/bin/bash
浏览附件241
按住Ctrl+X退出,这时nano会向你询问,是否将更改保存至缓冲区
输入大写Y(Shift+y)按Enter回车
2.创建系统服务
Bash:
nano /usr/lib/systemd/system/service-name.service
其中service-name可以自行替换,我这里以minecraft-server.service替换
浏览附件242
回车,并写入以下内容,
代码:
[Unit]
Description=输入描述,一定要是英语
Documentation=文档链接
After=network.target
After=mysqld.service
Wants=network.target

[Service]
WorkingDirectory=工作目录,服务端的目录
ExecStart=输入服务端启动脚本绝对路径
Restart=on-abnormal
RestartSec=5s
KillMode=mixed

StandardOutput=journal
StandardError=syslog

[Install]
WantedBy=multi-user.target
例如这样
浏览附件243
nano的保存方式就不说了,前面和第一篇文章说过
下一步,重载配置
Bash:
systemctl daemon-reload
启动服务端
Bash:
systemctl start service-name
刚刚我将service-name变成minecraft-server,那我就应该输入:systemctl start minecraft-server
浏览附件244
按回车,应该不会返回任何内容
如何确认服务端是否启动?
使用以下命令
Bash:
systemctl status service-name
可以看到日志以及运行状态
浏览附件245
3.进程守护常用命令:
Bash:
#启动服务
systemctl start service-name

#关闭服务
systemctl stop service-name

#查看服务状态
systemctl status service-name

#重启服务
systemctl restart service-name

#设置开机自动启动
systemctl enable service-name

#取消开机自动启动
systemctl disable service-name

如何实时监听日志?
要实时监听某一服务的日志,可以使用 systemctl 配合 journalctl 命令。journalctl 是一个用于查询和显示从系统日志开始以来的日志信息的工具
[H3]使用 journalctl 监听服务日志[/H3]
假设你想监听名为 example.service 的服务,你可以使用以下命令:
Bash:
journalctl -fu example.service
这里的参数说明如下:
  • -f :表示持续跟踪新的日志条目。
  • -u example.service :指定要跟踪的单元名称(即服务名称)。
[H3]确保日志级别适当[/H3]
你可能还需要确保 systemd 为你关心的服务记录了足够的日志信息。这可以通过修改服务文件中的 LogLevel 设置来实现,或者确保你的系统的日志策略允许详细日志的记录。
其他可用选项
如果需要,你还可以添加其他 journalctl 选项,例如:
  • --since "2024-04-16 12:00:00" :只显示指定时间之后的日志。
  • --until "2024-04-17 12:00:00" :只显示指定时间之前的日志。
 

在线会员

  • h cx
  • XiXia
  • 2801326928
  • Venus
  • Ranica
  • junyu zhao
  • KK_Sir
  • jipa233
  • aAbQQb51
  • 王聪聪
  • 离恨
  • banyue2022
  • MapleSugar365
  • 云中鱼
  • 小李子plum
  • 天月
  • 荆书之
  • yunzixin
  • mclishang
  • hhhhGG
...和 38 更多。
后退
顶部 底部