LinuxシステムでSystemdとCrontabを使用してタスクを並列実行する方法

SystemdとCrontabを組み合わせることで、Linuxシステムでタスクを並列に実行できます。以下に、これら2つのツールの使用方法を示します。

  1. 並行で実行されるタスクスクリプトを作成する:

task1.sh や task2.sh のようなタスクスクリプトを作成します。

  1. systemdサービスユニットファイルを新規作成:

/etc/systemd/system/ ディレクトリに、parallel-tasks.service など、新しいサービスユニットファイルを作成します。

[Unit]
Description=Parallel Tasks
[Service]
ExecStart=/bin/bash /path/to/task1.sh &
ExecStart=/bin/bash /path/to/task2.sh &
[Install]
WantedBy=multi-user.target
  1. Systemdサービスの有効化と起動:

Systemdサービスを有効化して起動するには、以下のコマンドを実行してください。

sudo systemctl enable parallel-tasks
sudo systemctl start parallel-tasks
  1. Crontabタスクを作成する:

Crontab ファイルを編集するには、次のコマンドを実行します。

crontab -e
  1. Crontab 追加

システムdタスクを1分おきに実行するには、crontabファイルに以下を追加します。

* * * * * /usr/bin/systemctl start parallel-tasks
  1. Crontab ファイルを保存してエディタから退出する。

CrontabはSystemdのタスクを分単位で実行させ、Systemdは並列実行されたタスクスクリプトを起動します。例にあるファイル名やパスは、実際に使用するファイル名やパスに置き換えてください。

bannerAds