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

Upgrade from older version causing issues #17

Closed
parkerlreed opened this issue Nov 24, 2022 · 7 comments
Closed

Upgrade from older version causing issues #17

parkerlreed opened this issue Nov 24, 2022 · 7 comments

Comments

@parkerlreed
Copy link

I'm on an older Steam OS install where home is non-case folding.

I just updated the repo today when RWFUS was disabled and enabled it and it enabled but through some errors about the mount points being too deep.

Now when I try to go to disable it doesn't actually disable and stays enabled. Will have some text in a second

@parkerlreed
Copy link
Author

(130)(deck@steamdeck rwfus)$ sudo ./rwfus -d
× rwfusd.service - Rwfus: Carry Pacman across SteamOS updates!
     Loaded: loaded (/etc/systemd/system/rwfusd.service; disabled; preset: disabled)
     Active: failed (Result: timeout) since Thu 2022-11-24 13:44:41 EST; 3min 0s ago
   Main PID: 7703 (code=killed, signal=TERM)
        CPU: 73ms
Log saved to /tmp/rwfus.MG1j.log
(deck@steamdeck rwfus)$ obs-
obs-gamecapture  obs-glcapture    obs-vkcapture    
(deck@steamdeck rwfus)$ obs-^C
(130)(deck@steamdeck rwfus)$ mount
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
devtmpfs on /dev type devtmpfs (rw,nosuid,size=7546360k,nr_inodes=1886590,mode=755,inode64)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev,inode64)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,nodev,size=3034852k,nr_inodes=819200,mode=755,inode64)
cgroup2 on /sys/fs/cgroup type cgroup2 (rw,nosuid,nodev,noexec,relatime,nsdelegate,memory_recursiveprot)
pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime)
efivarfs on /sys/firmware/efi/efivars type efivarfs (rw,nosuid,nodev,noexec,relatime)
none on /sys/fs/bpf type bpf (rw,nosuid,nodev,noexec,relatime,mode=700)
/dev/nvme0n1p4 on / type btrfs (rw,relatime,ssd,space_cache=v2,subvolid=5,subvol=/)
/dev/nvme0n1p6 on /var type ext4 (rw,relatime)
overlay on /etc type overlay (rw,relatime,lowerdir=/sysroot/etc,upperdir=/sysroot/var/lib/overlays/etc/upper,workdir=/sysroot/var/lib/overlays/etc/work)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=30,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=12001)
debugfs on /sys/kernel/debug type debugfs (rw,nosuid,nodev,noexec,relatime)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime,pagesize=2M)
mqueue on /dev/mqueue type mqueue (rw,nosuid,nodev,noexec,relatime)
tracefs on /sys/kernel/tracing type tracefs (rw,nosuid,nodev,noexec,relatime)
configfs on /sys/kernel/config type configfs (rw,nosuid,nodev,noexec,relatime)
fusectl on /sys/fs/fuse/connections type fusectl (rw,nosuid,nodev,noexec,relatime)
systemd-1 on /efi type autofs (rw,relatime,fd=48,pgrp=1,timeout=60,minproto=5,maxproto=5,direct,pipe_ino=13772)
systemd-1 on /esp type autofs (rw,relatime,fd=51,pgrp=1,timeout=60,minproto=5,maxproto=5,direct,pipe_ino=13774)
/dev/nvme0n1p8 on /home type ext4 (rw,relatime,x-systemd.growfs)
/dev/nvme0n1p8 on /opt type ext4 (rw,relatime)
/dev/nvme0n1p8 on /root type ext4 (rw,relatime)
/dev/nvme0n1p8 on /srv type ext4 (rw,relatime)
/dev/nvme0n1p8 on /var/lib/docker type ext4 (rw,relatime)
/dev/nvme0n1p8 on /var/lib/flatpak type ext4 (rw,relatime)
/dev/nvme0n1p8 on /var/lib/systemd/coredump type ext4 (rw,relatime)
/dev/nvme0n1p8 on /var/log type ext4 (rw,relatime)
/dev/nvme0n1p8 on /var/tmp type ext4 (rw,relatime)
tmpfs on /tmp type tmpfs (rw,nosuid,nodev,nr_inodes=1048576,inode64)
overlay on /usr type overlay (rw,relatime,lowerdir=/usr,upperdir=/home/.rwfus/usr,workdir=/home/.rwfus/.work/usr,index=off,metacopy=off)
overlay on /etc/pacman.d type overlay (rw,relatime,lowerdir=/etc/pacman.d,upperdir=/home/.rwfus/etc-pacman.d,workdir=/home/.rwfus/.work/etc-pacman.d,index=off,xino=off,metacopy=off)
overlay on /var/cache/pacman type overlay (rw,relatime,lowerdir=/var/cache/pacman,upperdir=/home/.rwfus/var-cache-pacman,workdir=/home/.rwfus/.work/var-cache-pacman,index=off,metacopy=off)
overlay on /var/lib/pacman type overlay (rw,relatime,lowerdir=/var/lib/pacman,upperdir=/home/.rwfus/var-lib-pacman,workdir=/home/.rwfus/.work/var-lib-pacman,index=off,metacopy=off)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,nosuid,nodev,noexec,relatime)
tmpfs on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,size=1517424k,nr_inodes=379356,mode=700,uid=1000,gid=1000,inode64)
appimaged-730-x86_64.appimage on /tmp/.mount_appimaMOECjL type fuse.appimaged-730-x86_64.appimage (ro,nosuid,nodev,relatime,user_id=1000,group_id=1000)
portal on /run/user/1000/doc type fuse.portal (rw,nosuid,nodev,relatime,user_id=1000,group_id=1000)
appimaged-730-x86_64.appimage on /tmp/.mount_appimaOfeEMg type fuse.appimaged-730-x86_64.appimage (ro,nosuid,nodev,relatime,user_id=1000,group_id=1000)
/opt/rwfus/rwfus.btrfs on /opt/rwfus/mount type btrfs (rw,relatime,compress=zlib:3,ssd,space_cache=v2,subvolid=5,subvol=/)
/opt/rwfus/rwfus.btrfs on /home/.steamos/offload/opt/rwfus/mount type btrfs (rw,relatime,compress=zlib:3,ssd,space_cache=v2,subvolid=5,subvol=/)
overlay on /usr type overlay (rw,relatime,lowerdir=/usr,upperdir=/opt/rwfus/mount/upper/usr,workdir=/opt/rwfus/mount/work/usr,index=off,xino=off,metacopy=off)
(deck@steamdeck rwfus)$ sudo /opt/rwfus/service/rwfusd.sh --start
Rwfus v0.4.0
Carry Pacman across SteamOS updates!
/opt/rwfus/service/rwfusd.sh --start --
Loading config file /etc/opt/rwfus.conf
> Base_Directory: "/opt/rwfus"
> Directories: "/usr /etc/pacman.d /var/lib/pacman /var/cache/pacman"
> Mount_Options: "loop,compress"

