Jump to content

Recommended Posts

Posted

Upon reading the content of RPi5 about 6.12 from this and this , I was under the impression that it's okay to upgrade the Armbian 24.11 based NextCloudPi to a 6.12 kernel.


Well, I was wrong and the RPi5 current stuck in the RPi Logo on a black page. Net address seems to be 0.0.0.0.


I could really use some advice on how to restore this, perhaps some `chroot` method from another Linux machine to get the right kernel package and intramfs.


Here are the steps that got me to the current situation. Maybe a hint on how to restore?

 

1. Mark `raspi-firmware`, like what was recommended in 1st post.

sudo apt-mark hold raspi-firmware
[sudo] password for pi:
raspi-firmware set on hold.

2.  Remove the old bsp for RPi5b specific package?

pi@nextcloudpi:~$ sudo dpkg --remove --force-all libraspberrypi0 armbian-bsp-cli-rpi5b-current
dpkg: warning: ignoring request to remove libraspberrypi0 which isn't installed
(Reading database ... 50983 files and directories currently installed.)
Removing armbian-bsp-cli-rpi5b-current (24.11.1) ...
Armbian 'armbian-bsp-cli-rpi5b-current' for '1-PC980a-V32ae-H032a-B6e44-R7697': 'postrm' starting.
Armbian 'armbian-bsp-cli-rpi5b-current' for '1-PC980a-V32ae-H032a-B6e44-R7697': 'postrm' finishing.
Processing triggers for initramfs-tools (0.142+deb12u3) ...
update-initramfs: Generating /boot/initrd.img-6.6.63-current-bcm2712
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8156b-2.fw for built-in driver r8152
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8156a-2.fw for built-in driver r8152
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8153c-1.fw for built-in driver r8152
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8153b-2.fw for built-in driver r8152
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8153a-4.fw for built-in driver r8152
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8153a-3.fw for built-in driver r8152
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8153a-2.fw for built-in driver r8152

3. Install the newer RPI4b bsp package, which guessing from the 2nd post, including everything from 3b to 5b.

pi@nextcloudpi:~$ sudo apt install armbian-bsp-cli-rpi4b-current
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following NEW packages will be installed:
  armbian-bsp-cli-rpi4b-current
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 1,515 kB of archives.
After this operation, 5,411 kB of additional disk space will be used.
Get:1 https://mirrors.ustc.edu.cn/armbian bookworm/main arm64 armbian-bsp-cli-rpi4b-current arm64 25.8.1 [1,515 kB]
Fetched 1,515 kB in 2s (1,008 kB/s)
Selecting previously unselected package armbian-bsp-cli-rpi4b-current.
(Reading database ... 50867 files and directories currently installed.)
Preparing to unpack .../armbian-bsp-cli-rpi4b-current_25.8.1_arm64.deb ...
Armbian 'armbian-bsp-cli-rpi4b-current' for '1-PCee86-Ved8e-H468e-B1e5d-Rf36a': 'preinst' starting.
Armbian 'armbian-bsp-cli-rpi4b-current' for '1-PCee86-Ved8e-H468e-B1e5d-Rf36a': 'preinst' finishing.
Unpacking armbian-bsp-cli-rpi4b-current (25.8.1) ...
Setting up armbian-bsp-cli-rpi4b-current (25.8.1) ...
Armbian 'armbian-bsp-cli-rpi4b-current' for '1-PCee86-Ved8e-H468e-B1e5d-Rf36a': 'postinst' starting.
Armbian 'armbian-bsp-cli-rpi4b-current' for '1-PCee86-Ved8e-H468e-B1e5d-Rf36a': 'postinst' finishing.
Processing triggers for initramfs-tools (0.142+deb12u3) ...
update-initramfs: Generating /boot/initrd.img-6.6.63-current-bcm2712
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8156b-2.fw for built-in driver r8152
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8156a-2.fw for built-in driver r8152
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8153c-1.fw for built-in driver r8152
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8153b-2.fw for built-in driver r8152
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8153a-4.fw for built-in driver r8152
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8153a-3.fw for built-in driver r8152
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8153a-2.fw for built-in driver r8152

4. I notice the initrd was still generated for the old kernel image, which is understandable based what is currently installed

pi@nextcloudpi:~$ uname -a
Linux nextcloudpi 6.6.63-current-bcm2712 #2 SMP PREEMPT Wed Nov 27 10:28:46 UTC 2024 aarch64 GNU/Linux
pi@nextcloudpi:~$ dpkg -l | grep linux-image
ii  linux-image-current-bcm2712    24.11.1                                     arm64        Armbian Linux current kernel image 6.6.63-current-bcm2712

 

5. Therefore, I went ahead to install the new 6.12 kernel package

