LANのgitディレクトリをDropboxにバックアップできるinotifyベースのサービスがあります。 Dropboxにgitディレクトリを保持しようとしましたが、gitクライアントが複数あるため、エラーファイルが頻繁に発生します。
開発の初期段階では、RAMドライブにログインしようとするのはかなり忙しくて面倒なシステムサービスでした。/tmp
他のアプリケーションがそこにスペースに依存しているので、使用したくありません。
fstabからメモリドライブを作成するには、次のものが必要です。
tmpfs /mnt/ram tmpfs nodev,nosuid,noexec,nodiratime,size=1024M 0 0
バックアップサービスを開始する前に、メモリドライブがマウントされていることを確認する必要があります。サービスの遅延開始条件を設定したい。
このサービスを前提として使用する人の提案を見たことがありますが、必要なサービス名を提供する*.mnt
文書はありません。/lib/systemd/system
このマウントをどのように識別しますか?別の方法がありますか?
答え1
あなたの状況を理解している限り、あなたは自家製のバックアップサービスをロードするためのシステムサービスファイルを作成しました。バックアップサービスが開始される前に、RAMドライブのマウント(/ etc / fstabのエントリとして定義されている)が利用可能であることを確認する必要があります。
私が直接したわけではなく、マンページで探してみました。だからこれはうまくいかないかもしれません。
によると、man systemd.unit
「[UNIT] SECTION OPTIONS」には有望に見えるスイッチがあります。
インストールが必要=
スペースで区切られた絶対パスのリスト。指定されたパスにアクセスするために必要なすべてのインストール単位に対して、Requires =およびAfter =タイプの依存関係を自動的に追加します。
noautoとマークされたマウントポイントはlocal-fs.targetを介して自動的にマウントされませんが、このオプションの目的によっては依然として尊重されます。つまり、デバイスからドラッグします。
テスト目的でnoauto
これをfstab
。
答え2
少なくともArchでは、結果のsystemdインストールが/etc/fstab
展開されます。/run/systemd/generator
たとえば、マイシステムでは、次のリストを使用してマイサービスファイルに追加できます。
[Unit]
Description=backup logging to temp
After=mnt-ram.mount
ls -la /run/systemd/発電機
:> ls -la
total 32
-rw-r--r-- 1 root root 362 Jun 20 17:01 -.mount
drwxr-xr-x 5 root root 260 Jun 20 17:01 .
drwxr-xr-x 22 root root 580 Jun 21 04:40 ..
-rw-r--r-- 1 root root 516 Jun 20 17:01 boot.mount
drwxr-xr-x 2 root root 120 Jun 20 17:01 local-fs.target.requires
drwxr-xr-x 2 root root 80 Jun 20 17:01 local-fs.target.wants
-rw-r--r-- 1 root root 168 Jun 20 17:01 mnt-3T.automount
-rw-r--r-- 1 root root 515 Jun 20 17:01 mnt-3T.mount
-rw-r--r-- 1 root root 168 Jun 20 17:01 mnt-4T.automount
-rw-r--r-- 1 root root 515 Jun 20 17:01 mnt-4T.mount
-rw-r--r-- 1 root root 260 Jun 20 17:01 mnt-ram.mount
-rw-r--r-- 1 root root 349 Jun 20 17:01 mnt-sda.mount
drwxr-xr-x 2 root root 80 Jun 20 17:01 remote-fs.target.requires