Unit pacman-cleanup.service does not exist, proceeding anyway.
Created symlink /etc/systemd/system/pacman-cleanup.service → /dev/null.
mount: /opt/rwfus/mount: /opt/rwfus/rwfus.btrfs is already mounted.
Resize device id 1 (/dev/loop0) from 8.00GiB to max
Creating overlay (/opt/rwfus/mount/upper/usr, /opt/rwfus/mount/work/usr) on /usr
mount: /usr: wrong fs type, bad option, bad superblock on overlay, missing codepage or helper program, or other error.
       dmesg(1) may have more information after failed mount system call.
  /usr not available (error 0). Retrying...
mount: /usr: wrong fs type, bad option, bad superblock on overlay, missing codepage or helper program, or other error.
       dmesg(1) may have more information after failed mount system call.
  /usr not available (error 0). Retrying...
mount: /usr: wrong fs type, bad option, bad superblock on overlay, missing codepage or helper program, or other error.
       dmesg(1) may have more information after failed mount system call.
  /usr not available (error 0). Retrying...
mount: /usr: wrong fs type, bad option, bad superblock on overlay, missing codepage or helper program, or other error.
       dmesg(1) may have more information after failed mount system call.
  /usr not available (error 0). Retrying...
mount: /usr: wrong fs type, bad option, bad superblock on overlay, missing codepage or helper program, or other error.
       dmesg(1) may have more information after failed mount system call.
  /usr not available (error 0). Retrying...
mount: /usr: wrong fs type, bad option, bad superblock on overlay, missing codepage or helper program, or other error.
       dmesg(1) may have more information after failed mount system call.
  /usr not available (error 0). Retrying...
^C

@parkerlreed
Copy link
Author

[  323.163833] overlayfs: maximum fs stacking depth exceeded
[  328.165052] overlayfs: upperdir is in-use as upperdir/workdir of another mount, accessing files from both mounts will result in undefined behavior.
[  328.165061] overlayfs: workdir is in-use as upperdir/workdir of another mount, accessing files from both mounts will result in undefined behavior.
[  328.165226] overlayfs: fs on '/usr' does not support file handles, falling back to xino=off.
[  328.165228] overlayfs: maximum fs stacking depth exceeded
[  333.166234] overlayfs: upperdir is in-use as upperdir/workdir of another mount, accessing files from both mounts will result in undefined behavior.
[  333.166243] overlayfs: workdir is in-use as upperdir/workdir of another mount, accessing files from both mounts will result in undefined behavior.
[  333.166405] overlayfs: fs on '/usr' does not support file handles, falling back to xino=off.
[  333.166407] overlayfs: maximum fs stacking depth exceeded

@parkerlreed
Copy link
Author

I just did an uninstall/remove from the updated repo and rebooted and everything is still mounted...

@parkerlreed
Copy link
Author

I was able to clear up the mounts by removing rwfus after checking out the July 26th commit. Will retry from fresh on updated repo

@parkerlreed
Copy link
Author

Fresh state with current master seems to work up until the setting up pacman.

The fan spun up like it was generating the key ring and all of that but it hasn't exited after that

@parkerlreed
Copy link
Author

Okay the long wait was my fault because I had extra repos enabled that needed their own keys.

Current master seems to be working well

@ValShaped
Copy link
Owner

ValShaped commented Dec 1, 2022

Thanks for reporting these issues! I've broken out the remounting issue into #18. I made an assumption that systemd would be the only one running that script, and systemd won't call ExecStart when the service is already in the active state. Despite that, the issue's cropped up on my end several times. Something is causing it to periodically fail to unmount. I'll track it down!

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