nextcloud / nextcloud/nextcloudpi
Won't boot after update
Nobody has claimed this yet.
- Dominant language
- Shell
- Stars
- 2.9k
- Forks
- 318
- PR merge metrics
- No merged PRs in 30d
Description
Every time the system does an udpate (automatically) or I perform one manually (apt update && apt upgrade), it won't be able to boot next time I restart it. Thus far, I always ended up dding the boot partition from a fresh nextcloudpi image to my USB stick and would boot again.
Not sure if this relevant, but this time I found at least out that there is a new kernel version installed:
6.10.11+bpo-arm64-16k
compared to 6.6.45-current-bcm2712 on the fresh nextcloudpi image. While this not bad per se, I noticed that the other files were not updated correctly, e.g., note how lib/modules is still on 6.6.45 (whereas the kernel on the old system was already upgraded to 6.10.11):
ls /mnt/oldroot/lib/modules
6.6.45-current-bcm2712
Now I think there might be two potential issues here:
- Is the kernel upgrade even expected or should a "normal" nextcloudpi installation stick with 6.6.45?
- If it's expected to upgrade, I think the other files should upgrade, too. If not, why would it upgrade to 6.10.11?
FYI, not sure if this is relevant, but the diff between the old (broken) initrd.img and the fresh one (note that some files related to cryptsetup are added to the old/broken setup (perhaps because I enabled encryption in the old setup)
diff -r /tmp/initrd-new /tmp/initrd-old
Only in /tmp/initrd-old/bin: cryptroot-unlock
Only in /tmp/initrd-old/bin: kbd_mode
Only in /tmp/initrd-old/bin: loadkeys
Only in /tmp/initrd-old/bin: setupcon
Binary files /tmp/initrd-new/bin/udevadm and /tmp/initrd-old/bin/udevadm differ
Only in /tmp/initrd-old: cryptroot
Only in /tmp/initrd-old/etc: console-setup
Binary files /tmp/initrd-new/etc/ld.so.cache and /tmp/initrd-old/etc/ld.so.cache differ
Only in /tmp/initrd-old/etc: motd
Binary files /tmp/initrd-new/lib/aarch64-linux-gnu/ld-linux-aarch64.so.1 and /tmp/initrd-old/lib/aarch64-linux-gnu/ld-linux-aarch64.so.1 differ
Only in /tmp/initrd-old/lib/aarch64-linux-gnu: libargon2.so.1
Binary files /tmp/initrd-new/lib/aarch64-linux-gnu/libcrypto.so.3 and /tmp/initrd-old/lib/aarch64-linux-gnu/libcrypto.so.3 differ
Only in /tmp/initrd-old/lib/aarch64-linux-gnu: libcryptsetup.so.12
Only in /tmp/initrd-old/lib/aarch64-linux-gnu: libcryptsetup.so.12.9.0
Binary files /tmp/initrd-new/lib/aarch64-linux-gnu/libc.so.6 and /tmp/initrd-old/lib/aarch64-linux-gnu/libc.so.6 differ
Only in /tmp/initrd-old/lib/aarch64-linux-gnu: libgcc_s.so.1
Only in /tmp/initrd-old/lib/aarch64-linux-gnu: libjson-c.so.5
Only in /tmp/initrd-old/lib/aarch64-linux-gnu: libjson-c.so.5.2.0
Only in /tmp/initrd-old/lib/aarch64-linux-gnu: libpopt.so.0
Only in /tmp/initrd-old/lib/aarch64-linux-gnu: libpopt.so.0.0.2
Binary files /tmp/initrd-new/lib/aarch64-linux-gnu/libresolv.so.2 and /tmp/initrd-old/lib/aarch64-linux-gnu/libresolv.so.2 differ
Binary files /tmp/initrd-new/lib/aarch64-linux-gnu/libudev.so.1 and /tmp/initrd-old/lib/aarch64-linux-gnu/libudev.so.1 differ
Binary files /tmp/initrd-new/lib/aarch64-linux-gnu/libudev.so.1.7.5 and /tmp/initrd-old/lib/aarch64-linux-gnu/libudev.so.1.7.5 differ
Only in /tmp/initrd-old/lib: cryptsetup
Binary files /tmp/initrd-new/lib/ld-linux-aarch64.so.1 and /tmp/initrd-old/lib/ld-linux-aarch64.so.1 differ
Only in /tmp/initrd-old/lib/modules: 6.10.11+bpo-arm64-16k
Only in /tmp/initrd-new/lib/modules: 6.6.45-current-bcm2712
Binary files /tmp/initrd-new/lib/systemd/systemd-udevd and /tmp/initrd-old/lib/systemd/systemd-udevd differ
Binary files /tmp/initrd-new/lib/udev/ata_id and /tmp/initrd-old/lib/udev/ata_id differ
Binary files /tmp/initrd-new/lib/udev/scsi_id and /tmp/initrd-old/lib/udev/scsi_id differ
Only in /tmp/initrd-old/sbin: cryptsetup
Only in /tmp/initrd-old/scripts: local-block
Only in /tmp/initrd-old/scripts: local-bottom
Only in /tmp/initrd-old/scripts: local-top
Only in /tmp/initrd-old/usr/bin: cryptroot-unlock
Only in /tmp/initrd-old/usr/bin: kbd_mode
Only in /tmp/initrd-old/usr/bin: loadkeys
Only in /tmp/initrd-old/usr/bin: setupcon
Binary files /tmp/initrd-new/usr/bin/udevadm and /tmp/initrd-old/usr/bin/udevadm differ
Binary files /tmp/initrd-new/usr/lib/aarch64-linux-gnu/ld-linux-aarch64.so.1 and /tmp/initrd-old/usr/lib/aarch64-linux-gnu/ld-linux-aarch64.so.1 differ
Only in /tmp/initrd-old/usr/lib/aarch64-linux-gnu: libargon2.so.1
Binary files /tmp/initrd-new/usr/lib/aarch64-linux-gnu/libcrypto.so.3 and /tmp/initrd-old/usr/lib/aarch64-linux-gnu/libcrypto.so.3 differ
Only in /tmp/initrd-old/usr/lib/aarch64-linux-gnu: libcryptsetup.so.12
Only in /tmp/initrd-old/usr/lib/aarch64-linux-gnu: libcryptsetup.so.12.9.0
Binary files /tmp/initrd-new/usr/lib/aarch64-linux-gnu/libc.so.6 and /tmp/initrd-old/usr/lib/aarch64-linux-gnu/libc.so.6 differ
Only in /tmp/initrd-old/usr/lib/aarch64-linux-gnu: libgcc_s.so.1
Only in /tmp/initrd-old/usr/lib/aarch64-linux-gnu: libjson-c.so.5
Only in /tmp/initrd-old/usr/lib/aarch64-linux-gnu: libjson-c.so.5.2.0
Only in /tmp/initrd-old/usr/lib/aarch64-linux-gnu: libpopt.so.0
Only in /tmp/initrd-old/usr/lib/aarch64-linux-gnu: libpopt.so.0.0.2
Binary files /tmp/initrd-new/usr/lib/aarch64-linux-gnu/libresolv.so.2 and /tmp/initrd-old/usr/lib/aarch64-linux-gnu/libresolv.so.2 differ
Binary files /tmp/initrd-new/usr/lib/aarch64-linux-gnu/libudev.so.1 and /tmp/initrd-old/usr/lib/aarch64-linux-gnu/libudev.so.1 differ
Binary files /tmp/initrd-new/usr/lib/aarch64-linux-gnu/libudev.so.1.7.5 and /tmp/initrd-old/usr/lib/aarch64-linux-gnu/libudev.so.1.7.5 differ
Only in /tmp/initrd-old/usr/lib: cryptsetup
Binary files /tmp/initrd-new/usr/lib/ld-linux-aarch64.so.1 and /tmp/initrd-old/usr/lib/ld-linux-aarch64.so.1 differ
Only in /tmp/initrd-old/usr/lib/modules: 6.10.11+bpo-arm64-16k
Only in /tmp/initrd-new/usr/lib/modules: 6.6.45-current-bcm2712
Binary files /tmp/initrd-new/usr/lib/systemd/systemd-udevd and /tmp/initrd-old/usr/lib/systemd/systemd-udevd differ
Binary files /tmp/initrd-new/usr/lib/udev/ata_id and /tmp/initrd-old/usr/lib/udev/ata_id differ
Binary files /tmp/initrd-new/usr/lib/udev/scsi_id and /tmp/initrd-old/usr/lib/udev/scsi_id differ
Only in /tmp/initrd-old/usr/sbin: cryptsetup
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the failure with apt update && apt upgrade, then compare the broken and fresh initrd.img contents and the kernel directories under /lib/modules. Done means identifying why the updated system cannot boot and documenting or correcting the mismatch between the kernel, initrd, and installed modules.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- linux, shell
- Domain
- operating-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100