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!

  • WLan auf der Konsole einrichten

    Angeheftet Linux
    3
    0 Stimmen
    3 Beiträge
    519 Aufrufe
    FrankMF

    Ich kann im Manjaro keine WPA3 Sicherheit auswählen, dann bekomme ich keine Verbindung. Es geht nur WPA2 Personal. Gegenstelle ist eine FRITZ!Box 6591 Cable.

    2021-11-28_16-37.png

    In der Fritzbox sieht das so aus

    50d23aa8-5f67-485e-a994-244ef4f6a270-image.png

    Das kam als Fehlermeldung

    Nov 28 11:03:07 frank-pc wpa_supplicant[700]: wlan0: Trying to associate with SSID 'FRITZ!Box 6591 Cable AK' Nov 28 11:03:07 frank-pc wpa_supplicant[700]: wlan0: WPA: Failed to select authenticated key management type Nov 28 11:03:07 frank-pc wpa_supplicant[700]: wlan0: WPA: Failed to set WPA key management and encryption suites

    Ich denke, der Treiber unterstützt das nicht.

  • 0 Stimmen
    1 Beiträge
    290 Aufrufe
    Niemand hat geantwortet
  • NVMe - Booten jetzt möglich

    Angeheftet ROCKPro64
    7
    0 Stimmen
    7 Beiträge
    681 Aufrufe
    FrankMF

    Hallo @mabs,

    ja. Der uboot wird in den SPI Speicher geladen. Der sucht dann beim Starten nach einem bootfähigem Device. So wie auf einem ganz normalen PC. Eine richtig coole Sache, wo ich mich freue, das das langsam mal funktioniert.

    Die Performance wird ja dann sicherlich von dem Device bestimmt. Dazu gibt es ja genug Messungen. Ich würde eine NVMe SSD immer einer SATA Platte vorziehen. Es kommt aber auf den Anwendungsfall an.

    Für ein NAS dann eher zwei oder mehr SATA Platten, und von USB3 HDD booten 🙂 So wie ich das schon lange betreibe.

    Aber, da hat auch jeder andere Vorstellungen und Vorlieben für.

  • NVMe SSD Speed auf Kernel 5.0 von Kamil

    Verschoben ROCKPro64
    11
    0 Stimmen
    11 Beiträge
    864 Aufrufe
    W

    @FrankM sagte in NVMe SSD Speed auf Kernel 5.0 von Kamil:

    Kurz was zum Nanopc-t4, das war das Board, wo ich damals schon geschrieben habe, wie man da die Wärme weg bekommt!? Ok, bleiben wir beim ROCKPro64 😉

    Hmm .. nix dazu im Forum bei dir gefunden .. nach wärme , nano usw. gesucht ..

    Den Teil verstehe ich nicht. Woher soll er denn das 0.7er Image laden???

    Von seiner SD .. ein bisschen wirr von mir beschrieben.

    Nackter Rockpro, ohne USB-Devices, ohne NVMe, ohne emmc, ..

    Ablauf 1:
    SD Karte mit 0.7er Image (das bisher immer funktioniert hatte) rein -> Rockpro geht an, beide LEDs gehen an (was aber bisher nur die weisse war), kein weiterer Boot-Vorgang.

    Ablauf 2:
    SD Karte mit 0.8er Image (gleiche SD Karte) rein -> Rockpro geht an, perfekter Boot Vorgang.

    Das Monitor "Problem" und das 0.7er scheinen hier ggf. zusammen zu hängen, jedoch - mehr debugging nur mit der RS232 möglich, ggf. Mist im First-Stage-Loader ..

    (Erase SPI , etc. alles hatte nichts verändert ..)

    Wenn jemand richtig Zeit und Lust hätte könnte man sich ja am Armbian nand-sata Script orientieren:

    Da habe ich auch schon mal drüber nachgedacht....

    Ich würde 5$ Patreon Money dazu geben 🙂

    Einen schönen Sonntag.

  • 0 Stimmen
    8 Beiträge
    1k Aufrufe
    FrankMF

    Nach

    make modules_install

    kommt am Ende

    INSTALL net/netfilter/xt_physdev.ko INSTALL sound/core/snd-rawmidi.ko INSTALL sound/soc/codecs/snd-soc-es8316.ko DEPMOD 4.18.8-77394-g8cce48cacf88

    Das brauchen wir 😉

    Dann wie vom André geschrieben, einfach weitermachen. Danach neustarten

    sudo reboot

    Der neue Kernel wird geladen

    rock64@rockpro64:~$ uname -a Linux rockpro64 4.18.8-77394-g8cce48cacf88 #1 SMP PREEMPT Mon Sep 17 18:50:57 UTC 2018 aarch64 aarch64 aarch64 GNU/Linux

    Ich habe aber zwei Probleme.

    Ich sehe nicht wo der Kernel schneller sein soll als der vom Kamil!?

    Bei Updaten mit apt-get upgrade wird in meinen Augen, die falsche initrd.img aktualisiert.

    update-initramfs: deferring update (trigger activated) Setting up initramfs-tools (0.130ubuntu3.3) ... update-initramfs: deferring update (trigger activated) Processing triggers for initramfs-tools (0.130ubuntu3.3) ... update-initramfs: Generating /boot/initrd.img-4.4.132-1075-rockchip-ayufan-ga83beded8524 cryptsetup: WARNING: could not determine root device from /etc/fstab

    ABER, ich nix Kernel Guru 🙂

    Vielen Dank André, ich weiß das viele da draußen auf aktuelle Kernels stehen 🙂 Mit deinem haben sie jetzt einen sehr aktuellen Kernel. 4.18.8 ist auf kernel.org ein stable Kernel. Kann man also sehr schön für einen headless Server einsetzen. DANKE!

  • NVMe-Platte einrichten

    ROCKPro64
    1
    0 Stimmen
    1 Beiträge
    1k Aufrufe
    Niemand hat geantwortet
  • Mainline Kernel 4.20.x

    Verschoben Images
    26
    0 Stimmen
    26 Beiträge
    4k Aufrufe
    FrankMF

    4.20.0-1090-ayufan released

    Änderungen -> https://gitlab.com/ayufan-repos/rock64/linux-mainline-kernel/commits/master

  • NAS/Server/Desktop Gehäuse

    Hardware
    6
    0 Stimmen
    6 Beiträge
    2k Aufrufe
    FrankMF

    Nettes Video