Skip to content

NVMe-Platte einrichten

ROCKPro64
  • Du hast dir eine NVMe SSD für die PCIe-Karte gekauft? Hier steht wie du sie einrichtest.

    Wir gehen von einem fabrikneuen Zustand aus.

    Als erstes überprüfen wir mal, ob das System sie erkennt.

    rock64@rockpro64v2_0:/$ fdisk -l
    fdisk: cannot open /dev/ram0: Permission denied
    fdisk: cannot open /dev/mtdblock0: Permission denied
    fdisk: cannot open /dev/mtdblock1: Permission denied
    fdisk: cannot open /dev/mtdblock2: Permission denied
    fdisk: cannot open /dev/mmcblk0: Permission denied
    fdisk: cannot open /dev/nvme0n1: Permission denied
    fdisk: cannot open /dev/zram0: Permission denied
    fdisk: cannot open /dev/zram1: Permission denied
    fdisk: cannot open /dev/zram2: Permission denied
    fdisk: cannot open /dev/zram3: Permission denied
    fdisk: cannot open /dev/zram4: Permission denied
    fdisk: cannot open /dev/zram5: Permission denied
    

    Gut, die wichtige Zeile ist vorhanden.

    fdisk: cannot open /dev/nvme0n1: Permission denied
    

    Was wir wissen müssen, ist welches Device wir ansprechen wollen. Das Device heißt so

    /dev/nvme0n1
    

    Die SSD kommt standardmäßig ohne Partitionen. Das ist das erste was wir einrichten müssen. Dazu benutzt man das Programm fdisk

    sudo fdisk /dev/nvme0n1
    

    Ausgabe

    rock64@rockpro64v2_0:/$ sudo fdisk /dev/nvme0n1
    
    Welcome to fdisk (util-linux 2.31.1).
    Changes will remain in memory only, until you decide to write them.
    Be careful before using the write command.
       
    Command (m for help): p
    Disk /dev/nvme0n1: 232,9 GiB, 250059350016 bytes, 488397168 sectors
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disklabel type: dos
    Disk identifier: 0x10748984
    
    Command (m for help): 
    

    Nun müssen wir eine neue Partition einrichten.

    sudo fdisk /dev/nvme0n1
    Welcome to fdisk (util-linux 2.25.2).
    Changes will remain in memory only, until you decide to write them.
    Be careful before using the write command.
    
    Command (m for help): n
    Partition type
    p primary (0 primary, 0 extended, 4 free)
    e extended (container for logical partitions)
    Select (default p): p
    Partition number (1-4, default 1): 1
    First sector (2048-250069679, default 2048): 2048
    Last sector, +sectors or +size{K,M,G,T,P} (2048-250069679, default 250069679): 250069679
    Created a new partition 1 of type 'Linux' and of size 119,2 GiB.
    
    Command (m for help): w
    The partition table has been altered.
    Calling ioctl() to re-read partition table.
    Syncing disks.
    

    Die Daten oben sind nicht komplett richtig, habe das kopiert. Die Schritte sind aber immer gleich.

    Nun haben wir eine Partition auf der Platte eingerichtet. Damit Linux da aber Daten speichern kann, benötigt es ein Filesystem. Es gibt viele verschiedene, wir bleiben hier aber beim aktuellen Linux Standard ext4.

     rock64@rockpro64v2_0:/$ mkfs.ext4 /dev/nvme0n1
    mke2fs 1.42.12 (29-Aug-2014)
    /dev/nvme0n1 hat ein ext4-Dateisystem
    zuletzt auf / auf Sun Dec 21 09:09:08 2014
    eingehängtTrotzdem fortfahren? (j,n) j
    Geräteblöcke werden verworfen: erledigt
    Ein Dateisystems mit 31258454 (4k) Blöcken und 7815168 Inodes wird erzeugt.
    UUID des Dateisystems: bc260a48-eb4d-4491-bdbc-0b8758eeacc9
    Superblock-Sicherungskopien gespeichert in den Blöcken:
    32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
    4096000, 7962624, 11239424, 20480000, 23887872
    beim Anfordern von Speicher für die Gruppentabellen: erledigt
    Inode-Tabellen werden geschrieben: erledigt
    Das Journal (32768 Blöcke) wird angelegt: erledgt
    Die Superblöcke und die Informationen über die Dateisystemnutzung werden
    geschrieben: erledigt
    

    Die Daten oben sind nicht komplett richtig, habe das kopiert. Die Schritte sind aber immer gleich.

    Damit wäre die Platte jetzt komplett eingerichtet. Um in Linux damit arbeiten zu können, muss das entsprechende Laufwerk gemountet werden, das macht man mit

     sudo mount /dev/nvme0n1 /mnt
    

    Danach könnt ihr Eure Daten auf /mnt ablegen und sie liegen auf der SSD. Fertig!

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

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

    Angeheftet ROCKPro64
    7
    0 Stimmen
    7 Beiträge
    683 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.

  • Zwischenfazit April 2019

    Angeheftet ROCKPro64
    1
    1 Stimmen
    1 Beiträge
    540 Aufrufe
    Niemand hat geantwortet
  • 0 Stimmen
    2 Beiträge
    1k Aufrufe
    FrankMF

    This repo contains the tn40xx Linux driver for 10Gbit NICs based on the TN4010 MAC from Tehuti Networks.

    This driver enables the following 10Gb SFP+ NICs:

    D-Link DXE-810S
    Edimax EN-9320SFP+
    StarTech PEX10000SFP
    Synology E10G15-F1
    ... as well as the following 10GBase-T/NBASE-T NICs:

    D-Link DXE-810T
    Edimax EN-9320TX-E
    EXSYS EX-6061-2
    Intellinet 507950
    StarTech ST10GSPEXNB

    Quelle: https://github.com/ayufan-rock64/tn40xx-driver/tree/master

  • Booten von der NVMe Platte

    ROCKPro64
    16
    0 Stimmen
    16 Beiträge
    7k Aufrufe
    S

    Für dies Kernal: Linux rockpro64 4.4.167-1213-rockchip-ayufan-g34ae07687fce #1 SMP Tue Jun 18 20:44:49 UTC 2019 aarch64 GNU/Linux

    Booten von der NVMe Platte nicht möglich.

    Ich folgte die folgende Schritte. Leider funktioniert es nicht. Es gibt einen Fehler in Boot.

    Ohne RAID oder LVM config.

    Specs:
    Rockpro64
    Marvel PCIe 88se9230 karte
    SANDISK SSD 120 GB

  • USB 3.0 - SATA Adapter

    Hardware
    2
    0 Stimmen
    2 Beiträge
    728 Aufrufe
    FrankMF

    Heute das Ganze mal mit einer Samsung 860 Pro mit 256GB. Eingesetztes Filesystem ext4

    rock64@rockpro64v2_1:/mnt$ uname -a Linux rockpro64v2_1 4.4.132-1077-rockchip-ayufan-gbaf35a9343cb #1 SMP Mon Jul 30 14:06:57 UTC 2018 aarch64 aarch64 aarch64 GNU/Linux Speedtest rock64@rockpro64v2_1:/mnt$ sudo iozone -e -I -a -s 100M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2 Iozone: Performance Test of File I/O Version $Revision: 3.429 $ Compiled for 64 bit mode. Build: linux Contributors:William Norcott, Don Capps, Isom Crawford, Kirby Collins Al Slater, Scott Rhine, Mike Wisner, Ken Goss Steve Landherr, Brad Smith, Mark Kelly, Dr. Alain CYR, Randy Dunlap, Mark Montague, Dan Million, Gavin Brebner, Jean-Marc Zucconi, Jeff Blomberg, Benny Halevy, Dave Boone, Erik Habbinga, Kris Strecker, Walter Wong, Joshua Root, Fabrice Bacchella, Zhenghua Xue, Qin Li, Darren Sawyer, Vangel Bojaxhi, Ben England, Vikentsi Lapa. Run began: Tue Jul 31 14:27:17 2018 Include fsync in write timing O_DIRECT feature enabled Auto Mode File size set to 102400 kB Record Size 4 kB Record Size 16 kB Record Size 512 kB Record Size 1024 kB Record Size 16384 kB Command line used: iozone -e -I -a -s 100M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2 Output is in kBytes/sec Time Resolution = 0.000001 seconds. Processor cache size set to 1024 kBytes. Processor cache line size set to 32 bytes. File stride size set to 17 * record size. random random bkwd record stride kB reclen write rewrite read reread read write read rewrite read fwrite frewrite fread freread 102400 4 17896 23350 30390 31362 21611 14611 102400 16 56756 59180 86296 93819 51778 57327 102400 512 201347 221961 220840 222338 210887 230781 102400 1024 253752 273695 263884 266256 250153 273528 102400 16384 351112 356007 366417 372264 368721 356177 iozone test complete. DD Schreiben rock64@rockpro64v2_1:/mnt$ 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, 12.8358 s, 335 MB/s Lesen rock64@rockpro64v2_1:/mnt$ sudo dd if=sd.img of=/dev/null bs=1M count=4096 4096+0 records in 4096+0 records out 4294967296 bytes (4.3 GB, 4.0 GiB) copied, 11.4787 s, 374 MB/s Fazit

    Damit scheint der Adapter ganz gut am USB3.0 zu funktionieren. Die Schreibgeschwindigkeit ist ca. dreimal höher als mit der anderen SSD. 😉

  • Image 0.6.57 - NVMe paar Notizen

    Verschoben Archiv
    1
    0 Stimmen
    1 Beiträge
    642 Aufrufe
    Niemand hat geantwortet