Skip to content

Kernel updaten NVMe / SDCard

Verschoben ROCKPro64
  • Wir müssen uns nochmal was mit dem Kernelupdaten bei folgender Installation beschäftigen.

    Installation

    • ROCKPro64
    • SD-Karte
    • PCIe-NVMe-Adapter mit SSD

    Bei dieser Installation nutzen wir die SD-Karte nur zum Booten und binden so früh wie möglich das Rootverzeichnis (/) ein. Dieses Rootverzeichnis liegt auf der SSD.

    0_1540405119543_970_EVO_ergebnis.jpg

    Verzeichnis Struktur

     rock64@rockpro64v2_1_TEST:~$ df -h
     Filesystem      Size  Used Avail Use% Mounted on
     udev            992M     0  992M   0% /dev
     tmpfs           200M  448K  199M   1% /run
     /dev/nvme0n1    229G  8,5G  209G   4% /
     tmpfs           996M     0  996M   0% /dev/shm
     tmpfs           5,0M  4,0K  5,0M   1% /run/lock
     tmpfs           996M     0  996M   0% /sys/fs/cgroup
     /dev/mmcblk0p6  112M  4,0K  112M   1% /boot/efi
     tmpfs           200M     0  200M   0% /run/user/1000
    

    Hier sieht man die Rootpartition /, die auf /dev/nvme0n1 verweist.
    Und die Bootpartition /boot/efi, die auf /dev/mmcblk0p6 liegt.

    SD-Karte

    Device          Start       End   Sectors  Size Type
    /dev/mmcblk0p1     64      8063      8000  3,9M Linux filesystem
    /dev/mmcblk0p2   8064      8191       128   64K Linux filesystem
    /dev/mmcblk0p3   8192     16383      8192    4M Linux filesystem
    /dev/mmcblk0p4  16384     24575      8192    4M Linux filesystem
    /dev/mmcblk0p5  24576     32767      8192    4M Linux filesystem
    /dev/mmcblk0p6  32768    262143    229376  112M Microsoft basic data
    /dev/mmcblk0p7 262144 124735454 124473311 59,4G Linux filesystem
    

    SSD

    rock64@rockpro64v2_1_TEST:~$ ls /
    bin   boot_BAK  etc   lib         media  opt   root  sbin  sys  usr
    boot  dev       home  lost+found  mnt    proc  run   srv   tmp  var
    

    Was passiert jetzt, wenn man den Kernel updatet?

    Ich mache das fast immer so, das ich mir vom Kamil alle Files runterlade und diese dann per

    sudo dpkg -i *.deb
    

    installiere. Dabei werden die neuen Files in /boot reingeschrieben.

    rock64@rockpro64v2_1_TEST:~$ ls /boot
    config-4.4.132-1075-rockchip-ayufan-ga83beded8524
    config-4.4.154-1122-rockchip-ayufan-g7859b9b904a9
    config-4.4.154-1124-rockchip-ayufan-ged3ce4d15ec1
    dtbs
    efi
    extlinux
    filesystem.packages
    filesystem.packages-remove
    initrd.img-4.4.132-1075-rockchip-ayufan-ga83beded8524
    initrd.img-4.4.154-1122-rockchip-ayufan-g7859b9b904a9
    initrd.img-4.4.154-1124-rockchip-ayufan-ged3ce4d15ec1
    System.map-4.4.132-1075-rockchip-ayufan-ga83beded8524
    System.map-4.4.154-1122-rockchip-ayufan-g7859b9b904a9
    System.map-4.4.154-1124-rockchip-ayufan-ged3ce4d15ec1
    vmlinuz-4.4.132-1075-rockchip-ayufan-ga83beded8524
    vmlinuz-4.4.154-1122-rockchip-ayufan-g7859b9b904a9
    vmlinuz-4.4.154-1124-rockchip-ayufan-ged3ce4d15ec1
    

    Wir sehen hier, das es dort drei verschiedene Kernel gibt.

    • 4.4.132-1075
    • 4.4.154-1122
    • 4.4.154-1124

    Jetzt installieren wir mal einen Mainline Kernel.
    Dazu laden wir die drei benötigten Files herunter.

    Dann ein

    sudo dpkg -i *.deb

    Ausgabe

     rock64@rockpro64v2_1_TEST:~$ sudo dpkg -i *.deb
     Vormals nicht ausgewähltes Paket linux-headers-4.19.0-1073-ayufan-ga6e013135a6e wird gewählt.
     (Lese Datenbank ... 101525 Dateien und Verzeichnisse sind derzeit installiert.)
     Vorbereitung zum Entpacken von linux-headers-4.19.0-1073-ayufan-ga6e013135a6e_4.19.0-1073-ayufan_arm64.deb ...
     Entpacken von linux-headers-4.19.0-1073-ayufan-ga6e013135a6e (4.19.0-1073-ayufan) ...
     Vormals nicht ausgewähltes Paket linux-image-4.19.0-1073-ayufan-ga6e013135a6e wird gewählt.
     Vorbereitung zum Entpacken von linux-image-4.19.0-1073-ayufan-ga6e013135a6e_4.19.0-1073-ayufan_arm64.deb ...
     Entpacken von linux-image-4.19.0-1073-ayufan-ga6e013135a6e (4.19.0-1073-ayufan) ...
     Vormals nicht ausgewähltes Paket linux-image-4.19.0-1073-ayufan-ga6e013135a6e-dbg wird gewählt.
     Vorbereitung zum Entpacken von linux-image-4.19.0-1073-ayufan-ga6e013135a6e-dbg_4.19.0-1073-ayufan_arm64.deb ...
     Entpacken von linux-image-4.19.0-1073-ayufan-ga6e013135a6e-dbg (4.19.0-1073-ayufan) ...
     linux-headers-4.19.0-1073-ayufan-ga6e013135a6e (4.19.0-1073-ayufan) wird eingerichtet ...
     linux-image-4.19.0-1073-ayufan-ga6e013135a6e (4.19.0-1073-ayufan) wird eingerichtet ...
     update-initramfs: Generating /boot/initrd.img-4.19.0-1073-ayufan-ga6e013135a6e
     Creating new extlinux.conf...
     Installing new extlinux.conf...
     linux-image-4.19.0-1073-ayufan-ga6e013135a6e-dbg (4.19.0-1073-ayufan) wird eingerichtet ...
    

    Jetzt schauen wir uns das Verzeichnis von eben nochmal an.

    rock64@rockpro64v2_1_TEST:~$ ls /boot
    config-4.19.0-1073-ayufan-ga6e013135a6e
    config-4.4.132-1075-rockchip-ayufan-ga83beded8524
    config-4.4.154-1122-rockchip-ayufan-g7859b9b904a9
    config-4.4.154-1124-rockchip-ayufan-ged3ce4d15ec1
    dtbs
    efi
    extlinux
    filesystem.packages
    filesystem.packages-remove
    initrd.img-4.19.0-1073-ayufan-ga6e013135a6e
    initrd.img-4.4.132-1075-rockchip-ayufan-ga83beded8524
    initrd.img-4.4.154-1122-rockchip-ayufan-g7859b9b904a9
    initrd.img-4.4.154-1124-rockchip-ayufan-ged3ce4d15ec1
    System.map-4.19.0-1073-ayufan-ga6e013135a6e
    System.map-4.4.132-1075-rockchip-ayufan-ga83beded8524
    System.map-4.4.154-1122-rockchip-ayufan-g7859b9b904a9
    System.map-4.4.154-1124-rockchip-ayufan-ged3ce4d15ec1
    vmlinuz-4.19.0-1073-ayufan-ga6e013135a6e
    vmlinuz-4.4.132-1075-rockchip-ayufan-ga83beded8524
    vmlinuz-4.4.154-1122-rockchip-ayufan-g7859b9b904a9
    vmlinuz-4.4.154-1124-rockchip-ayufan-ged3ce4d15ec1
    

    Wir sehen den neuen Kernel 4.19 Aktuell läuft folgender Kernel.

    rock64@rockpro64v2_1_TEST:~$ uname -a
    Linux rockpro64v2_1_TEST 4.4.154-1124-rockchip-ayufan-ged3ce4d15ec1 #1 SMP Mon Oct 22 20:59:41 UTC 2018 aarch64 aarch64 aarch64 GNU/Linux
    

    Wir starten mal neu!

    sudo reboot now
    

    Aufpassen! Aktuell geht der Reboot mit Kernel 4.4. so nicht. Mal bitte die Reset Taste auf dem ROCKPro64 betätigen!

    Wir schauen mal nach dem Kernel.

     rock64@rockpro64v2_1_TEST:~$ uname -a
     Linux rockpro64v2_1_TEST 4.4.154-1124-rockchip-ayufan-ged3ce4d15ec1 #1 SMP Mon Oct 22 20:59:41 UTC 2018 aarch64 aarch64 aarch64 GNU/Linux
    

    Hoppla, was das? Er startet immer noch den Kernel 4.4.154 Warum?

    Bootvorgang

    Beim Booten von der SD-Karte wird von dort der Kernel geladen, erst später schalten wir dann auf die SSD um. Damit ist die Aktualisierung von oben erst mal wirkungslos. Aber das ist recht einfach, wir müssen die Verzeichnisse nur identisch halten.

    SD-Karte mounten

    Nochmal auf die SD-Karte zurück gehen. Die Struktur von oben sieht so aus.

    Device          Start       End   Sectors  Size Type
    /dev/mmcblk0p1     64      8063      8000  3,9M Linux filesystem
    /dev/mmcblk0p2   8064      8191       128   64K Linux filesystem
    /dev/mmcblk0p3   8192     16383      8192    4M Linux filesystem
    /dev/mmcblk0p4  16384     24575      8192    4M Linux filesystem
    /dev/mmcblk0p5  24576     32767      8192    4M Linux filesystem
    /dev/mmcblk0p6  32768    262143    229376  112M Microsoft basic data
    

    Die Partition

    /dev/mmcblk0p6  112M  4,0K  112M   1% /boot/efi
    

    ist schon gemountet. Die interessiert aber nicht. Wir brauchen das Rootverzeichnis der SD-Karte. Das ist die Partition

    /dev/mmcblk0p7
    

    Das Mounten wir jetzt mal eben nach /mnt

     sudo mount /dev/mmcblk0p7 /mnt
    

    Dort interessiert uns das Verzeichnis boot

    rock64@rockpro64v2_1_TEST:~$ ls /mnt/boot
    config-4.4.132-1075-rockchip-ayufan-ga83beded8524
    config-4.4.154-1122-rockchip-ayufan-g7859b9b904a9
    config-4.4.154-1124-rockchip-ayufan-ged3ce4d15ec1
    dtbs
    efi
    extlinux
    filesystem.packages
    filesystem.packages-remove
    initrd.img-4.4.132-1075-rockchip-ayufan-ga83beded8524
    initrd.img-4.4.154-1122-rockchip-ayufan-g7859b9b904a9
    initrd.img-4.4.154-1124-rockchip-ayufan-ged3ce4d15ec1
    System.map-4.4.132-1075-rockchip-ayufan-ga83beded8524
    System.map-4.4.154-1122-rockchip-ayufan-g7859b9b904a9
    System.map-4.4.154-1124-rockchip-ayufan-ged3ce4d15ec1
    vmlinuz-4.4.132-1075-rockchip-ayufan-ga83beded8524
    vmlinuz-4.4.154-1122-rockchip-ayufan-g7859b9b904a9
    vmlinuz-4.4.154-1124-rockchip-ayufan-ged3ce4d15ec1
    

    Wer bis hierhin mitgekommen ist, weiß jetzt wo das Problem liegt 🙂 Auf der SD-Karte muss ebenfalls der Mainline Kernel drauf. Also kopieren wir uns das mal eben rüber.

    Quelle

    rock64@rockpro64v2_1_TEST:~$ ls /boot
    config-4.19.0-1073-ayufan-ga6e013135a6e
    config-4.4.132-1075-rockchip-ayufan-ga83beded8524
    config-4.4.154-1122-rockchip-ayufan-g7859b9b904a9
    config-4.4.154-1124-rockchip-ayufan-ged3ce4d15ec1
    dtbs
    efi
    extlinux
    filesystem.packages
    filesystem.packages-remove
    initrd.img-4.19.0-1073-ayufan-ga6e013135a6e
    initrd.img-4.4.132-1075-rockchip-ayufan-ga83beded8524
    initrd.img-4.4.154-1122-rockchip-ayufan-g7859b9b904a9
    initrd.img-4.4.154-1124-rockchip-ayufan-ged3ce4d15ec1
    System.map-4.19.0-1073-ayufan-ga6e013135a6e
    System.map-4.4.132-1075-rockchip-ayufan-ga83beded8524
    System.map-4.4.154-1122-rockchip-ayufan-g7859b9b904a9
    System.map-4.4.154-1124-rockchip-ayufan-ged3ce4d15ec1
    vmlinuz-4.19.0-1073-ayufan-ga6e013135a6e
    vmlinuz-4.4.132-1075-rockchip-ayufan-ga83beded8524
    vmlinuz-4.4.154-1122-rockchip-ayufan-g7859b9b904a9
    vmlinuz-4.4.154-1124-rockchip-ayufan-ged3ce4d15ec1
    

    Ziel

    rock64@rockpro64v2_1_TEST:~$ ls /mnt/boot
    config-4.4.132-1075-rockchip-ayufan-ga83beded8524
    config-4.4.154-1122-rockchip-ayufan-g7859b9b904a9
    config-4.4.154-1124-rockchip-ayufan-ged3ce4d15ec1
    dtbs
    efi
    extlinux
    filesystem.packages
    filesystem.packages-remove
    initrd.img-4.4.132-1075-rockchip-ayufan-ga83beded8524
    initrd.img-4.4.154-1122-rockchip-ayufan-g7859b9b904a9
    initrd.img-4.4.154-1124-rockchip-ayufan-ged3ce4d15ec1
    System.map-4.4.132-1075-rockchip-ayufan-ga83beded8524
    System.map-4.4.154-1122-rockchip-ayufan-g7859b9b904a9
    System.map-4.4.154-1124-rockchip-ayufan-ged3ce4d15ec1
    vmlinuz-4.4.132-1075-rockchip-ayufan-ga83beded8524
    vmlinuz-4.4.154-1122-rockchip-ayufan-g7859b9b904a9
    vmlinuz-4.4.154-1124-rockchip-ayufan-ged3ce4d15ec1
    

    Kopieren

    sudo cp -r /boot/* /mnt/boot
    

    Kontrolle Ziel

    rock64@rockpro64v2_1_TEST:~$ ls /mnt/boot
    config-4.19.0-1073-ayufan-ga6e013135a6e
    config-4.4.132-1075-rockchip-ayufan-ga83beded8524
    config-4.4.154-1122-rockchip-ayufan-g7859b9b904a9
    config-4.4.154-1124-rockchip-ayufan-ged3ce4d15ec1
    dtbs
    efi
    extlinux
    filesystem.packages
    filesystem.packages-remove
    initrd.img-4.19.0-1073-ayufan-ga6e013135a6e
    initrd.img-4.4.132-1075-rockchip-ayufan-ga83beded8524
    initrd.img-4.4.154-1122-rockchip-ayufan-g7859b9b904a9
    initrd.img-4.4.154-1124-rockchip-ayufan-ged3ce4d15ec1
    System.map-4.19.0-1073-ayufan-ga6e013135a6e
    System.map-4.4.132-1075-rockchip-ayufan-ga83beded8524
    System.map-4.4.154-1122-rockchip-ayufan-g7859b9b904a9
    System.map-4.4.154-1124-rockchip-ayufan-ged3ce4d15ec1
    test
    vmlinuz-4.19.0-1073-ayufan-ga6e013135a6e
    vmlinuz-4.4.132-1075-rockchip-ayufan-ga83beded8524
    vmlinuz-4.4.154-1122-rockchip-ayufan-g7859b9b904a9
    vmlinuz-4.4.154-1124-rockchip-ayufan-ged3ce4d15ec1
    

    Da ist der Kernel 4.19. Noch was Wichtiges, wir müssen die extlinux.conf wieder anpassen.

    sudo nano /mnt/boot/extlinux/extlinux.conf
    

    Ich setze voraus, das das bekannt ist. Ansonsten hier zum Nachlesen!

    Wir entfernen den Mount.

    sudo umount /mnt
    sudo reboot now
    

    Erinnerung! Reboot now ist in Kernel 4.4. aktuell kaputt 😞

    Und nachschauen!

    rock64@rockpro64v2_1_TEST:~$ uname -a
    Linux rockpro64v2_1_TEST 4.19.0-1073-ayufan-ga6e013135a6e #1 SMP PREEMPT Tue Oct 23 09:19:54 UTC 2018 aarch64 aarch64 aarch64 GNU/Linux
    

    Yeah! Kernel 4.19 läuft. Ich hoffe das Prinzip ist verständlich und ihr könnt das gut nachbauen. Wir wollen mal hoffen, das wir in Zukunft einen u-boot sehen, der in der Lage ist direkt von der PCIe-NVMe-Karte zu booten. Das würde einiges vereinfachen, den u-boot in den SPI Flash und fertig! Ob es das mal gibt, weiß ich nicht. Im Moment müssen wir uns so behelfen. Da man den Kernel im Normalfall ja nicht jeden Tag aktualisiert, ist das eine praktikable Lösung!

    Viel Spaß mit einem flotten ROCKPro64!

  • RockPro64 - Mainline Kernel 6.8.0-rc3

    ROCKPro64
    1
    0 Stimmen
    1 Beiträge
    265 Aufrufe
    Niemand hat geantwortet
  • ROCKPro64 - 0.9.16 mit Kernel 5.6 auf PCIe NVMe SSD

    ROCKPro64
    1
    0 Stimmen
    1 Beiträge
    376 Aufrufe
    Niemand hat geantwortet
  • ROCKPro64 - Debian 10.1

    ROCKPro64
    1
    0 Stimmen
    1 Beiträge
    405 Aufrufe
    Niemand hat geantwortet
  • FTDI Support (ayufan Kernel 5.0)

    Ungelöst Probleme?
    8
    0 Stimmen
    8 Beiträge
    567 Aufrufe
    K

    Hi, leider habe ich bisher keine Antwort von Kamil erhalten. So habe ich selbst mal einen Kernel kompiliert. Als Vorlage habe ich den Ayufan 5.3 rc4 1118 genommen. Also gleiche config nur zusätzlich den FTDI und den CH341 (Arduino clones) Treiber hinzugefügt. Könnt ihr ja mal bei Lust und Laune testen. Für meine Zwecke funktioniert er gut.
    Gruss
    https://drive.google.com/file/d/1kJarihL7bAqN9y6tK-m1V4zHCSEiEWtf/view?usp=sharing

  • ROCKPro64 Armbian Image - erster Test

    Verschoben Armbian
    13
    0 Stimmen
    13 Beiträge
    2k Aufrufe
    FrankMF

    Erster dicker Fehlschlag mit Armbian 😞

    Heute versucht mein NAS mit Armbian aufzusetzen. Raid einbinden usw. kein Problem. Als es dann an Restic und GO ging war es vorbei mit lustig. Pakete zu alt, Quellen eingebunden und nur noch Fehler. Hmm!?

    Da ich nach zwei Stunden keine Lust mehr hatte, habe ich das erst mal auf Eis gelegt. Manchmal ist es besser an einem anderen Tag noch mal von vorne anzufangen.

    Nun läuft das NAS wieder mit

    rock64@rockpro64v_2_1:~$ uname -a Linux rockpro64v_2_1 4.19.0-rc4-1071-ayufan-g10a63ec6c2a2 #1 SMP PREEMPT Mon Oct 1 07:33:40 UTC 2018 aarch64 aarch64 aarch64 GNU/Linux

    So schlecht läuft das ja nicht, wenn denn mal die USB3 Schnittstelle vernünftig laufen würde.

    Update: Manchmal muss man es auch richtig machen 🙂 https://forum.frank-mankel.org/topic/420/rockpro64-armbian-go-restic-installieren

  • PCI-e X4 to M.2/NGFF NVMe SSD Interface Card

    Hardware
    1
    0 Stimmen
    1 Beiträge
    658 Aufrufe
    Niemand hat geantwortet
  • eMMC Modul

    Hardware
    1
    0 Stimmen
    1 Beiträge
    2k Aufrufe
    Niemand hat geantwortet
  • ROCKPro64 Forum

    ROCKPro64
    1
    0 Stimmen
    1 Beiträge
    661 Aufrufe
    Niemand hat geantwortet