You are not logged in.
I'm using a non-standard path for my home directory. I have a large SSD mounted at `/fast` where I've created a `/fast/home` directory to contain my system's home directories.
For example, my `/etc/passwd` entry looks like this:
mgalgs:x:1000:1000::/fast/home/mgalgs:/bin/zshHere is the relevant section from my system journal during shutdown showing the unmount failure:
Aug 28 13:31:55 grinchel systemd[1]: Stopped Session 3 of User mgalgs.
Aug 28 13:31:55 grinchel systemd[1]: session-3.scope: Consumed 7.626s CPU time.
Aug 28 13:31:55 grinchel systemd[1670]: redshift-gtk.service: Main process exited, code=dumped, status=11/SEGV
Aug 28 13:31:55 grinchel systemd[1]: Unmounting /fast...
Aug 28 13:31:55 grinchel systemd[1670]: redshift-gtk.service: Failed with result 'core-dump'.
Aug 28 13:31:55 grinchel systemd[1]: Stopping User Login Management...
Aug 28 13:31:55 grinchel systemd[1]: Stopping User Manager for UID 1000...
Aug 28 13:31:55 grinchel systemd-logind[785]: Removed session 3.
Aug 28 13:31:55 grinchel systemd[1670]: Activating special unit Exit the Session...
Aug 28 13:31:55 grinchel systemd[1670]: Stopped GNOME Session Manager (session: gnome).
Aug 28 13:31:55 grinchel systemd[1670]: Stopping Application launched by gnome-session-binary...
Aug 28 13:31:55 grinchel systemd[1670]: Removed slice Slice /app/gnome-session-manager.
Aug 28 13:31:55 grinchel systemd[1670]: Removed slice Slice /app/org.gnome.Terminal.
Aug 28 13:31:55 grinchel systemd[1670]: Stopped target Main User Target.
Aug 28 13:31:55 grinchel systemd[1670]: Stopped target Tasks to be run before GNOME Session starts.
Aug 28 13:31:55 grinchel systemd[1670]: Stopped target Session services which should run early before the graphical session is brought up.
Aug 28 13:31:55 grinchel systemd[1670]: Reached target Shutdown running GNOME Session.
Aug 28 13:31:55 grinchel umount[30210]: umount: /fast: target is busy.
Aug 28 13:31:55 grinchel systemd[1670]: Stopping D-Bus User Message Bus...
Aug 28 13:31:55 grinchel systemd[1670]: Stopping User preferences database...
Aug 28 13:31:55 grinchel systemd[1670]: Stopping Evolution address book service...
Aug 28 13:31:55 grinchel systemd[1670]: Stopping Evolution calendar service...
Aug 28 13:31:55 grinchel systemd[1670]: Stopping Evolution source registry...
Aug 28 13:31:55 grinchel systemd[1670]: Stopping GNOME Keyring daemon...
Aug 28 13:31:55 grinchel systemd[1]: fast.mount: Mount process exited, code=exited, status=32/n/a
Aug 28 13:31:55 grinchel systemd[1]: Failed unmounting /fast.
[...]
Aug 28 13:31:55 grinchel systemd[1670]: Closed Sound System.
Aug 28 13:31:55 grinchel systemd[1670]: Removed slice User Application Slice.
Aug 28 13:31:55 grinchel systemd[1670]: app.slice: Consumed 3min 17.190s CPU time.
Aug 28 13:31:55 grinchel systemd[1670]: Reached target Shutdown.
Aug 28 13:31:55 grinchel systemd[1670]: Finished Exit the Session.
Aug 28 13:31:55 grinchel systemd[1670]: Reached target Exit the Session.
Aug 28 13:31:55 grinchel systemd[1]: systemd-logind.service: Deactivated successfully.
Aug 28 13:31:55 grinchel systemd[1]: Stopped User Login Management.
Aug 28 13:31:55 grinchel (sd-pam)[1672]: pam_warn(systemd-user:setcred): function=[pam_sm_setcred] flags=0x8004 service=[systemd-user] terminal=[] user=[mgalgs] ruser=[<unknown>] rhost=[<unknown>]
Aug 28 13:31:55 grinchel systemd[1]: user@1000.service: Deactivated successfully.
Aug 28 13:31:55 grinchel systemd[1]: Stopped User Manager for UID 1000.
Aug 28 13:31:55 grinchel systemd[1]: user@1000.service: Consumed 4min 22.703s CPU time.
Aug 28 13:31:55 grinchel systemd[1]: Stopping Permit User Sessions...
Aug 28 13:31:55 grinchel systemd[1]: Stopping User Runtime Directory /run/user/1000...
Aug 28 13:31:55 grinchel systemd[1]: systemd-user-sessions.service: Deactivated successfully.
Aug 28 13:31:55 grinchel systemd[1]: Stopped Permit User Sessions.
Aug 28 13:31:55 grinchel systemd[1]: run-user-1000.mount: Deactivated successfully.
Aug 28 13:31:55 grinchel systemd[1]: Unmounted /run/user/1000.
Aug 28 13:31:55 grinchel systemd[1]: user-runtime-dir@1000.service: Deactivated successfully.
Aug 28 13:31:55 grinchel systemd[1]: Stopped User Runtime Directory /run/user/1000.
Aug 28 13:31:55 grinchel systemd[1]: Removed slice User Slice of UID 1000.
Aug 28 13:31:55 grinchel systemd[1]: user-1000.slice: Consumed 4min 30.339s CPU time.
Aug 28 13:31:55 grinchel systemd[1]: Stopped target User and Group Name Lookups.
Aug 28 13:31:55 grinchel systemd[1]: Stopped target Remote File Systems.I've elided a bunch of messages but notice how it's trying to unmount `/fast` well before my user session has been fully closed. So it makes sense that unmounting `/fast` will fail since there's still user session stuff going on.
Do I need to do something to tell systemd that my home directory lives on this drive so that it will wait to unmount it until my user session is closed?
Here are some additional relevant bits of information:
> cat /etc/fstab
# Static information about the filesystems.
# See fstab(5) for details.
# <file system> <dir> <type> <options> <dump> <pass>
# /dev/sda2
UUID=814e5d36-a548-48a7-b292-26781753b667 / ext4 rw,relatime 0 1
# /dev/sda1
UUID=C9A5-5A56 /boot vfat rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro 0 2
tmpfs /tmp tmpfs defaults,noatime,mode=1777 0 0
UUID=0a4919f1-424b-48cc-aa4d-d488db2b7ced /fast btrfs defaults,nofail,compress=lzo,noatime 0 0> systemctl cat fast.mount
# /run/systemd/generator/fast.mount
# Automatically generated by systemd-fstab-generator
[Unit]
Documentation=man:fstab(5) man:systemd-fstab-generator(8)
SourcePath=/etc/fstab
After=blockdev@dev-disk-by\x2duuid-0a4919f1\x2d424b\x2d48cc\x2daa4d\x2dd488db2b7ced.target
[Mount]
What=/dev/disk/by-uuid/0a4919f1-424b-48cc-aa4d-d488db2b7ced
Where=/fast
Type=btrfs
Options=defaults,nofail,compress=lzo,noatime> systemctl cat home.mount
No files found for home.mount.> systemctl list-units -t mount --all
UNIT LOAD ACTIVE SUB DESCRIPTION
-.mount loaded active mounted Root Mount
boot.mount loaded active mounted /boot
data.mount loaded active mounted /data
dev-hugepages.mount loaded active mounted Huge Pages File System
dev-mqueue.mount loaded active mounted POSIX Message Queue File System
fast-docker-btrfs.mount loaded active mounted /fast/docker/btrfs
fast.mount loaded active mounted /fast
● home.mount not-found inactive dead home.mount
keybase.mount loaded active mounted /keybase
proc-sys-fs-binfmt_misc.mount loaded inactive dead Arbitrary Executable File Formats File System
● run-credentials-systemd\x2dresolved.service.mount not-found inactive dead run-credentials-systemd\x2dresolved.service.mount
● run-credentials-systemd\x2dsysctl.service.mount not-found inactive dead run-credentials-systemd\x2dsysctl.service.mount
● run-credentials-systemd\x2dsysusers.service.mount not-found inactive dead run-credentials-systemd\x2dsysusers.service.mount
● run-credentials-systemd\x2dtmpfiles\x2dclean.service.mount not-found inactive dead run-credentials-systemd\x2dtmpfiles\x2dclean.service.mount
● run-credentials-systemd\x2dtmpfiles\x2dsetup.service.mount not-found inactive dead run-credentials-systemd\x2dtmpfiles\x2dsetup.service.mount
● run-credentials-systemd\x2dtmpfiles\x2dsetup\x2ddev.service.mount not-found inactive dead run-credentials-systemd\x2dtmpfiles\x2dsetup\x2ddev.service.mount
● run-credentials-systemd\x2dvconsole\x2dsetup.service.mount not-found inactive dead run-credentials-systemd\x2dvconsole\x2dsetup.service.mount
run-docker-netns-e3610b5b1dfd.mount loaded active mounted /run/docker/netns/e3610b5b1dfd
run-user-1000-doc.mount loaded active mounted /run/user/1000/doc
run-user-1000-gvfs.mount loaded active mounted /run/user/1000/gvfs
run-user-1000-keybase-kbfs.mount loaded active mounted /run/user/1000/keybase/kbfs
run-user-1000.mount loaded active mounted /run/user/1000
space.mount loaded active mounted /space
sys-fs-fuse-connections.mount loaded active mounted FUSE Control File System
sys-kernel-config.mount loaded active mounted Kernel Configuration File System
sys-kernel-debug.mount loaded active mounted Kernel Debug File System
sys-kernel-tracing.mount loaded active mounted Kernel Trace File System
tmp.mount loaded active mounted /tmp
var-lib-machines.mount loaded inactive dead Virtual Machine and Container Storage (Compatibility)
LOAD = Reflects whether the unit definition was properly loaded.
ACTIVE = The high-level unit activation state, i.e. generalization of SUB.
SUB = The low-level unit activation state, values depend on unit type.
29 loaded units listed.
To show all installed unit files use 'systemctl list-unit-files'.Last edited by mitch_feaster (2023-08-29 20:10:24)
Offline
Have you tried to side-step this by bind-mounting /home to /fast/home ?
Offline
Well I'll be damned, that seems to have done the trick.
For some reason when I set this system up I didn't want to do the bind mount... I don't remember my thinking on that but can't think of a good reason anymore! ¯\_(ツ)_/¯ Bind mount it is!
Thanks!
Offline