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
    583 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.

  • ROCKPro64 - Projekt Wireguard Server

    Verschoben ROCKPro64
    2
    0 Stimmen
    2 Beiträge
    482 Aufrufe
    FrankMF

    Hat ein wenig Nerven gekostet und der Artikel ist auch was länger geworden 🙂 Viel Spaß beim Lesen und testen!

  • ROCKPro64 - Debian 10.1

    ROCKPro64
    1
    0 Stimmen
    1 Beiträge
    400 Aufrufe
    Niemand hat geantwortet
  • Video PCIe SATA Karte

    ROCKPro64
    1
    0 Stimmen
    1 Beiträge
    511 Aufrufe
    Niemand hat geantwortet
  • ROCKPro64 - Docker Image

    ROCKPro64
    4
    0 Stimmen
    4 Beiträge
    1k Aufrufe
    FrankMF

    Das ganze hat einen furchtbar schönen Vorteil. Mal angenommen, ich habe ein NodeBB-Forum in einem Container laufen. Will das Ding updaten und das crasht einfach mal so. Egal, Container stoppen, Container starten und alles läuft wieder.

    Mit dem Commit sichere ich mir dann den Zustand nachdem ich weiß, das alles klappt 🙂

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

    Hardware
    1
    0 Stimmen
    1 Beiträge
    654 Aufrufe
    Niemand hat geantwortet
  • 4GB Version - Out of stock

    Verschoben Archiv
    1
    0 Stimmen
    1 Beiträge
    709 Aufrufe
    Niemand hat geantwortet
  • Neue Bilder

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