Skip to content

Rockpro64: Boot von SSD statt SD(bootloader)

ROCKPro64
  • Update: ich habe diese post gefunden und habe versucht
    (https://forum.frank-mankel.org/topic/208/booten-von-der-nvme-platte)

    Leider könnte ich nicht booten. es gibt ein fehler. ich habe LVM benützt um ein partition zuerstellen. Dann habe ich alle root folders/files kopiert. Aber das ist nicht geklappt.

    Hat jemand eine Lösung finden?

  • Hallo,

    die RAID1 Konfiguration müsste ein bootbares System enthalten, damit der u-boot von dort bootet.
    Dazu muss dann der u-boot im SPI Speicher sein.

    1. u-boot im SPI ?
    2. Bootbares System auf dem RAID1 ?

    Alternativ, könnte man ein vorhandenes OMV-Image auf eine SD_Karte schreiben und die Daten auf dem RAID1 ablegen.

    Die Frage ist wie immer, was möchte man erreichen.

  • @FrankM sagte in Rockpro64: Boot von SSD statt SD(bootloader):

    die RAID1 Konfiguration müsste ein bootbares System enthalten, damit der u-boot von dort bootet.
    In welche file kann ich ändern oder meinst du der U-boot im SPI?

    sollte ich mit diese quelle (https://github.com/sigmaris/u-boot/wiki/Flashing-U-Boot-to-SPI) weitermachen?

    VG,
    Siva

  • So, If I boot from SSD using U-boot-spi, then I can't use my SSD to save other files I think. because entire disk will occupying the OS if I enlarge it. I just want to create a partition for OS and boot the OS only from that and the remaining part of the disk, I would like to use it for user storage or docker config/container files.
    I would like to have the OS boot in raid 1 setup.

    Another thing is, Normally once I flash the OMV to my sd card. I need to add pci=nomsi and marvel-99.rules to make my PCI available to use ssd drives.

    How will I boot from SSD after flashing the U-boot-to-SPI? I dont think the rockpro64 boots from ssd.

    I looked into this post: https://forum.frank-mankel.org/topic/735/nvme-booten-jetzt-möglich/7

    Maybe should I copy the os into the partition which I already have in raid 1 setup using DD command and will it boot from the partition?

    I am afraid, i dont wanna mess it up with SPI-boot. I dont have any serial controller to see the error message and not sure how would make it back to boot from sd if something goes wrong.

    Since I am using differnt PCI-e. Not sure how to enable it and make it boot from ssd after this u-boot-spi thing?

    Please let me know.
    Thanks.

    PS: you can write me in german. Its totally fine.

  • Wo fang ich an?

    Für deine Partitionsprobleme mit OMV musst du bitte woanders suchen. Ich nutze kein OMV und setze meine ROCKPro64 auch anders ein.

    Die Marvel SATA Karte ist etwas eigenwillig ☹ Einer der Gründe, warum ich die Karte nicht mehr in meinem NAS einsetze. Link

    Diese Karte bootet übrigens kein Betriebssystem von einer angeschlossenen SSD / HDD.

    Was geht, kann man hier nachlesen. Ich fasse mal zusammen.

    OHNE U-BOOT IM SPI

    • SD-Karte JA
    • eMMC (kann ich nicht mehr testen)

    MIT U-BOOT IM SPI

    • USB2 JA
    • USB3 NEIN
    • PCIe NVMe SSD JA
    • PCIe SATA JMS-585 JA

    Um von einem Laufwerk zu booten, muss auf diesem auch ein Betriebssystem drauf sein, von dem man starten kann. Ich nutze fast ausschließlich dieses Image.

    https://github.com/ayufan-rock64/linux-build/releases/download/0.10.12/buster-minimal-rockpro64-0.10.12-1184-arm64.img.xz

    Man kann den SPI abschalten. Dazu brückt man die Kontakte 23 & 25
    https://wiki.pine64.org/index.php?title=ROCKPro64#Disable_SPI_.28while_booting.29

    Das hatte ich schon mal zur Marvel Karte geschrieben.

    Aber auch hiermit ist ein Boot von der SATA Platte nicht möglich.
    
    Ich möchte hier noch was vom kamil zitieren.
    
        (11:44:09) ayufanWithPM: will look later, but this controller is tricky, also on x86 as well
        (11:44:16) ayufanWithPM: jms585 seems to be significantly more stable
    
    Evt. bekommt er das gefixt
    

    Ich hoffe du kommst jetzt damit klar. Brücken auf dem Board, sollte man nur dann machen, wenn man genau weiß was man macht! Für Schäden übernehme ich keine Haftung. Bitte vorher das Gehirn einschalten.

    Ich hoffe, das die Infos noch aktuell sind, ein kurzer Test eben, brachte nix Neues.

    P.S: Mein NAS läuft seit Monaten stabil 🙂

  • Hallo Frank,
    danke für die infos.

    ich habe https://github.com/ayufan-rock64/linux-build/releases/download/0.10.12/buster-minimal-rockpro64-0.10.12-1184-arm64.img.xz image benützt.

    Leider könnte ich Ip addrese nicht bekommen. DHCP is schon eth0.yaml (True) und kein internet.

    eth0 port 1GB ist schon drin. (UP link enabled)

    Ich weiß nicht was passiert

  • So I was trying to install Armbian based image (Raspian Buster). After installing, I have to manually enable the network
    using the following command and then I got the IP address.
    sudo nmtui

    Then I have enabled by marvel Pci-e by adding a rule in /udev/ and also added pci=nomsi in kernal boot parameters. But my SSD drives dint show up.

    Anything you could recommend inorder to solve this issue?

    Thanks

  • I have tried the same image which you posted above. 0.10.12-1184-arm64.img.

    I could see my eth 1Gb shows up. But there is no static IP set. I followed this guide https://forum.frank-mankel.org/topic/211/die-ersten-schritte-nach-der-installation
    to setup after that.

    But I can't able to get the IP nor the internet.

    Could you please suggest me something which I can use to solve this issue.
    Thanks.

  • Das Image ist ein Debian. Das zieht ganz normal per DHCP eine Adresse. Das sollte auch bei Dir so funktionieren. Es sei denn, bei dir läuft kein DHCP-Server!?

    Netplan benutzen die bei Ubuntu, das steht auch in dem Artikel so drin. Bitte fang mal mit den Basics an, danach dann PCIe usw.

  • Yeah it should pull dhcp address automatically. But it dint. It was working when I use Armbian image or OMV (stretch-openmediavault-rockpro64-0.8.3-1141-armhf.img). It automatically pulled the ip address. Only for this distro. It doesn't work.

    I use pfsense as firewall and dhcp is set for all my ports. i dont understand why it doesn't work for this.

    One thing I notices is eth0 Link is UP - 1Gbps/full. It is the first time I am seeing this on the command line.

    Before that it used to be eth0 Link is up - 10/100 mbps..

  • update: I used the cat 6e cable which is capable of delivering 1 gbps and it worked. Isn't it strange?

    the normal rj45 cable doesn't work. Now dhcp gave the address and everything looks fine.

    Do you think this is a stable version? Can It be use for a homeserver? Because in the github it mentioned as testing purpose and not stable.

    Thanks

  • Nice workaround 😊

    I am only using this image. My NAS is running since months with an PCIe SATA Card JMS585.
    Two Raid 1 and an SSD for system.
    https://forum.frank-mankel.org/topic/789/rockpro64-pcie-sata-karte-mit-jmicron-jms585-chip/13

  • RockPro64 - Mainline Kernel 6.8.0-rc3

    ROCKPro64
    1
    0 Stimmen
    1 Beiträge
    236 Aufrufe
    Niemand hat geantwortet
  • Kernel 6.0.0-rc7

    ROCKPro64
    2
    0 Stimmen
    2 Beiträge
    144 Aufrufe
    FrankMF

    Geht 🙂

    fb1bc176-5c57-48bf-8d75-1834b5548552-grafik.png

    Link Preview Image Releases · ayufan-rock64/linux-mainline-kernel

    Linux kernel source tree. Contribute to ayufan-rock64/linux-mainline-kernel development by creating an account on GitHub.

    favicon

    GitHub (github.com)

    Altes Image installieren, die zwei .deb Files vom Kamil herunterladen.

    dpkg -i *.deb

    und neustarten.

    Und hochgezogen auf Debian Bullseye

    root@rockpro64:~# cat /etc/debian_version 11.5
  • Keine Bildschirmausgabe

    ROCKPro64
    6
    1 Stimmen
    6 Beiträge
    158 Aufrufe
    W

    Hallo zusammen,
    das Image "Armbian 22.02 Jammy XFCE" funktioniert. Danke!
    Somit bin ich erstmal froh, dass die BS-Ausgabe i.O. ist.
    Auch das Booten vom USB-Stick klappt nun.
    Jetzt werde ich mal sehen, dass ich die SATA-Karte eingebunden bekomme und von SSD booten kann.
    Bis dann

  • ROCKPro64 - Debian 11 installieren

    ROCKPro64
    1
    0 Stimmen
    1 Beiträge
    458 Aufrufe
    Niemand hat geantwortet
  • ROCKPro64: NAS mit PCI-e SATA-III Aufrüsten

    ROCKPro64
    13
    0 Stimmen
    13 Beiträge
    866 Aufrufe
    N

    @frankm Alles Klar!
    Wie schon erwähnt, für meine Zwecke rechts! Die Jahre über hat gute Dienste geleistet (PCI-e und HDD) und wird hoffentlich auch noch ein paar Jahre bis zum nächsten Umbau tun!
    Vielen Dank!

  • Zwei WD RED 2TB Disken (3.5 Zoll)

    ROCKPro64
    7
    1 Stimmen
    7 Beiträge
    313 Aufrufe
    C

    Hallo Frank,

    Habe mir die Karte von DeLock gekauft.
    Delock 2 Port SATA PCI Express Karte - Low Profile Formfaktor

    Habe keinerlei Probleme mehr. ✔

    Mit der PCIe Karte von Pine64, habe ich maximal die Übertragungsrate von 150 MB/s geschafft.

    Mit der DeLock Karte geht es locker über 200 MB/s.

    rock64@RockPro64:/$ sudo dd if=/dev/zero of=/pool0/test_file1.img bs=1M count=1024 1073741824 bytes (1.1 GB, 1.0 GiB) copied, 5.09487 s, 211 MB/s

    Danke dir für den Tipp! 👍

  • RGB LED mit dem RockPro64 kontrollieren

    ROCKPro64
    7
    0 Stimmen
    7 Beiträge
    366 Aufrufe
    C

    Hallo Frank,

    Danke für die Formatierung. (der Beitrag ist natürlich viel übersichtlicher geworden)
    Die Bilder sind ein paar MB groß, wahrscheinlich hat deswegen das Hochladen nicht funktioniert. Werde die Bilder auf 400-600 KB reduzieren und dann zum Beitrag hinzufügen.

    ** Ich arbeite an einer speziellen Backup Software die auf dem RP64 laufen soll. Das Licht ist eigentlich als Ambient Light für das Gehäuse geplant. Beim Backup Prozess sollte die Box (RockPro64 NAS Device) grün leuchten, beim Restore - orange oder gelb, bei einem Hardware Defekt- rot usw... 👨‍💻 ☺

  • ROCKPro64 - Debian Bullseye Teil 1

    ROCKPro64
    17
    0 Stimmen
    17 Beiträge
    2k Aufrufe
    FrankMF

    Durch diesen Beitrag ist mir mal wieder eingefallen, das wir das erneut testen könnten 😉

    Also die aktuellen Daten von Debian gezogen. Das Image gebaut, könnt ihr alles hier im ersten Beitrag nachlesen. Da die eingebaute Netzwerkschnittstelle nicht erkannt wurde, habe ich mal wieder den USB-to-LAN Adapter eingesetzt.

    Bus 005 Device 002: ID 0b95:1790 ASIX Electronics Corp. AX88179 Gigabit Ethernet

    Die Installation wollte ich auf einem NVMe Riegel installieren.

    Die Debian Installation durchgezogen und nach erfolgreicher Installation neugestartet. Und siehe da, ohne das man alles möglich ändern musste, bootete die NVMe SSD 🤓

    Eingesetzter uboot -> 2020.01-ayufan-2013......

    Die nicht erkannte LAN-Schnittstelle müsste an nicht freien Treibern liegen, hatte ich da irgendwo kurz gelesen. Beim Schreiben dieses Satzes kam die Nacht und ich konnte noch mal drüber schlafen. Heute Morgen, beim ersten Kaffee, dann noch mal logischer an die Sache ran gegangen.

    Wir schauen uns mal die wichtigsten Dinge an.

    root@debian:~# ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000 link/ether 62:03:b0:d6:dc:b3 brd ff:ff:ff:ff:ff:ff 3: enx000acd26e2c8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 00:0a:cd:26:e2:c8 brd ff:ff:ff:ff:ff:ff inet 192.168.3.208/24 brd 192.168.3.255 scope global dynamic enx000acd26e2c8 valid_lft 42567sec preferred_lft 42567sec inet6 fd8a:6ff:2880:0:20a:cdff:fe26:e2c8/64 scope global dynamic mngtmpaddr valid_lft forever preferred_lft forever inet6 2a02:908:1260:13bc:20a:xxxx:xxxx:xxxx/64 scope global dynamic mngtmpaddr valid_lft 5426sec preferred_lft 1826sec inet6 fe80::20a:cdff:fe26:e2c8/64 scope link valid_lft forever preferred_lft forever

    Ok, er zeigt mir die Schnittstelle eth0 ja an, dann kann es an fehlenden Treibern ja nicht liegen. Lässt dann auf eine fehlerhafte Konfiguration schließen. Nächster Halt wäre dann /etc/network/interfaces

    Das trägt Debian ein

    # This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). source /etc/network/interfaces.d/* # The loopback network interface auto lo iface lo inet loopback # The primary network interface allow-hotplug enx000acd26e2c8 iface enx000acd26e2c8 inet dhcp # This is an autoconfigured IPv6 interface iface enx000acd26e2c8 inet6 auto

    Gut, bei der Installation hat Debian ja nur die zusätzliche Netzwerkschnittstelle erkannt, folgerichtig ist die auch als primäre Schnittstelle eingetragen. Dann ändern wir das mal...

    # This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). source /etc/network/interfaces.d/* # The loopback network interface auto lo iface lo inet loopback # The primary network interface #allow-hotplug enx000acd26e2c8 allow-hotplug eth0 #iface enx000acd26e2c8 inet dhcp iface eth0 inet dhcp # This is an autoconfigured IPv6 interface #iface enx000acd26e2c8 inet6 auto iface eth0 inet6 auto

    Danach einmal alles neu starten bitte 😉

    systemctl status networking

    Da fehlte mir aber jetzt die IPv4 Adresse, so das ich einmal komplett neugestartet habe. Der Ordnung halber, so hätte man die IPv4 Adresse bekommen.

    dhclient eth0

    Nachdem Neustart kam dann das

    root@debian:/etc/network# ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 link/ether 62:03:b0:d6:dc:b3 brd ff:ff:ff:ff:ff:ff inet 192.168.3.172/24 brd 192.168.3.255 scope global dynamic eth0 valid_lft 42452sec preferred_lft 42452sec inet6 fd8a:6ff:2880:0:6003:b0ff:fed6:dcb3/64 scope global dynamic mngtmpaddr valid_lft forever preferred_lft forever inet6 2a02:908:1260:13bc:6003:xxxx:xxxx:xxxx/64 scope global dynamic mngtmpaddr valid_lft 5667sec preferred_lft 2067sec inet6 fe80::6003:b0ff:fed6:dcb3/64 scope link valid_lft forever preferred_lft forever 3: enx000acd26e2c8: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000 link/ether 00:0a:cd:26:e2:c8 brd ff:ff:ff:ff:ff:ff

    Fertig, eth0 läuft. Nun kann man den zusätzlichen Adapter entfernen oder halt konfigurieren, wenn man ihn braucht.

    Warum der Debian Installer die eth0 nicht erkennt verstehe ich nicht, aber vielleicht wird das irgendwann auch noch gefixt. Jetzt habe ich erst mal einen Workaround um eine Installation auf den ROCKPro64 zu bekommen.