systemd:ファイルシステムをアンマウントせずに.automountデバイスを停止します。

systemd:ファイルシステムをアンマウントせずに.automountデバイスを停止します。

.automountファイルシステムをアンマウントせずにそれを停止する方法はありますか?

今後の自動設置を防止したいのですがいいえ現在マウントされているファイルシステムをアンマウントしたいです。

要求されたファイルシステムを再マウントできないのはなぜですか?

まあumount --lazy非常に危険でいつ完成するかわからない.automount、ユニットを停止するのも同じフラグを使用しているようですMNT_DETACH

デモ:

$ # Call this shell #1:
$ # I block permissions on the unmounted mountpoint:
$ ls -ld /media/backup/
dr-------- 1 root root 0 Nov 19 14:16 /media/backup/
$ ls /media/backup
ls: cannot open directory '/media/backup': Permission denied
# Enable the automounter:
$ sudo systemctl start media-backup.automount
$ # Now I can see the contents:
$ ls /media/backup
blockchain  btrbk  syncthing
$ # Pin it down with a working directory:
$ cd /media/backup/
# Stop the automounter:
$ sudo systemctl stop media-backup.automount
$ # Note there is no complaint about a mounted filesytem...

この時点で、他のシェルで次のことを行います。

$ # Shell #2
$ ls /media/backup/
ls: cannot open directory '/media/backup/': Permission denied

したがって、シェル#2で見るとマウント解除されていますが、シェル#1では引き続きアクセスできます。

$ # Shell #1
$ ls
blockchain  btrbk  syncthing

.automount現在マウントされているファイルシステムをアンマウントせずにデバイスを停止する方法は?

答え1

単にシンボリックリンクを作成して、将来の実行からデバイスを保護します/dev/null

$ sudo systemctl --runtime mask "$(systemd-escape -p --suffix=automount /media/backup)"
Created symlink /run/systemd/system/media-backup.automount → /dev/null.

フラグ--runtimeは次の起動までのみマスクされます。

自動マウントを再度有効にするには、シンボリックリンクを削除します。


メモ:

現在マウントされているファイルシステムをブロックしてマウント解除した後、将来のアクセス試行は次のように表示されることがあります。

$ ls backup
ls: cannot open directory 'backup': Host is down

関連情報