Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

usr-local.mount removed in SteamOS 3.5 (Error when enabling service) #39

Closed
sonofevil opened this issue Oct 7, 2023 · 4 comments
Closed

Comments

@sonofevil
Copy link

sonofevil commented Oct 7, 2023

So I just upgraded my SteamOS to 3.5 (Preview) and then tried to install rwfus:

(130)(deck@steamdeck rwfus)$ ./rwfus -iI
This command must be performed as root
[sudo] password for deck: 
Creating overlays for /usr /etc/pacman.d /var/lib/pacman /var/cache/pacman:
0. Disabling service
1. Creating directories...
2. Updating disk image...
3. Generating service...
4. Storing configuration...
5. Copying service to /etc/systemd/system
6. Enabling service unit
Error when enabling service. See /var/log/rwfus.log for information.
× rwfusd.service - Rwfus: Carry Pacman across SteamOS updates!
     Loaded: loaded (/etc/systemd/system/rwfusd.service; enabled; preset: disabled)
     Active: failed (Result: exit-code) since Sat 2023-10-07 14:01:46 CEST; 62ms ago
    Process: 22908 ExecStart=/opt/rwfus/service/rwfusd.sh --start (code=exited, status=1/FAILURE)
   Main PID: 22908 (code=exited, status=1/FAILURE)
        CPU: 160ms
Adding Rwfus to /home/.steamos/offload/usr/local/bin
Unmasking and enabling usr-local.mount
Done!

Log saved to /var/log/rwfus.log
Rwfus v0.4.2 
Carry Pacman across SteamOS updates!

Rwfus directory: /opt/rwfus
Unit Storage directory: /opt/rwfus/service
Systemd directory: /etc/systemd/system

./rwfus -iI
Loading config file /etc/opt/rwfus.conf
> Base_Directory: "/opt/rwfus"
> Directories: "/usr /etc/pacman.d /var/lib/pacman /var/cache/pacman"
> Stop_Units: "var-cache-pacman.mount"
> Mask_Units: "pacman-cleanup.service"
> Restart_Units: "usr-local.mount"
> Mount_Options: "loop,compress"
> Systemd_Directory: "/etc/systemd/system"
Creating overlays for /usr /etc/pacman.d /var/lib/pacman /var/cache/pacman:
0. Disabling service
Removed "/etc/systemd/system/multi-user.target.wants/rwfusd.service".
# It's okay if unmounting fails here #
umount: /usr: not mounted.
umount: /etc/pacman.d: not mounted.
umount: /var/lib/pacman: no mount point specified.
umount: /var/cache/pacman: not mounted.
umount: /opt/rwfus/rwfus.btrfs: not mounted.
1. Creating directories...
2. Updating disk image...
mount: /dev/loop0 mounted on /opt/rwfus/mount.
Resize device id 1 (/dev/loop0) from 8.00GiB to max
umount: /home/.steamos/offload/opt/rwfus/mount (/dev/loop0) unmounted
3. Generating service...
Generating service rwfusd
  script /opt/rwfus/service/rwfusd.sh
  unit   /opt/rwfus/service/rwfusd.service
