diff options
| author | Sören Tempel <soeren+git@soeren-tempel.net> | 2025-10-27 04:11:20 +0100 |
|---|---|---|
| committer | Ludovic Courtès <ludo@gnu.org> | 2025-11-06 23:29:46 +0100 |
| commit | 08db14c74f5d0608f70f87c0cdbcb80fd0a499f5 (patch) | |
| tree | 42eaf19a9660704d2d42ebecc5d29b055f200aae | |
| parent | b2a6f65753aa6ec15c630f2285f9bae4de84e13e (diff) | |
file-systems: Support the 'remount' mount flag.
This allows remounting file systems which are already mounted by
the initrd with custom mount options (e.g. /proc with hidepid=2).
* gnu/build/file-systems.scm (mount-flags->bit-mask): Map 'remount
to MS_REMOUNT.
* gnu/system/file-systems.scm (invalid-file-system-flags): Add
'remount to the list of KNOWN-FLAGS.
* doc/guix.texi (File Systems): Document it.
Fixes: guix/guix#3849
Change-Id: I0ab116a5b4f7bd201e955ecf022e260c63828dc4
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| -rw-r--r-- | doc/guix.texi | 2 | ||||
| -rw-r--r-- | gnu/build/file-systems.scm | 2 | ||||
| -rw-r--r-- | gnu/system/file-systems.scm | 2 |
3 files changed, 4 insertions, 2 deletions
diff --git a/doc/guix.texi b/doc/guix.texi index 2235b93a216..55eaabf0dbb 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -18443,7 +18443,7 @@ bits), @code{no-atime} (do not update file access times), @code{no-diratime} (likewise for directories only), @code{strict-atime} (update file access time), @code{lazy-time} (only update time on the in-memory version of the file inode), -@code{no-exec} (disallow program execution), and @code{shared} (make the +@code{no-exec} (disallow program execution), @code{remount} (remount a mounted file system), and @code{shared} (make the mount shared). @xref{Mount-Unmount-Remount,,, libc, The GNU C Library Reference Manual}, for more information on these flags. diff --git a/gnu/build/file-systems.scm b/gnu/build/file-systems.scm index 1ff954583a7..d25b798b117 100644 --- a/gnu/build/file-systems.scm +++ b/gnu/build/file-systems.scm @@ -1312,6 +1312,8 @@ corresponds to the symbols listed in FLAGS." (logior MS_STRICTATIME (loop rest))) (('lazy-time rest ...) (logior MS_LAZYTIME (loop rest))) + (('remount rest ...) + (logior MS_REMOUNT (loop rest))) (('shared rest ...) (loop rest)) (() diff --git a/gnu/system/file-systems.scm b/gnu/system/file-systems.scm index f4086dd62b7..f83b67c4770 100644 --- a/gnu/system/file-systems.scm +++ b/gnu/system/file-systems.scm @@ -123,7 +123,7 @@ ;; Note: Keep in sync with 'mount-flags->bit-mask'. (let ((known-flags '(read-only bind-mount no-suid no-dev no-exec - no-atime no-diratime strict-atime lazy-time + no-atime no-diratime strict-atime lazy-time remount shared))) (lambda (flags) "Return the subset of FLAGS that is invalid." |
