diff options
author | Lennart Poettering <lennart@poettering.net> | 2021-11-12 22:55:14 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-11-12 22:55:14 +0100 |
commit | 0881991c3236a894378167ea9006dbf15a56ba58 (patch) | |
tree | 35669ab12ebbf7bf6cb4ac5c430281ecebd67575 | |
parent | 423de192231c6df4f86042ac6569eb25ed892c3b (diff) | |
parent | db42f011c6302dd2012b3f46c0ced31de12b5051 (diff) | |
download | systemd-0881991c3236a894378167ea9006dbf15a56ba58.tar.gz |
Merge pull request #21329 from poettering/homed-compress-default
homed: default to btrfs compression
-rw-r--r-- | docs/ENVIRONMENT.md | 6 | ||||
-rw-r--r-- | src/home/homework-mount.c | 13 |
2 files changed, 18 insertions, 1 deletions
diff --git a/docs/ENVIRONMENT.md b/docs/ENVIRONMENT.md index 2c61935b6b..5f783ed915 100644 --- a/docs/ENVIRONMENT.md +++ b/docs/ENVIRONMENT.md @@ -433,3 +433,9 @@ SYSTEMD_HOME_DEBUG_SUFFIX=foo \ SYSTEMD_HOME_RECORD_DIR=/var/lib/systemd/home.foo/ \ /home/lennart/projects/systemd/build/systemd-homed ``` + +* `$SYSTEMD_HOME_MOUNT_OPTIONS_BTRFS`, `$SYSTEMD_HOME_MOUNT_OPTIONS_EXT4`, + `$SYSTEMD_HOME_MOUNT_OPTIONS_XFS` – configure the default mount options to + use for LUKS home directories, overriding the built-in default mount + options. There's one variable for each of the supported file systems for the + LUKS home directory backend. diff --git a/src/home/homework-mount.c b/src/home/homework-mount.c index 82b461a987..234b965dc8 100644 --- a/src/home/homework-mount.c +++ b/src/home/homework-mount.c @@ -20,12 +20,23 @@ #include "user-util.h" static const char *mount_options_for_fstype(const char *fstype) { + const char *e; + char *n; + + assert(fstype); + + /* Allow overriding our built-in defaults with an environment variable */ + n = strjoina("SYSTEMD_HOME_MOUNT_OPTIONS_", fstype); + e = getenv(ascii_strupper(n)); + if (e) + return e; + if (streq(fstype, "ext4")) return "noquota,user_xattr"; if (streq(fstype, "xfs")) return "noquota"; if (streq(fstype, "btrfs")) - return "noacl"; + return "noacl,compress=zstd:1"; return NULL; } |