4. Storing configuration...
Storing config file to /etc/opt/rwfus.conf...
-rw-r--r-- 1 root root 1052 Oct  7 13:53 /etc/opt/rwfus.conf
5. Copying service to /etc/systemd/system
'/opt/rwfus/service/rwfusd.service' -> '/etc/systemd/system/rwfusd.service'
6. Enabling service unit
Created symlink /etc/systemd/system/multi-user.target.wants/rwfusd.service → /etc/systemd/system/rwfusd.service.
Job for rwfusd.service failed because the control process exited with error code.
See "systemctl status rwfusd.service" and "journalctl -xeu rwfusd.service" for details.
Error when enabling service. See /var/log/rwfus.log for information.
Adding Rwfus to /home/.steamos/offload/usr/local/bin
'./rwfus_include/config.sh' -> '/home/.steamos/offload/usr/local/bin/rwfus_include/config.sh'
'./rwfus_include/disk.sh' -> '/home/.steamos/offload/usr/local/bin/rwfus_include/disk.sh'
'./rwfus_include/info.sh' -> '/home/.steamos/offload/usr/local/bin/rwfus_include/info.sh'
'./rwfus_include/manage-install.sh' -> '/home/.steamos/offload/usr/local/bin/rwfus_include/manage-install.sh'
'./rwfus_include/service-main.sh' -> '/home/.steamos/offload/usr/local/bin/rwfus_include/service-main.sh'
'./rwfus_include/service.sh' -> '/home/.steamos/offload/usr/local/bin/rwfus_include/service.sh'
'./rwfus_include/testlog.sh' -> '/home/.steamos/offload/usr/local/bin/rwfus_include/testlog.sh'
'./rwfus' -> '/home/.steamos/offload/usr/local/bin/rwfus'
Unmasking and enabling usr-local.mount
Unit usr-local.mount does not exist, proceeding anyway.
Failed to enable unit: Unit file usr-local.mount does not exist.
Done!
(deck@steamdeck rwfus)$ systemctl status rwfusd.service
× rwfusd.service - Rwfus: Carry Pacman across SteamOS updates!
     Loaded: loaded (/etc/systemd/system/rwfusd.service; enabled; preset: disabled)
     Active: failed (Result: exit-code) since Sat 2023-10-07 14:01:46 CEST; 36s ago
   Main PID: 22908 (code=exited, status=1/FAILURE)
        CPU: 160ms

Oct 07 14:01:46 steamdeck rwfusd.sh[22908]:   lowerdir /var/lib/pacman not found. Aborting.
Oct 07 14:01:46 steamdeck rwfusd.sh[23025]: umount: /usr (overlay) unmounted
Oct 07 14:01:46 steamdeck rwfusd.sh[23026]: umount: /etc/pacman.d (overlay) unmounted
Oct 07 14:01:46 steamdeck rwfusd.sh[23027]: umount: /var/lib/pacman: no mount point specified.
Oct 07 14:01:46 steamdeck rwfusd.sh[23028]: umount: /var/cache/pacman: not mounted.
Oct 07 14:01:46 steamdeck rwfusd.sh[23032]: umount: /home/.steamos/offload/opt/rwfus/mount (/dev/loop0) unmounted
Oct 07 14:01:46 steamdeck rwfusd.sh[22908]: start usr-local.mount
Oct 07 14:01:46 steamdeck systemd[1]: rwfusd.service: Main process exited, code=exited, status=1/FAILURE
Oct 07 14:01:46 steamdeck systemd[1]: rwfusd.service: Failed with result 'exit-code'.
Oct 07 14:01:46 steamdeck systemd[1]: Failed to start Rwfus: Carry Pacman across SteamOS updates!.
(3)(deck@steamdeck rwfus)$ journalctl -xeu rwfusd.service
Oct 07 14:01:44 steamdeck rwfusd.sh[22908]: stop var-cache-pacman.mount usr-local.mount
Oct 07 14:01:44 steamdeck rwfusd.sh[22908]: mask var-cache-pacman.mount pacman-cleanup.service
Oct 07 14:01:46 steamdeck rwfusd.sh[22999]: mount: /dev/loop0 mounted on /opt/rwfus/mount.
Oct 07 14:01:46 steamdeck rwfusd.sh[23018]: Resize device id 1 (/dev/loop0) from 8.00GiB to max
Oct 07 14:01:46 steamdeck rwfusd.sh[22908]: Creating overlay (/opt/rwfus/mount/upper/usr, /opt/rwfus/mount/work/usr) on /usr
Oct 07 14:01:46 steamdeck rwfusd.sh[23021]: mount: overlay mounted on /usr.
Oct 07 14:01:46 steamdeck rwfusd.sh[22908]: Successfully overlaid /opt/rwfus/mount/upper/usr on /usr
Oct 07 14:01:46 steamdeck rwfusd.sh[22908]: Creating overlay (/opt/rwfus/mount/upper/etc-pacman.d, /opt/rwfus/mount/work/etc-pacman.d) on /etc/pacman.d
Oct 07 14:01:46 steamdeck rwfusd.sh[23023]: mount: overlay mounted on /etc/pacman.d.
Oct 07 14:01:46 steamdeck rwfusd.sh[22908]: Successfully overlaid /opt/rwfus/mount/upper/etc-pacman.d on /etc/pacman.d
Oct 07 14:01:46 steamdeck rwfusd.sh[22908]: Creating overlay (/opt/rwfus/mount/upper/var-lib-pacman, /opt/rwfus/mount/work/var-lib-pacman) on /var/lib/pacman
Oct 07 14:01:46 steamdeck rwfusd.sh[22908]:   lowerdir /var/lib/pacman not found. Aborting.
Oct 07 14:01:46 steamdeck rwfusd.sh[23025]: umount: /usr (overlay) unmounted
Oct 07 14:01:46 steamdeck rwfusd.sh[23026]: umount: /etc/pacman.d (overlay) unmounted
Oct 07 14:01:46 steamdeck rwfusd.sh[23027]: umount: /var/lib/pacman: no mount point specified.
Oct 07 14:01:46 steamdeck rwfusd.sh[23028]: umount: /var/cache/pacman: not mounted.
Oct 07 14:01:46 steamdeck rwfusd.sh[23032]: umount: /home/.steamos/offload/opt/rwfus/mount (/dev/loop0) unmounted
Oct 07 14:01:46 steamdeck rwfusd.sh[22908]: start usr-local.mount
Oct 07 14:01:46 steamdeck systemd[1]: rwfusd.service: Main process exited, code=exited, status=1/FAILURE
░░ Subject: Unit process exited
░░ Defined-By: systemd
░░ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
░░ 
░░ An ExecStart= process belonging to unit rwfusd.service has exited.
░░ 
░░ The process' exit code is 'exited' and its exit status is 1.
Oct 07 14:01:46 steamdeck systemd[1]: rwfusd.service: Failed with result 'exit-code'.
░░ Subject: Unit failed
░░ Defined-By: systemd
░░ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
░░ 
░░ The unit rwfusd.service has entered the 'failed' state with result 'exit-code'.
Oct 07 14:01:46 steamdeck systemd[1]: Failed to start Rwfus: Carry Pacman across SteamOS updates!.
░░ Subject: A start job for unit rwfusd.service has failed
░░ Defined-By: systemd
░░ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
░░ 
░░ A start job for unit rwfusd.service has finished with a failure.
░░ 
░░ The job identifier is 5078 and the job result is failed.

