Skip to content

Quartz64 - Modell B - Manjaro Rootverzeichnis ändern

Quartz64
  • Der Plan, da die SD-Karte ja aktuell nicht so der Burner ist, das Rootverzeichnis zu verschieben. Da die Platte am USB3-Port sehr gute Daten liefert, benutzen wir mal diese.

    Hardware

    • Quartz64 Modell B
    • Festplattenmodell: Samsung SSD 970 EVO 500GB am USB3-Port

    Software

    Auf der Standardinstallation fehlt rsync

    pacman -S rsync
    

    SSD mounten

    Die SSD wird ja vom Manjaro gemountet nach Media. Mal auf sicher entfernen klicken. Ich setze voraus, das die SSD formatiert ist und ein ext4 Dateisystem hat.

    Wir erzeugen ein Verzeichnis

    mkdir /mnt/sda
    

    Wir mounten das Verzeichnis

    mount /dev/sda1 /mnt/sda
    

    Rootverzeichnis kopieren

    Wir kopieren das Rootverzeichnis von der SD-Karte auf die SSD.

     rsync -ax / /mnt/sda
    

    Bootverzeichnis mounten

    Nachdem das Rootverzeichnis auf der SSD liegt, müssen wir Manjaro auch mitteilen, das es dieses Rootverzeichnis nutzen soll.

    Dazu brauchen wir die Boot-Partition der SD-Karte

    mkdir /mnt/boot
    

    Danach schauen wir uns kurz die Struktur an

    fdisk -l
    Gerät           Anfang     Ende Sektoren  Größe Typ
    /dev/mmcblk0p1   62500  1000000   937501 457,8M Microsoft Basisdaten
    /dev/mmcblk0p2 1000001 62333918 61333918  29,2G Linux-Dateisystem
    
    • p1 ist die Boot-Partition
    • p2 ist die Root-Partition

    Wir mounten die Boot-Partition

    mount /dev/mmcblk0p1 /mnt/boot
    

    Wir wechseln das Verzeichnis

    cd /mnt/boot
    

    Inhalt

    [root@frank-pc boot]# ls -lha
    insgesamt 36M
    drwxr-xr-x 4 frank frank   16K  1. Jan 1970  .
    drwxr-xr-x 5 root  root   4,0K  4. Jun 11:17 ..
    drwxr-xr-x 3 frank frank  8,0K 30. Mai 06:07 dtbs
    drwxr-xr-x 2 frank frank  8,0K  3. Jun 16:50 extlinux
    -rw-r--r-- 1 frank frank  172K  7. Apr 20:03 idbloader.img
    -rw-r--r-- 1 frank frank   27M  7. Apr 21:28 Image
    -rw-r--r-- 1 frank frank  7,8M 30. Mai 06:08 initramfs-linux.img
    -rw-r--r-- 1 frank frank 1022K  7. Apr 20:03 u-boot.itb
    

    extlinux.conf anpassen

    Uns interessiert das extlinux Verzeichnis

    [root@frank-pc boot]# ls -lha extlinux/
    insgesamt 32K
    drwxr-xr-x 2 frank frank 8,0K  3. Jun 16:50 .
    drwxr-xr-x 4 frank frank  16K  1. Jan 1970  ..
    -rw-r--r-- 1 frank frank  448  4. Jun 11:49 extlinux.conf
    

    Die Datei extlinux.conf enthält die relevanten Informationen.

    LABEL Manjaro ARM
    KERNEL /Image
    FDT /dtbs/rockchip/rk3566-quartz64-b.dtb
    #APPEND initrd=/initramfs-linux.img console=ttyS2,1500000 root=PARTUUID=14c62b3d-d803-4d00-bd55-d0fa406c20e0 rw rootwait earlycon loglevel=7 audit=0 splash plymouth.ignore-serial-consoles
    APPEND initrd=/initramfs-linux.img console=ttyS2,1500000 root=PARTUUID=032af10e-1655-e545-99d1-af2bb1c43033 rw rootwait earlycon loglevel=7 audit=0 splash plymouth.ignore-serial-consoles
    

    Hier seht ihr meine geänderte Version. In der auskommentierten Zeile steht der Originalinhalt. Wenn was schief läuft, kann man diese Zeile einfach wieder aktivieren. Man sieht, man muss nur die PARTUUID ändern. Kein Hexenwerk 🙂

    [root@frank-pc boot]# blkid
    /dev/nvme0n1p1: UUID="57285d5c-4252-4448-a936-1412a786bf34" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="bd856e70-94c0-3345-a9d6-7ff080b5a2e0"
    /dev/mmcblk0p1: SEC_TYPE="msdos" LABEL_FATBOOT="BOOT_MNJRO" LABEL="BOOT_MNJRO" UUID="3965-3827" BLOCK_SIZE="512" TYPE="vfat" PARTLABEL="primary" PARTUUID="e9d3fd70-ae93-45e2-9071-7e4606447125"
    /dev/mmcblk0p2: LABEL="ROOT_MNJRO" UUID="6fd80f31-8069-4c15-947b-252cdfbe680a" BLOCK_SIZE="4096" TYPE="ext4" PARTLABEL="primary" PARTUUID="14c62b3d-d803-4d00-bd55-d0fa406c20e0"
    /dev/sda1: UUID="e2ba3d08-5481-4117-b980-447d4253afdb" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="032af10e-1655-e545-99d1-af2bb1c43033"
    /dev/zram0: LABEL="zram0" UUID="cd8cab6b-21d7-4453-82b1-2a8e62200e62" TYPE="swap"
    

    Hier sieht man diese, kopiert sich die PARTUUID von sda1 und trägt diese in die extlinux.conf ein. Fertig! Danach einmal neustarten.

    Kontrolle

    Nach dem Neustart schauen wir ob das funktioniert hat.

    [root@frank-pc boot]# df -h
    Dateisystem    Größe Benutzt Verf. Verw% Eingehängt auf
    dev             1,7G       0  1,7G    0% /dev
    run             1,9G    1,2M  1,9G    1% /run
    /dev/sda1       458G     22G  413G    5% /
    tmpfs           1,9G       0  1,9G    0% /dev/shm
    tmpfs           1,9G     45M  1,8G    3% /tmp
    tmpfs           374M     44K  374M    1% /run/user/1000
    /dev/mmcblk0p1  458M     41M  418M    9% /mnt/boot
    /dev/mmcblk0p2   29G    4,7G   23G   17% /run/media/frank/ROOT_MNJRO
    /dev/nvme0n1p1  458G     17G  418G    4% /run/media/frank/57285d5c-4252-4448-a936-1412a786bf34
    

    Wir achten auf den Eintrag für das Rootverzeichnis.

     /dev/sda1       458G     22G  413G    5% /
    

    Das Rootverzeichnis ist jetzt auf der SSD am USB3-Port. Da man auch aktuell nicht von irgendwas anderem Booten kann außer SD-Karte und eMMC, bieten sich diese Vorgehensweise an wenn man **ein relativ flottes System haben möchte.

    Viel Spaß!**

  • In /etc/fstab den Eintrag zu ändern, könnte auch sinnvoll sein.

    # Static information about the filesystems.
    # See fstab(5) for details.
    
    # <file system> <dir> <type> <options> <dump> <pass>
    #PARTUUID=14c62b3d-d803-4d00-bd55-d0fa406c20e0   /   ext4     defaults    0   1
    PARTUUID=032af10e-1655-e545-99d1-af2bb1c43033   /   ext4     defaults    0   1
    
  • Da gab es doch gestern noch einen bösen Fehler, als ich vom Kernel Linux 5.17.0-2 auf Linux 5.17.0-3 aktualisiert habe, war das System danach kaputt. Hmm, ich habe dann versucht das zu untersuchen und war zu der Erkenntnis gekommen, das das Boot Verzeichnis nicht korrekt gemountet war. Konnte es aber nicht selber lösen 😞

    Dan hat das dann heute erledigt, wenn man jetzt das Image installiert, dann ist auch das Boot Verzeichnis korrekt gemountet.

    [root@frank-pc ~]# df -h
    Dateisystem    Größe Benutzt Verf. Verw% Eingehängt auf
    dev             1,7G       0  1,7G    0% /dev
    run             1,9G    1,2M  1,9G    1% /run
    /dev/sda1       458G    4,5G  430G    2% /
    tmpfs           1,9G       0  1,9G    0% /dev/shm
    tmpfs           1,9G    9,6M  1,9G    1% /tmp
    /dev/mmcblk0p1  458M     41M  417M    9% /boot
    tmpfs           374M     44K  374M    1% /run/user/1000
    /dev/mmcblk0p2   59G    3,7G   52G    7% /run/media/frank/ROOT_MNJRO
    

    Dann sollte das auch klappen, wenn man wie ich aktuell das Root Verzeichnis auf die SSD am USB3 Port gelegt hat.

  • [V] Quartz64B V1.3

    Frank's Resterampe
    1
    0 Stimmen
    1 Beiträge
    104 Aufrufe
    Niemand hat geantwortet
  • Quartz64 - Heartbeat LED

    Quartz64
    1
    0 Stimmen
    1 Beiträge
    58 Aufrufe
    Niemand hat geantwortet
  • Quartz64 - Modell B - Kernelversionen

    Images
    1
    0 Stimmen
    1 Beiträge
    126 Aufrufe
    Niemand hat geantwortet
  • Quartz64 - Modell B - M.2 Anschluss

    Quartz64 - B
    3
    0 Stimmen
    3 Beiträge
    239 Aufrufe
    FrankMF

    Ich hatte schon drauf getippt, das der Slot nur mit einer Lane angeschlossen ist.

    <pgwipeout> It is a single lane pcie2 port.

    Und damit ist das das erwartete Ergebnis

    root@debian:/mnt/nvme# dd if=/dev/zero of=sd.img bs=4M count=4096 oflag=direct 4096+0 records in 4096+0 records out 17179869184 bytes (17 GB, 16 GiB) copied, 58.4993 s, 294 MB/s

    Das alles mit Debian 10, was man mit Peters Buildsystem installieren kann. Kann man aber auch bei Bedarf auf 11.3 hochziehen 🙂

    root@debian:/etc# uname -a Linux debian 5.17.0 #1 SMP PREEMPT Thu Apr 7 13:38:56 UTC 2022 aarch64 GNU/Linux root@debian:/etc# cat debian_version 11.3 root@debian:/etc#
  • Quartz64 - Image von Peter Geis

    Images
    4
    0 Stimmen
    4 Beiträge
    328 Aufrufe
    FrankMF

    Nach langer Zeit habe ich mich mal wieder mit diesem Image beschäftigt. Peter hat da mittlerweile viel dran gearbeitet und jetzt schau ich mal, was so wie funktioniert. Also, das Image wie gewohnt auf eine SD-Karte und starten. Gewählt habe ich dieses Image -> rk3566-quartz64-a.dtb.img

    Wenn man das Image startet, wird man hiermit begrüßt

    screen01.png

    Punkt 1Buildroot-recovery startet ein Minimalsystem, womit man verschiedene Dinge auf der Konsole durchführen kann. Das brauchen wir gleich noch. Punkt 2 startet den Debian Installer Punkt 3 startet ein installiertes Debian von der SD-Karte Punkt 4 startet ein installiertes Debian vom eMMC-Modul

    Ich möchte heute mal schauen, ob man ein Minimal-System auf die PCIe-NVMe-Karte installieren kann. Peter hat nämlich den PCIe-Treiber mittlerweile im Kernel mit eingebaut.

    Dazu starte ich den Debian-Installer und führe die Installation durch. Für mich nichts besonderes, das mache ich ja sehr oft. Nach erfolgreicher Installation startet die Installation nicht, weil Peter in seinem Image das so nicht vorgesehen hat.

    Es gibt mehrere Möglichkeiten, das jetzt zu ändern. Wir machen das über UART direkt auf dem Quartz64.

    Die Struktur von Peters Image sieht so aus.

    e50bf2fe-723c-41f8-acba-227e148374ed-image.png

    Ich gehe nicht auf alles ein, die wichtigsten Partitionen haben einen Namen. Uns interessiert hier die Partition Nummer 5 mit dem Namen efi. (Auf der SD-Karte!!) Der Inhalt

    3c5cbf5f-811d-4c1f-95e9-cd007a37155c-image.png

    Im Ordner extlinux liegt die Konfigurationsdatei, die wir bearbeiten müssen. extlinux.config

    default l0 menu title Quartz64 Installer prompt 0 timeout 50 label l0 menu label Buildroot-recovery linux /vmlinuz initrd /rootfs.cpio.zst fdt /dtbs/rockchip/rk3566-quartz64-a.dtb append earlycon=uart8250,mmio32,0xfe660000 console=ttyS2,1500000n8 label l1 menu label Debian-Installer linux /vmlinuz initrd /initrd.gz fdt /dtbs/rockchip/rk3566-quartz64-a.dtb append earlycon=uart8250,mmio32,0xfe660000 console=ttyS2,1500000n8 label l6 menu label Boot Root SDMMC linux /vmlinuz fdt /dtbs/rockchip/rk3566-quartz64-a.dtb append earlycon=uart8250,mmio32,0xfe660000 console=ttyS2,1500000n8 root=/dev/mmcblk0p7 rootwait label l9 menu label Boot Root eMMC linux /vmlinuz fdt /dtbs/rockchip/rk3566-quartz64-a.dtb append earlycon=uart8250,mmio32,0xfe660000 console=ttyS2,1500000n8 root=/dev/mmcblk1p7 rootwait

    Ich nehme den Eintrag label l9 und passe ihn ein wenig an.

    label l9 menu label Boot Root NVMe linux /dev/nvme0n1p1/vmlinuz fdt /dtbs/rockchip/rk3566-quartz64-a.dtb append earlycon=uart8250,mmio32,0xfe660000 console=ttyS2,1500000n8 root=/dev/nvme0n1p2 rootwait

    Das wird abgespeichert, danach kann man den Quartz64 neustarten und mit Eingabe der Taste 4 startet man dann das Debian von der NVMe SSD.

    root@debian:~# df -h Filesystem Size Used Avail Use% Mounted on /dev/root 457G 926M 432G 1% / devtmpfs 1.9G 0 1.9G 0% /dev tmpfs 2.0G 0 2.0G 0% /dev/shm tmpfs 2.0G 17M 1.9G 1% /run tmpfs 5.0M 0 5.0M 0% /run/lock tmpfs 2.0G 0 2.0G 0% /sys/fs/cgroup /dev/nvme0n1p1 472M 49M 400M 11% /boot tmpfs 391M 0 391M 0% /run/user/1000

    PCIe

    root@debian:~# lspci 00:00.0 PCI bridge: Fuzhou Rockchip Electronics Co., Ltd Device 3566 (rev 01) 01:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller SM981/PM981

    Es handelt sich um ein Debian Buster 10

    VERSION="10 (buster)"

    Wollen wir das? Nö

    # deb http://deb.debian.org/debian/ buster main deb http://deb.debian.org/debian/ bullseye main deb-src http://deb.debian.org/debian/ bullseye main deb http://security.debian.org/debian-security bullseye-security main deb-src http://security.debian.org/debian-security bullseye-security main # buster-updates, previously known as 'volatile' deb http://deb.debian.org/debian/ bullseye-updates main deb-src http://deb.debian.org/debian/ bullseye-updates main

    Danach ein

    apt update && apt upgrade

    Neustarten und wir haben ein Debian Bullseye 11 🙂 Dieses Debian nutzt so jetzt nicht den Kernel von Debian, sondern Peters

    root@debian:/etc# uname -a Linux debian 5.17.0-rc3 #1 SMP PREEMPT Wed Feb 16 00:41:25 UTC 2022 aarch64 GNU/Linux

    Die Entscheidung überlasse ich Euch, ob ihr das Ändern wollt. Ich lasse das jetzt mal so. Wenn ihr wollt, das die Installation von alleine startet, dann müsst ihr Label 0 anpassen, das startet nach einem Timeout automatisch.

  • Quartz64 - sbc-bench

    Verschoben Quartz64
    7
    0 Stimmen
    7 Beiträge
    365 Aufrufe
    FrankMF

    @tkaiser Nein, kein Kühler und kein Lüfter. Nacktes Board 😁

  • Quartz64 - UART

    Angeheftet Verschoben Quartz64 - A
    2
    0 Stimmen
    2 Beiträge
    223 Aufrufe
    FrankMF

    Mein Quartz64 ist heute eingetroffen, mit einem Test Image des Manjaro Teams mal ausprobiert. Die UART-Schnittstelle funktioniert genau wie beim ROCKPro64. Also, nichts Neues für uns. UART Adapter anschließen und los geht es.

  • Wichtige Links zum Quartz64

    Angeheftet Verschoben Quartz64
    1
    0 Stimmen
    1 Beiträge
    225 Aufrufe
    Niemand hat geantwortet