これはFreeBSDLinuxの問題よりも問題です。 Linuxでどのように実行されるか、systemd
その他の質問に答えないでください。
衝突状況が発生しましたmemcached
。これは再現可能ではなく、最終的に把握します。その間、それがmemcached
実行されていることを確認する必要があります。それ以外の場合は再起動する必要があります。経由でインストールpkg
して起動しました/usr/local/etc/rc.d/memcached
。いくつかのオプションがあります。
- 監視スクリプトを作成し、10分ごとまたは
cron
。ここで最も重要なのは、私がスクリプトを書く必要があるということです。を呼び出しservice memcached status
、結果を評価し、を呼び出すこともできますservice memcached start
。書くとは分かりますがぎこちないようですね。むしろすでに存在するメカニズムを使いたいです。 - ループスクリプトを作成できます
do ... until
。その後、修正してください/usr/local/etc/rc.d/memcached
。しかし、パッケージにインストールされたファイルを元の状態に保ちたいと思います。パッケージをアップグレードするたびに変更を永久に適用したくありません。 - スクリプトを入れ
/usr/local/etc/periodic.d/hourly
ましたperiodic(8)
。
プロセスを実行し続けるために私が考えていない単純な基本的なFreeBSDメカニズムはありますか?それとも私が思っているので、8行のスクリプトを書いて呼び出しを開始する必要がありますかcron
?
ベストアンサー1
あなたが探しているもの家庭教師。私はFreeBSDが基本的にソフトウェアを提供するとは思わない。しかし、港にもいくつかあります。少なくとも私はそれを理解しています。
- 監督者名前付きポートとして使用できます。
py-supervisor
(ポートはさまざまな形式で提供され、pkg install py37-supervisor
Pythonのバージョンと一致するバージョンを使用してインストールできます)。 - デーモンツール次のように使用できます。ポート。
- 監視装置次のように使用できます。ポート。
- FSCD名前付きポートとして使用できます。
fsc
。
監督をお勧めします。パッケージをインストールし、次のセクションを追加します/usr/local/etc/supervisord.conf
。
[program:memcached]
command=/usr/local/etc/rc.d/memcached
起動時にスーパーバイザを実行するには、次の行を編集または/etc/rc.conf
使用します。/etc/rc.conf.local
supervisord_enable="YES"
どのスーパーバイザを選択しても無効にする必要がありますmemcached
。