-
Was ist nand-sata-install ? Das ist ein Script um Armbian auf einer SATA-HDD, USB-HDD oder NVMe-SSD zu installieren. Heute schau ich mir das mal an, als SD-Version. Das geht auch mit dem SPI-Flash, das folgt spÀter. Auf gehts...
Als erstes setze ich voraus, das es eine Partition auf der NVMe-Platte gibt. Wenn nicht kurz eine erzeugen, ich gehe hier nicht nÀher drauf ein, das Wissen setze ich voraus, ansonsten...
sudo fdisk /dev/nvme0n1
Dann
sudo /usr/sbin/nand-sata-install
Hier kann man auswÀhlen, ob der ROCKPro64 von der SD-Karte oder vom SPI booten soll. Wer jetzt mit SPI nichts anfangen kann, der liest hier mal bitte eben nach. In Kurzform, ein spezieller Speicherbereich auf dem Board, so Àhnlich wie das BIOS in Eurem Rechner.
Platte auswÀhlen
Schöne Warnung
Dateisystem aussuchen, ich habe ext4 gewÀhlt.
Dann fÀngt das Script an zu arbeiten.
Fertig!
Nach dem reboot, schauen wir mal nach, ob es geklappt hat.
frank@rockpro64:~$ df -h Filesystem Size Used Avail Use% Mounted on udev 994M 0 994M 0% /dev tmpfs 200M 3.0M 197M 2% /run /dev/nvme0n1p1 229G 1.2G 216G 1% / 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 tmpfs 996M 4.0K 996M 1% /tmp /dev/mmcblk0p1 15G 1.1G 14G 8% /media/mmcboot /dev/zram0 49M 2.7M 43M 6% /var/log tmpfs 200M 0 200M 0% /run/user/1000
Unter /etc/fstab sieht man, das die Bootpartition der SD-Karte eingehangen ist.
# <file system> <mount point> <type> <options> <dump> <pass> tmpfs /tmp tmpfs defaults,nosuid 0 0 UUID=d586ed3c-f09c-4ef8-b402-13c7ceb007d3 /media/mmcboot ext4 defaults,noatime,nodiratime,commit=600,errors=remount-ro,x-gvfs-hide 0 1 /media/mmcboot/boot /boot none bind 0 0 UUID=a055577c-cf2b-4278-8062-163fcdd5de25 / ext4 defaults,noatime,nodiratime,commit=600,errors=remount-ro,x-gvfs-hide 0 1
Das sieht doch sehr schön aus. FĂŒr Einsteiger eine tolle Sache, aber auch fĂŒr erfahrene Benutzer, die sind ja meistens Tippfaul
Dran denken, Armbian ist noch in einem sehr frĂŒhen Stadium. Nicht unbedingt zu empfehlen fĂŒr produktive Sachen. Ich bin mir aber sicher, das das Team das sehr schnell Ă€ndern wird. Und ich freue mich, wenn es eine Alternative gibt, weil von Kamil hört und liest man schon seit Wochen nichts mehr
Weitere Tests mit dem Script folgen...
-
Das Script ausprobiert mit einer USB-SSD
SPI und USB-SSD
Das Filesystem / wird nicht resized
root@rockpro64:~# df -h Filesystem Size Used Avail Use% Mounted on udev 994M 0 994M 0% /dev tmpfs 200M 3.0M 197M 2% /run /dev/sda1 1.2G 1.1G 26M 98% / 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 tmpfs 996M 4.0K 996M 1% /tmp /dev/zram0 49M 2.1M 43M 5% /var/log tmpfs 200M 0 200M 0% /run/user/0
Bootet von USB2, von USB3 nicht!
SD-Karte und USB-SSD
Das Filesystem / wird nicht resized
root@rockpro64:~# df -h Filesystem Size Used Avail Use% Mounted on udev 994M 0 994M 0% /dev tmpfs 200M 5.5M 194M 3% /run /dev/sda1 1.2G 1.1G 25M 98% / 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 tmpfs 996M 4.0K 996M 1% /tmp /dev/mmcblk0p1 58G 1.1G 57G 2% /media/mmcboot /dev/zram0 49M 2.9M 43M 7% /var/logï»żï»ż tmpfs 200M 0 200M 0% /run/user/0
Bootet von USB und USB3. Startet auch nach erneutem Reboot!
Geschwindigkeit der SSD
root@rockpro64:~# sudo dd if=/dev/zero of=sd.img bs=1M count=4096 conv=fdatasync 4096+0 records in 4096+0 records out 4294967296 bytes (4.3 GB, 4.0 GiB) copied, 38.3928 s, 112 MB/s
Das sieht immer noch nicht nach voller USB3 Geschwindigkeit aus. Liegt aber evt. auch an der SSD, muss ich mal gegenchecken.
-
-
Eine Installation SPI/NVMe hÀngt sich irgendwann immer auf. Zweimal getestet.
Macht in meinen Augen auch gar keinen Sinn, da der aktuelle u-boot nur von USB booten kann, so weit mir das bekannt ist.
Die SATA-Option macht dann im Moment auch keinen Sinn (SPI/SATA), aus demselben Grund.Was aktuell geht
- SD-Karte/USB
- SD-Karte/NVMe
- SD-Karte/SATA (sollte gehen, nicht getestet)
- SPI/USB
Ich gehe davon aus, das man das MenĂŒ schon mal fĂŒr einen neuen u-boot angepasst hat!??
-
Das Resize Problem könnt ihr natĂŒrlich ganz einfach lösen, indem ihr die Platte an einen anderen PC hĂ€ngt und mit gparted die Partition vergröĂert. Das ist ja kein Hexenwerk. WĂ€re aber einfach bequemer wenn das Script funktionieren wĂŒrde.
Was fĂŒr "Resize Problem"? Die Partition hat der User nach seinem Gusto zu erzeugen (bewuĂt und abwĂ€gend), nand-sata-install faĂt da nix an. Automatischer Partition-Resize findet nur bei der Ersteinrichtung statt, weil hier davon ausgegangen wird, dass das Image, das zur Build-Zeit auf ein MindestmaĂ geschrumpft wurde, sich auf der ganzen SD-Karte ausbreiten soll und dort eh niemand bereits Partitionen angelegt haben kann.
Wenn man die Installation spĂ€ter irgendwohin mit nand-sata-install transferieren will, dann ĂŒberlegt man sich ja vorher, was passieren soll, bspw. dass man die OS-Partition nur paar GB groĂ macht, weil dahinter Datenpartitionen zu liegen kommen sollen. SelbstverstĂ€ndlich wird nand-sata-install niemals in die bewuĂte Partitionierung, die der User vorgenommen hat, reinfummeln!
-
Eine Installation SPI/NVMe hÀngt sich irgendwann immer auf. Zweimal getestet.
Macht in meinen Augen auch gar keinen Sinn, da der aktuelle u-boot nur von USB booten kann, so weit mir das bekannt ist.
Die SATA-Option macht dann im Moment auch keinen Sinn (SPI/SATA), aus demselben Grund.Was aktuell geht
- SD-Karte/USB
- SD-Karte/NVMe
- SD-Karte/SATA (sollte gehen, nicht getestet)
- SPI/USB
Ich gehe davon aus, das man das MenĂŒ schon mal fĂŒr einen neuen u-boot angepasst hat!??
@FrankM sagte in ROCKPro64 - Armbian nand-sata-install:
Ich gehe davon aus, das man das MenĂŒ schon mal fĂŒr einen neuen u-boot angepasst hat!??
Nö, nand-sata-install ist einfach ein furchtbares StĂŒck Software, was man ja schon an dem beknackten Namen merkt. Das ist ein Quick&Dirty-Skript aus Allwinner A20 Zeiten (drum geht's da um NAND und SATA), das zudem nix installiert sondern Installationen nur transferiert.
Jedes mal, wenn ich an diesen fĂŒrchterlichen Code hingelangt habe, um irgendwas zu fixen oder bspw. NVMe-Support nachzurĂŒsten, hab ich Kopfweh gekriegt. Die einzige Chance, das Ding je in einen besseren Zustand zu bekommen, ist es wegzuschmeiĂen und von vorne zu beginnen und dabei den ganzen Legacy-Quatsch wie NAND-Support ĂŒber Bord zu werfen.
Dann kann man auch eine eindeutige Zielmatrix definieren mit boot-root-Kombinationen, die dann auch hundertpro funktionieren.
-
Was fĂŒr "Resize Problem"? Die Partition hat der User nach seinem Gusto zu erzeugen (bewuĂt und abwĂ€gend), nand-sata-install faĂt da nix an. Automatischer Partition-Resize findet nur bei der Ersteinrichtung statt, weil hier davon ausgegangen wird, dass das Image, das zur Build-Zeit auf ein MindestmaĂ geschrumpft wurde, sich auf der ganzen SD-Karte ausbreiten soll und dort eh niemand bereits Partitionen angelegt haben kann.
Wenn man die Installation spĂ€ter irgendwohin mit nand-sata-install transferieren will, dann ĂŒberlegt man sich ja vorher, was passieren soll, bspw. dass man die OS-Partition nur paar GB groĂ macht, weil dahinter Datenpartitionen zu liegen kommen sollen. SelbstverstĂ€ndlich wird nand-sata-install niemals in die bewuĂte Partitionierung, die der User vorgenommen hat, reinfummeln!
@tkaiser Wenn ich eine Installation auf NVMe mache wird die Rootpartition auf die exakte GröĂe gebracht. Wenn ich das ganze auf eine USB-SSD mache ist die Rootpartition zu klein - siehe oben.
Kein groĂes Problem, ich habe ja den unerfahrenen Usern einen Lösungsansatz prĂ€sentiert.
-
@FrankM sagte in ROCKPro64 - Armbian nand-sata-install:
Ich gehe davon aus, das man das MenĂŒ schon mal fĂŒr einen neuen u-boot angepasst hat!??
Nö, nand-sata-install ist einfach ein furchtbares StĂŒck Software, was man ja schon an dem beknackten Namen merkt. Das ist ein Quick&Dirty-Skript aus Allwinner A20 Zeiten (drum geht's da um NAND und SATA), das zudem nix installiert sondern Installationen nur transferiert.
Jedes mal, wenn ich an diesen fĂŒrchterlichen Code hingelangt habe, um irgendwas zu fixen oder bspw. NVMe-Support nachzurĂŒsten, hab ich Kopfweh gekriegt. Die einzige Chance, das Ding je in einen besseren Zustand zu bekommen, ist es wegzuschmeiĂen und von vorne zu beginnen und dabei den ganzen Legacy-Quatsch wie NAND-Support ĂŒber Bord zu werfen.
Dann kann man auch eine eindeutige Zielmatrix definieren mit boot-root-Kombinationen, die dann auch hundertpro funktionieren.
-
@tkaiser Wenn ich eine Installation auf NVMe mache wird die Rootpartition auf die exakte GröĂe gebracht. Wenn ich das ganze auf eine USB-SSD mache ist die Rootpartition zu klein - siehe oben.
Kein groĂes Problem, ich habe ja den unerfahrenen Usern einen Lösungsansatz prĂ€sentiert.
@FrankM sagte in ROCKPro64 - Armbian nand-sata-install:
@tkaiser Wenn ich eine Installation auf NVMe mache wird die Rootpartition auf die exakte GröĂe gebracht. Wenn ich das ganze auf eine USB-SSD mache ist die Rootpartition zu klein - siehe oben.
Wie schon gesagt. Partitionen werden NICHT angefaĂt, die muĂt Du vorher bzw. selbst erstellen und wenn Du die hier zu klein und da ausreichend anlegst, dann ist das immer noch Deine ganz eigenen Entscheidung.
Automatisch partitioniert wird nur auf eMMC. Bei USB, SATA und NVMe gibt es eine Warnung und Aufruf von gdisk wenn nicht mindestens eine Partition existiert oder es wird halt die erste schon existente genommen.
Das ist nichts, worĂŒber irgendeine Diskussion nötig ist, denn den Code kannst Du ja einsehen: https://github.com/armbian/build/blob/master/packages/bsp/common/usr/sbin/nand-sata-install#L453-L478 (nix Partition erstellen, der gdisk-Aufruf befindet sich eine Funktion drunter
)
-
@tkaiser Irgendwo hatte ich gestern genau das im Armbian-Forum gelesen, das das Script total vermĂŒllt ist. Danke fĂŒr die Info. Wollen wir hoffen, das es jemanden gibt der sich der Sache annimmt.
Du scheinst ja nicht mehr so aktiv da zu sein
@FrankM sagte in ROCKPro64 - Armbian nand-sata-install:
Du scheinst ja nicht mehr so aktiv da zu sein
Naja, ich nutze keine Foren, in denen Moderatoren, die nicht wirklich einen Plan haben, ihre Privilegien miĂbrauchen, um BeitrĂ€ge, die sie nicht ansatzweise verstehen, zu zensieren.
Geschehen am 3.10.2018 im Armbian-Forum und seitdem ist das Forum fĂŒr mich gestorben. Warum soll ich irgendwo Zeugs schreiben, wenn es dann von irgendwem gelöscht oder sonstwie zensiert wird?
-
Was ist nand-sata-install ? Das ist ein Script um Armbian auf einer SATA-HDD, USB-HDD oder NVMe-SSD zu installieren. Heute schau ich mir das mal an, als SD-Version. Das geht auch mit dem SPI-Flash, das folgt spÀter. Auf gehts...
Als erstes setze ich voraus, das es eine Partition auf der NVMe-Platte gibt. Wenn nicht kurz eine erzeugen, ich gehe hier nicht nÀher drauf ein, das Wissen setze ich voraus, ansonsten...
sudo fdisk /dev/nvme0n1
Dann
sudo /usr/sbin/nand-sata-install
Hier kann man auswÀhlen, ob der ROCKPro64 von der SD-Karte oder vom SPI booten soll. Wer jetzt mit SPI nichts anfangen kann, der liest hier mal bitte eben nach. In Kurzform, ein spezieller Speicherbereich auf dem Board, so Àhnlich wie das BIOS in Eurem Rechner.
Platte auswÀhlen
Schöne Warnung
Dateisystem aussuchen, ich habe ext4 gewÀhlt.
Dann fÀngt das Script an zu arbeiten.
Fertig!
Nach dem reboot, schauen wir mal nach, ob es geklappt hat.
frank@rockpro64:~$ df -h Filesystem Size Used Avail Use% Mounted on udev 994M 0 994M 0% /dev tmpfs 200M 3.0M 197M 2% /run /dev/nvme0n1p1 229G 1.2G 216G 1% / 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 tmpfs 996M 4.0K 996M 1% /tmp /dev/mmcblk0p1 15G 1.1G 14G 8% /media/mmcboot /dev/zram0 49M 2.7M 43M 6% /var/log tmpfs 200M 0 200M 0% /run/user/1000
Unter /etc/fstab sieht man, das die Bootpartition der SD-Karte eingehangen ist.
# <file system> <mount point> <type> <options> <dump> <pass> tmpfs /tmp tmpfs defaults,nosuid 0 0 UUID=d586ed3c-f09c-4ef8-b402-13c7ceb007d3 /media/mmcboot ext4 defaults,noatime,nodiratime,commit=600,errors=remount-ro,x-gvfs-hide 0 1 /media/mmcboot/boot /boot none bind 0 0 UUID=a055577c-cf2b-4278-8062-163fcdd5de25 / ext4 defaults,noatime,nodiratime,commit=600,errors=remount-ro,x-gvfs-hide 0 1
Das sieht doch sehr schön aus. FĂŒr Einsteiger eine tolle Sache, aber auch fĂŒr erfahrene Benutzer, die sind ja meistens Tippfaul
Dran denken, Armbian ist noch in einem sehr frĂŒhen Stadium. Nicht unbedingt zu empfehlen fĂŒr produktive Sachen. Ich bin mir aber sicher, das das Team das sehr schnell Ă€ndern wird. Und ich freue mich, wenn es eine Alternative gibt, weil von Kamil hört und liest man schon seit Wochen nichts mehr
Weitere Tests mit dem Script folgen...
@FrankM sagte in ROCKPro64 - Armbian nand-sata-install:
sudo fdisk /dev/nvme0n1
WĂŒrde ich durch gdisk ersetzen, einfach weil es fast 2019 ist und gdisk das modernere Ding ist, das nicht mehr auf so Schwachsinn wie den MBR und das kranke CHS-Adressing aufsetzt sondern GPT nutzt und sich angeblich auch auf NVMe SSDs ums korrekte Partition Aligment kĂŒmmert (das fĂŒr sowohl Performance als auch bzgl. vorzeitiger Abnudelung von Flash-Speicher eminent wichtig ist).
fdisk war toll im letzten Jahrhundert, als wir noch nix anderes hatten. Heute wĂŒrde ich immer zum Nachfolger greifen (gdisk heiĂt ausgeschrieben GPT fdisk).
-
@FrankM sagte in ROCKPro64 - Armbian nand-sata-install:
Du scheinst ja nicht mehr so aktiv da zu sein
Naja, ich nutze keine Foren, in denen Moderatoren, die nicht wirklich einen Plan haben, ihre Privilegien miĂbrauchen, um BeitrĂ€ge, die sie nicht ansatzweise verstehen, zu zensieren.
Geschehen am 3.10.2018 im Armbian-Forum und seitdem ist das Forum fĂŒr mich gestorben. Warum soll ich irgendwo Zeugs schreiben, wenn es dann von irgendwem gelöscht oder sonstwie zensiert wird?
@tkaiser Ich habe auch jahrelang ein groĂes Forum betreut und weiĂ sehr gut wie viel manche Menschen alleine zwischen den Zeilen lesen können, obwohl da gar nichts steht
Aber sehr schade fĂŒr Armbian. Aber hier kannst du ja gerne den ein oder andern Tipp dalassen. Einer steht ja schon hier. Danke!
-
@FrankM sagte in ROCKPro64 - Armbian nand-sata-install:
sudo fdisk /dev/nvme0n1
WĂŒrde ich durch gdisk ersetzen, einfach weil es fast 2019 ist und gdisk das modernere Ding ist, das nicht mehr auf so Schwachsinn wie den MBR und das kranke CHS-Adressing aufsetzt sondern GPT nutzt und sich angeblich auch auf NVMe SSDs ums korrekte Partition Aligment kĂŒmmert (das fĂŒr sowohl Performance als auch bzgl. vorzeitiger Abnudelung von Flash-Speicher eminent wichtig ist).
fdisk war toll im letzten Jahrhundert, als wir noch nix anderes hatten. Heute wĂŒrde ich immer zum Nachfolger greifen (gdisk heiĂt ausgeschrieben GPT fdisk).
-
Ich habe heute, nachdem es einige Updates von Armbian gab, mal nachgeschaut ob ein spezieller Fehler verschwunden ist.
Und zwar geht es um das Resizen der Partion nachdem wir Armbian auf eine USB-HDD (USB3) installiert haben.Ich setze dafĂŒr folgendes System ein.
Hardware
- ROCKPro64v2.0 4GB RAM
- SanDisk 240GB 2,5 Zoll HDD (nix tolles)
Software
Welcome to ARMBIAN 5.67.181217 nightly Debian GNU/Linux 9 (stretch) 4.4.167-rockchip64
Was sehe ich nach dem Reboot?
root@rockpro64:~# df -h Filesystem Size Used Avail Use% Mounted on udev 1.9G 0 1.9G 0% /dev tmpfs 388M 5.3M 383M 2% /run /dev/sda1 220G 1.3G 207G 1% / tmpfs 1.9G 0 1.9G 0% /dev/shm tmpfs 5.0M 4.0K 5.0M 1% /run/lock tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup tmpfs 1.9G 4.0K 1.9G 1% /tmp /dev/mmcblk0p1 58G 1.3G 57G 3% /media/mmcboot /dev/zram0 49M 3.0M 43M 7% /var/log tmpfs 388M 0 388M 0% /run/user/0
Korrekt die GröĂe angepasst!
Schnell mal den USB3 testen
root@rockpro64:~# sudo dd if=/dev/zero of=sd.img bs=1M count=4096 conv=fdatasync 4096+0 records in 4096+0 records out 4294967296 bytes (4.3 GB, 4.0 GiB) copied, 38.0723 s, 113 MB/s
Der Adapter
root@rockpro64:~# lsusb -vvv Bus 004 Device 002: ID 2109:0715 VIA Labs, Inc. Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 3.10 bDeviceClass 0 (Defined at Interface level) bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 9 idVendor 0x2109 VIA Labs, Inc. idProduct 0x0715 bcdDevice 1.31 iManufacturer 1 VLI Manufacture String iProduct 2 VLI Product String iSerial 3 000000123ADA bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 121 bNumInterfaces 1 bConfigurationValue 1 iConfiguration 0 bmAttributes 0x80 (Bus Powered) MaxPower 224mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 2 bInterfaceClass 8 Mass Storage bInterfaceSubClass 6 SCSI bInterfaceProtocol 80 Bulk-Only iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x81 EP 1 IN bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0400 1x 1024 bytes bInterval 0 bMaxBurst 15 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x02 EP 2 OUT bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0400 1x 1024 bytes bInterval 0 bMaxBurst 15 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 1 bNumEndpoints 4 bInterfaceClass 8 Mass Storage bInterfaceSubClass 6 SCSI bInterfaceProtocol 98 iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x04 EP 4 OUT bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0400 1x 1024 bytes bInterval 0 bMaxBurst 0 Command pipe (0x01) Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x85 EP 5 IN bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0400 1x 1024 bytes bInterval 0 bMaxBurst 15 MaxStreams 32 Data-in pipe (0x03) Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x06 EP 6 OUT bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0400 1x 1024 bytes bInterval 0 bMaxBurst 15 MaxStreams 32 Data-out pipe (0x04) Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x87 EP 7 IN bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0400 1x 1024 bytes bInterval 0 bMaxBurst 0 MaxStreams 32 Status pipe (0x02) Binary Object Store Descriptor: bLength 5 bDescriptorType 15 wTotalLength 70 bNumDeviceCaps 4 FIXME: alloc bigger buffer for device capability descriptors Device Status: 0x0000 (Bus Powered)
Ein lÀstiger Fehler weniger.