pi@nextcloudpi:~$ sudo apt install linux-image-current-bcm2711
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following NEW packages will be installed:
  linux-image-current-bcm2711
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 34.5 MB of archives.
After this operation, 212 MB of additional disk space will be used.
Get:1 https://mirrors.ustc.edu.cn/armbian bookworm/main arm64 linux-image-current-bcm2711 arm64 25.8.1 [34.5 MB]
Fetched 34.5 MB in 5s (7,198 kB/s)
Selecting previously unselected package linux-image-current-bcm2711.
(Reading database ... 51028 files and directories currently installed.)
Preparing to unpack .../linux-image-current-bcm2711_25.8.1_arm64.deb ...
Armbian 'linux-image-current-bcm2711' for '6.12.44-current-bcm2711': 'preinst' starting.
Armbian 'linux-image-current-bcm2711' for '6.12.44-current-bcm2711': 'preinst' finishing.
Unpacking linux-image-current-bcm2711 (25.8.1) ...
Setting up linux-image-current-bcm2711 (25.8.1) ...
Armbian 'linux-image-current-bcm2711' for '6.12.44-current-bcm2711': 'postinst' starting.
update-initramfs: Generating /boot/initrd.img-6.12.44-current-bcm2711
Armbian: update last-installed kernel symlink to 'Image'...
'/boot/Image' -> 'vmlinuz-6.12.44-current-bcm2711'
Armbian: Debian compat: linux-update-symlinks install 6.12.44-current-bcm2711 boot/vmlinuz-6.12.44-current-bcm2711
I: /vmlinuz is now a symlink to boot/vmlinuz-6.12.44-current-bcm2711
I: /initrd.img is now a symlink to boot/initrd.img-6.12.44-current-bcm2711
Armbian 'linux-image-current-bcm2711' for '6.12.44-current-bcm2711': 'postinst' finishing.

6. Everything looked right to me as there are no errors like before got reported during update-initramfs:

pi@nextcloudpi:~$ sudo apt remove linux-image-current-bcm2712
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following packages will be REMOVED:
  linux-image-current-bcm2712
0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
After this operation, 155 MB disk space will be freed.
Do you want to continue? [Y/n] y
(Reading database ... 54440 files and directories currently installed.)
Removing linux-image-current-bcm2712 (24.11.1) ...
Armbian 'linux-image-current-bcm2712' for '6.6.63-current-bcm2712': 'prerm' starting.
Armbian 'linux-image-current-bcm2712' for '6.6.63-current-bcm2712': 'prerm' finishing.
Armbian 'linux-image-current-bcm2712' for '6.6.63-current-bcm2712': 'postrm' starting.
update-initramfs: Deleting /boot/initrd.img-6.6.63-current-bcm2712
Armbian 'linux-image-current-bcm2712' for '6.6.63-current-bcm2712': 'postrm' finishing.

 

7. As a final check, I ran the upgrade script again
 

pi@nextcloudpi:~$ sudo armbian-upgrade
Hit:1 https://mirrors.ustc.edu.cn/debian bookworm InRelease
Hit:2 https://mirrors.ustc.edu.cn/debian bookworm-updates InRelease
Hit:3 https://mirrors.ustc.edu.cn/debian bookworm-backports InRelease
Hit:4 https://mirrors.ustc.edu.cn/debian-security bookworm-security InRelease
Hit:5 https://mirrors.ustc.edu.cn/armbian bookworm InRelease
Hit:6 https://github.armbian.com/configng stable InRelease
Hit:7 https://packages.sury.org/php bookworm InRelease
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
All packages are up to date.
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Calculating upgrade... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

 

8. That's it. After rebooting, I was greeted with a RPi logo on a black page, with some messaging scrolling (trying to attach a photo but failed). It never got to the point to boot the kernel image or systemd booting sequence.

 

Posted (edited)

I don't see anything above about your boot-loader being updated. i.e. u-boot or grub.

 

If you're using u-boot, was your uInitrd in your /boot directory updated? The initrd-image needs to be converted to its u-boot format of uinitrd. Instructions for how to do that are located at the bottom of your boot.cmd file (using the mkimage command from the u-boot-tools package). Though that may be a generic example that you'll have to update for your system. Also if you have an armbianEnv.txt (or an equivalent) in your /boot directory, be sure it's up to date for your current kernel's devicetree file location and name.

 

If that doesn't solve it read on....

 

I keep seeing everywhere that kernel 6.12 is broken. Not sure if that applies to all systems. I use the edge kernel (6.16) in my OrangePI-5-Plus. I've found that to work much better than Vendor (6.1).

 

To chroot in from an another identical system. This works on Debian Trixie. I'm not sure about other OS's.

Note: I don't know much about this, I recently found this from searching and used it myself. I found it works great to install new packages and also to run update-initramfs.

 

mount -t proc proc /mnt/proc
mount -t sysfs sysfs /mnt/sys
mount -t devtmpfs devtmpfs /mnt/dev
mount --bind /dev/pts /mnt/dev/pts

#  If you need for the chrooted system to be able to access the internet, the link at its: (/etc/resolv.conf) must be valid, so add this as well:
mount --bind /run/systemd /mnt/run/systemd

 

 

Then chroot in (I'm not sure if the /bin/bash) is necessary - or if you're using something else than bash, put that there instead?)

chroot /mnt /bin/bash

 

[Do what you need to do in there]

i.e. install a different kernel, and be sure update-initramfs has been run or run it yourself, and the u-boot (or grub) is updated.

 

Whenever you're installing a new kernel, it's a good idea to leave the old one there.  Once you get it working, it might then be a good idea to remove any non-functioning kernels (like that 6.12), and leave any functioning kernels in.

 

Then to back get out of chroot and return undo the above mounts:

# Exit chroot
exit

# This line is only necessary if you mounted it to use the internet while chrooted:
umount /mnt/run/systemd

# Unmount the rest
umount /mnt/dev/pts
umount /mnt/dev
umount /mnt/sys
umount /mnt/proc
umount /mnt

 

Edited by The Tall Man

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines