Add lazy-umount-mountpoint page and mount -a FAQ (#1573)

This commit is contained in:
trapexit
2025-11-12 12:19:00 -06:00
committed by GitHub
parent b6e1a08aef
commit 3bacaa6f7f
4 changed files with 39 additions and 5 deletions
@@ -0,0 +1,27 @@
# lazy-umount-mountpoint
* type: `BOOL`
* default: `false`
* example: `lazy-umount-mountpoint=true`
When enabled mergerfs will issue a [lazy
umount](https://man7.org/linux/man-pages/man8/umount.8.html) request
to the mount point as it starts.
```
Lazy unmount. Detach the filesystem from the file hierarchy
now, and clean up all references to this filesystem as soon as
it is not busy anymore.
```
The value of using this is in situations where you wish to change
options which can only be set at initialization or upgrade mergerfs
itself. It also helps in the case of using `mount -a` which leads to a
new instance of mergerfs being mounted due to it being unable to
recognize that it is already mounted.
In theory mergerfs could notice that an instance is already mounted at
the mount point and attempt to use the runtime interface to modify the
options and only mounting a new instance if the version has changed or
initialization time only options are changed. However, given the
relative rarity of this being an issue it isn't a priority.
@@ -282,3 +282,8 @@ Every incoming request contains:
Naturally the mergerfs config as well as anything queriable from the
operating system or filesystems are also available.
## Why does running `mount -a` result in new instances of mergerfs?
See [lazy-umount-mountpoint](../config/lazy-umount-mountpoint.md)
+1
View File
@@ -95,6 +95,7 @@ nav:
- config/flush-on-close.md
- config/export-support.md
- config/kernel-permissions-check.md
- config/lazy-umount-mountpoint.md
- error_handling_and_logging.md
- resource_usage.md
- runtime_interface.md
+6 -5
View File
@@ -6,7 +6,7 @@ current_branch="$(git branch --show-current)"
mike delete --all --push --allow-empty --ignore-remote-status
git checkout "master"
mike deploy --push "preview" "master"
mike deploy --push "latest" "master"
for tag in $(git tag -l | sort --version-sort --reverse)
do
@@ -16,10 +16,11 @@ do
fi
done
latest="$(git tag -l | sort --version-sort --reverse | head -n 1)"
git checkout "${latest}"
mike alias --push "${latest}" "latest"
#latest="$(git tag -l | sort --version-sort --reverse | head -n 1)"
#git checkout "${latest}"
#mike alias --push "${latest}" "latest"
#mike alias --push "latest" "latest"
mike set-default --push "preview"
mike set-default --push "latest"
git checkout "${current_branch}"