@sonofevil
Copy link
Author

Looks like usr-local.mount no longer exists in 3.5, but usr-lib-debug.mount does which has the same target (/dev/null).

@sonofevil
Copy link
Author

sonofevil commented Oct 7, 2023

(deck@steamdeck PINCE)$ /opt/rwfus/service/rwfusd.sh -e
Rwfus v0.4.2
Carry Pacman across SteamOS updates!
/opt/rwfus/service/rwfusd.sh -e --
Loading config file /etc/opt/rwfus.conf
> Base_Directory: "/opt/rwfus"
> Directories: "/usr /etc/pacman.d /var/lib/pacman /var/cache/pacman"
> Stop_Units: "var-cache-pacman.mount"
> Mask_Units: "pacman-cleanup.service"
> Restart_Units: "usr-local.mount"
> Mount_Options: "loop,compress"
> Systemd_Directory: "/etc/systemd/system"
stop var-cache-pacman.mount usr-local.mount
mask var-cache-pacman.mount pacman-cleanup.service
mount: /opt/rwfus/mount: failed to setup loop device for /opt/rwfus/rwfus.btrfs.
Could not mount disk.
start usr-local.mount

@ValShaped
Copy link
Owner

ValShaped commented Oct 7, 2023

@sonofevil This is a known issue, and was fixed in 0.5.0 preview. Installing 0.5.0 preview will automatically migrate your Rwfus config.

As for usr-local.mount, that's a big shame. I wasn't aware of that change (I don't actually use Rwfus -I any more—I will be writing a test for that.) If it prevents Rwfus from starting, you can remove it from Restart_Units in /etc/opt/rwfus.conf

@ValShaped ValShaped changed the title Error when enabling service usr-local.mount removed in SteamOS 3.5 (Error when enabling service) Oct 7, 2023
@sonofevil
Copy link
Author

Ahh alright.

Yeah 0.5.0 installs just fine. Thanks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants