GNU/Linux >> Linux の 問題 >  >> Linux

起動時に /var/run の下にディレクトリを作成します

解決策 1:

systemd に /var/run の下にディレクトリを作成させる方法は 2 つあります。 / /run .

通常、最も簡単なのは RuntimeDirectory を宣言することです あなたのサービスのユニットファイルで。例:

RuntimeDirectory=foo

これにより /var/run/foo が作成されます システムユニット用。 (注:/var/run の下のパスのみを指定してください。フル パスを指定しないでください。 ) 完全なドキュメントについては、systemd.exec ドキュメントの該当するエントリを参照してください。


より複雑または異なる構成または有効期間の保証が必要なランタイム ディレクトリの場合は、tmpfiles.d を使用します。 そしてあなたのパッケージにファイル /usr/lib/tmpfiles.d/mydaemon.conf をドロップさせます :

#Type Path            Mode UID      GID    Age Argument
d     /run/mydaemon   0755 myuser myuser   -   -

ここで tmpfiles.d の完全なドキュメントを参照してください。

解決策 2:

開始時にディレクトリを作成するサービスを作成しました:

vim /etc/systemd/system/mydaemon-helper.service

/etc/systemd/system/mydaemon-helper.serviceの内容 :

[Unit]
Description=MyDaemon Helper Simple Service
After=network.target

[Service]
Type=simple
ExecStartPre=-/usr/bin/mkdir /var/run/mydaemon
ExecStart=/usr/bin/chown myuser:myuser /var/run/mydaemon
Restart=on-abort


[Install]
WantedBy=multi-user.target

次に、このサービスを開始しました:

systemctl start mydaemon-helper

systemctl status mydaemon-helper

出力:

[[email protected] etc]# systemctl status mydaemon-helper.service
● mydaemon-helper.service - MyDaemon Helper Simple Service
   Loaded: loaded (/etc/systemd/system/mydaemon-helper.service; disabled; vendor preset: disabled)
   Active: inactive (dead)

May 28 20:53:50 alpha systemd[1]: Starting MyDaemon Helper Simple Service...
May 28 20:53:50 alpha systemd[1]: Started MyDaemon Helper Simple Service.

最後に、起動時にロードするようにシステムに指示しました:

systemctl enable mydaemon-helper


Linux
  1. Linuxは複数の連続したパスセパレーター(/ home //// username /// file)をどのように処理しますか?

  2. / var / cacheを安全に削除しますか?

  3. / varの下にあるすべてのファイルのデフォルトのグループ/ユーザー所有権を復元するにはどうすればよいですか?

  1. Init.dスクリプトが起動時に実行されていませんか?

  2. lvdisplay エラー:「ディレクトリ /var/lock/lvm を作成できませんでした。ファイルベースのロックの初期化に失敗しました。」

  3. unix:///var/run/supervisor.sock そのようなファイルはありません

  1. /var/log/messages、/var/log/syslog、および/var/log/kern.logの違いは?

  2. 「キャッシュディレクトリ/home//.composer/cache/repo/https—packagist.org/を作成できません。または、ディレクトリが書き込み可能ではありません。キャッシュなしで続行しますか?」

  3. /var/log ディレクトリにある 20 個の Linux ログ ファイル