systemctl start/stop service:如何在 Ubuntu、CentOS、Redhat Linux 中设置 Upstart 脚本和 Respawn 进程

已发表: 2021-06-09

Linux systemd upstart - upstart 脚本

如何为systemd编写启动脚本?

systemd是所有最新版本的 Linux 发行版(如 Ubuntu OS、Redhat OS、CentOS)中最新的service management utility

这就是为什么 Ubuntu 17.4 和 Redhat 7.4 版本现在支持systemctl command作为 upstart 脚本。 如果您使用的是旧版本的 Linux 操作系统,那么您可能需要查看此页面底部以查看旧的init.d script

我们将在本教程中讨论以下内容

  • 设置 systemd 服务单元
  • 如何configure systemd?
  • 如何enable它systemd?
  • 如何使用 systemd 自动启动进程?
  • 如何使用 systemd 停止和respawn进程?

本教程的设置步骤:

Prerequisite:我们已经在/tmp/crunchify文件夹中编译了 CrunchifyAlwaysRunningProgram.java 程序版本。 这个java进程将永远在后台运行。 你可以从这里下载程序。

一旦你下载它然后try to compile它并运行它以确保它工作。

您可以键入CTRL + C退出程序。

现在让我们开始为上述程序设置 systemd 自动启动脚本。

第1步

  • 转到文件夹/lib/systemd/system
  • 键入cd /lib/systemd/system

第2步

  • 创建文件crunchify.service (相应地更改文件名)
  • 将以下内容放入其中

第三步

  • 保存存档
  • 使用chmod 755 crunchify.service提供执行权限

第四步

  • 使用命令systemctl daemon-reload加载 crunchify.service
  • 使用命令systemctl enable crunchify.service
  • 使用命令systemctl start crunchify
  • 使用命令systemctl status crunchify的状态

第 5 步

  • 现在检查进程是否正在运行?
  • 键入命令ps -few | grep java ps -few | grep java查看所有正在运行的 Java 进程
  • 你应该看到这样的东西

这意味着进程28631正在开始使用您的新贵脚本。 您可能有不同的进程 ID。

如何验证您的 systemd crunchify.service 是否正常工作?

  • 尝试使用kill -9 28631杀死进程,您应该会看到应该自动创建新进程。
  • 在我的情况下,创建了新的进程 ID 28887

视频:完整的 Live systemd upstart 脚本设置示例:

该视频包含 – 如何在 CentOS、Redhat、Ubuntu Linux 操作系统中设置 systemd 启动/upstart 脚本?

  • 如何在启动引导时自动执行 shell 脚本
  • 如何在 Linux (CentOS 7) 中创建 systemd 服务
  • 如何将 Linux 服务配置为自动启动?
  • Centos 7 systemd 启动脚本
  • Ubuntu systemd 启动脚本

想了解更多关于 systemd 的信息吗? 这是一份备忘单供您参考。

Linux Systemd 命令备忘单

我希望您了解everything about systemd command和在所有类型的 Linux 操作系统上设置 upstart 脚本的所有知识。

停止:仅适用于旧版操作系统

如果您正在运行older version的 Redhat、Ubuntu、CentOS 版本,那么您将需要这种格式的脚本。

  • 转到/etc/init
  • 创建文件crunchify.conf

  • 只需使用命令service crunchify start启动服务
  • 遵循与上述相同的验证步骤

如果您发现在您的环境中运行新贵脚本有任何问题,请告诉我。 享受你的一天和快乐的编码。