fstabのマウントポイントエントリが削除または変更されると、Systemdによって生成されたマウントファイルは削除されません。

fstabのマウントポイントエントリが削除または変更されると、Systemdによって生成されたマウントファイルは削除されません。

私は最近Linuxでsystemdを使い始めました。 systemd マウントに関するいくつかの観察があります。

  • /etc/fstab にエントリがある場合、マウントポイント名を使用してマウント単位ファイルが生成されます。

また、下記の2つの状況を観察しました。

前提条件:fstabには次の項目があります。

/dev/sda3 /test_mount ext4 rw,acl,nobarrier,nodelalloc 0 0

(したがって、再起動後、/var/run/systemd/generator/ ディレクトリに test_mount.mount ファイルが作成されます。)

  • シナリオ 1: fstab からエントリを削除し、コンピュータを再起動しました。私の期待は、test_mount.mountファイルを/var/run/systemd/generator/ディレクトリから削除する必要があることです。ただし、ファイルは削除されず、systemdがデバイスノードをマウントしようとします。

  • シナリオ2:fstabのエントリを修正しました。マウントポイントの名前をsec_test_mountに変更し、マシンを再起動しました。 /var/run/systemd/generator/ディレクトリからtest_mount.mountファイルを削除し、sec_test_mount.mountファイルを新しく作成する必要があります。 sec_test_mount.mountは新しく作成されますが、test_mount.mountは削除されません。どちらのマウントファイルもマウントしようとしており、マウントが2回発生します。

答え1

ファイルシステムはtmpfs(インメモリファイルシステム)であり、再起動後も保持されないため、systemd-fstab-generatorの下にマウントデバイスを作成します/run。したがって、起動するたびに空のボリュームに交換する必要があります。

(tmpfsマウントポイントへの/var/runシンボリックリンクでなければなりません/run。名前は互換性のためにのみ存在し、/runどこでも最新のLinuxで直接使用されます。)

これがあなたのコンピュータに当てはまらない場合は、それが問題だと言いたいのですが…それを修正すると、tmpfs Allが空になるので、ジェネレータは起動するたびにマウントデバイスを正しく再生成します。

関連情報