Yeah, genau das worauf ich auch warte.
Wenn ich das richtig mitbekommen habe, könnte das Kamil's nächster Punkt auf seiner Liste sein.
@FrankM :
Leider werden die Ergebnisse noch etwas dauern. Das Raid1 wurde problemlos erstellt, allerdings ist das System nach einem Neustart nicht mehr administrierbar. Siehe https://forum.frank-mankel.org/topic/445/emmc-boot-stuck-after-reboot .
Grüße,
Florian
EDIT:
Das System ist wieder administrierbar (siehe verlinkten Thread).
Als Stabilitätstest werden jetzt per RSync 3.8TB Daten aufs SW-Raid1 kopiert.
Mal schauen wie die Sata Karte sich macht und was dmesg sagt.
Ich werde berichten.
EDIT2:
Der Stabilitätstest ist durch. Die 3.8TB Daten wurde ohne Fehlermeldungen in dmesg kopiert.
Speedtest:
SW-RAID1 (2xWD-RED 6TB):
dd:
pi@rockpro64:/srv/dev-disk-by-label-Raid1Storage$ sudo dd if=/dev/zero of=sd77.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.6309 s, 111 MB/s
iozone:
pi@rockpro64:/srv/dev-disk-by-label-Raid1Storage$ 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: Wed Jan 30 19:53:19 2019
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 25464 36685 50427 49394 888 1729
102400 16 40165 58097 68316 91524 3412 6889
102400 512 95485 99343 107161 131298 52080 78677
102400 1024 81958 91971 104137 128435 73100 80979
102400 16384 89566 102283 102792 140921 144198 100731
iozone test complete.
SSD1 (Kingston SSDNow 500GB)
dd:
pi@rockpro64:/srv/dev-disk-by-label-Export$ sudo dd if=/dev/zero of=sd77.img bs=1M count=4096 conv=fdatasync 4096+0 records in
4096+0 records out
4294967296 bytes (4.3 GB, 4.0 GiB) copied, 16.2036 s, 265 MB/s
iozone:
pi@rockpro64:/srv/dev-disk-by-label-Export$ 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: Wed Jan 30 20:09:46 2019
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 45141 66137 69723 70946 21840 63277
102400 16 136172 140168 154485 183570 55734 146870
102400 512 388396 361469 298032 306411 272152 360291
102400 1024 395404 379891 336627 335560 326960 387305
102400 16384 150878 170563 133750 147378 116889 484788
iozone test complete.
SSD2 (Samsung SSD850 500GB):
dd:
pi@rockpro64:/srv/dev-disk-by-label-SSD850$ sudo dd if=/dev/zero of=sd77.img bs=1M count=4096 conv=fdatasync 4096+0 records in
4096+0 records out
4294967296 bytes (4.3 GB, 4.0 GiB) copied, 13.6532 s, 315 MB/s
iozone:
pi@rockpro64:/srv/dev-disk-by-label-SSD850$ 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: Wed Jan 30 20:13:46 2019
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 40543 70208 73986 73104 30564 68626
102400 16 118034 156574 173566 190123 91171 156537
102400 512 393457 364015 360967 355865 332180 359108
102400 1024 410187 393582 401007 391708 368777 401934
102400 16384 414139 486653 484318 487278 483865 479006
iozone test complete.
Während der Tests wurden keinerlei Fehlermeldungen in dmesg erzeugt.
Grüße.
Leider sind beim Stress Testen des Controllers (kopieren von 500GB vom SW-RAID1 parallel auf beide SSDs)
wiederholt folgende Fehler in dmesg aufgetaucht:
[177554.379675] ata3.00: exception Emask 0x0 SAct 0x1f000000 SErr 0x0 action 0x6 frozen
[177554.382198] ata3.00: failed command: WRITE FPDMA QUEUED
[177554.384513] ata3.00: cmd 61/08:c0:00:09:80/00:00:16:00:00/40 tag 24 ncq dma 4096 out
res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout)
[177554.389434] ata3.00: status: { DRDY }
[177554.391423] ata3.00: failed command: WRITE FPDMA QUEUED
[177554.393559] ata3.00: cmd 61/10:c8:10:09:81/00:00:16:00:00/40 tag 25 ncq dma 8192 out
res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout)
[177554.398530] ata3.00: status: { DRDY }
[177554.400704] ata3.00: failed command: WRITE FPDMA QUEUED
[177554.402878] ata3.00: cmd 61/08:d0:38:45:86/00:00:16:00:00/40 tag 26 ncq dma 4096 out
res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout)
[177554.407762] ata3.00: status: { DRDY }
[177554.409759] ata3.00: failed command: WRITE FPDMA QUEUED
[177554.411909] ata3.00: cmd 61/08:d8:b8:08:00/00:00:00:00:00/40 tag 27 ncq dma 4096 out
res 40/00:00:00:4f:c2/00:00:00:00:00/00 Emask 0x4 (timeout)
[177554.416582] ata3.00: status: { DRDY }
[177554.418559] ata3.00: failed command: WRITE FPDMA QUEUED
[177554.420735] ata3.00: cmd 61/28:e0:38:08:00/00:00:0b:00:00/40 tag 28 ncq dma 20480 out
res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout)
[177554.425796] ata3.00: status: { DRDY }
[177554.428043] ata3: hard resetting link
[177554.748386] ata3: SATA link up 6.0 Gbps (SStatus 133 SControl 300)
[177554.752956] ata3.00: configured for UDMA/133
[177554.755160] ata3: EH complete
[177677.262098] ata3.00: NCQ disabled due to excessive errors
Der Kopierprozess auf die jeweilige SSD welche dann resetet stockt dann einige Sekunden und wird dann fortgesetzt. Dies passiert bisher nur bei den SSDs und nicht parallel.
Die Lesegeschwindigkeit vom RAID1 sind meiner Meinung nach gut und begrenzt natürlich die Schreibgeschwindigkeiten auf die SSDs:
avg-cpu: %user %nice %system %iowait %steal %idle
0.47 0.00 27.39 26.88 0.00 45.26
Device: tps MB_read/s MB_wrtn/s MB_read MB_wrtn
mtdblock0 0.00 0.00 0.00 0 0
mtdblock1 0.00 0.00 0.00 0 0
mtdblock2 0.00 0.00 0.00 0 0
mmcblk1 16.40 0.06 0.00 0 0
mmcblk1boot1 0.00 0.00 0.00 0 0
mmcblk1boot0 0.00 0.00 0.00 0 0
mmcblk0 0.00 0.00 0.00 0 0
sdc 197.40 0.00 101.42 0 507
sdd 467.60 116.38 0.01 581 0
sdb 476.60 118.60 0.01 592 0
sda 345.60 0.00 116.34 0 581
md0 942.40 235.03 0.00 1175 0
Viele Grüße
Da ich nun etwas neugierig geworden bin auf die Karte, habe ich mir diese mal besorgt.
Hier mal der Vergleich mit der PCIe-SATA Karte, die von Pine64 vertrieben wird. (Pine64-Karte ist links im Bild)
Die 9230 hat vier SATA-Anschlüsse. Außerdem hat die Karte zwei Stiftleisten, wo man was anschließen kann. Dazu später mehr.
Als erstes teste ich einfach mal meine vorhandene NAS-Installation, also alte Karte raus, die Neue rein und neustarten.
rock64@rockpro64v_2_1:~$ uname -a
Linux rockpro64v_2_1 4.20.0-1083-ayufan-g686e1f1aa461 #ayufan SMP PREEMPT Sun Dec 30 13:42:26 UTC 2018 aarch64 aarch64 aarch64 GNU/Linux
Nachsehen, ob der Controller erkannt wird.
rock64@rockpro64v_2_1:~$ sudo lspci -vvv
00:00.0 PCI bridge: Rockchip Inc. RK3399 PCI Express Root Port Device 0100 (prog-if 00 [Normal decode])
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0
Interrupt: pin A routed to IRQ 255
Bus: primary=00, secondary=01, subordinate=01, sec-latency=0
I/O behind bridge: 00000000-00000fff
Memory behind bridge: fa000000-fa0fffff
Prefetchable memory behind bridge: 00000000-000fffff
Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- <SERR- <PERR-
BridgeCtl: Parity- SERR- NoISA- VGA- MAbort- >Reset- FastB2B-
PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn-
Capabilities: [80] Power Management version 3
Flags: PMEClk- DSI- D1+ D2- AuxCurrent=0mA PME(D0+,D1+,D2-,D3hot+,D3cold-)
Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [90] MSI: Enable- Count=1/1 Maskable+ 64bit+
Address: 0000000000000000 Data: 0000
Masking: 00000000 Pending: 00000000
Capabilities: [b0] MSI-X: Enable- Count=1 Masked-
Vector table: BAR=0 offset=00000000
PBA: BAR=0 offset=00000008
Capabilities: [c0] Express (v2) Root Port (Slot+), MSI 00
DevCap: MaxPayload 256 bytes, PhantFunc 0
ExtTag- RBE+
DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported-
RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop+
MaxPayload 256 bytes, MaxReadReq 512 bytes
DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- TransPend-
LnkCap: Port #0, Speed 5GT/s, Width x4, ASPM L1, Exit Latency L0s <256ns, L1 <8us
ClockPM- Surprise- LLActRep- BwNot+ ASPMOptComp+
LnkCtl: ASPM Disabled; RCB 128 bytes Disabled- CommClk-
ExtSynch- ClockPM- AutWidDis- BWInt+ AutBWInt+
LnkSta: Speed 5GT/s, Width x2, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
SltCap: AttnBtn- PwrCtrl- MRL- AttnInd- PwrInd- HotPlug- Surprise-
Slot #0, PowerLimit 0.000W; Interlock- NoCompl-
SltCtl: Enable: AttnBtn- PwrFlt- MRL- PresDet- CmdCplt- HPIrq- LinkChg-
Control: AttnInd Off, PwrInd Off, Power+ Interlock-
SltSta: Status: AttnBtn- PowerFlt- MRL+ CmdCplt- PresDet- Interlock-
Changed: MRL- PresDet- LinkState-
RootCtl: ErrCorrectable- ErrNon-Fatal- ErrFatal- PMEIntEna- CRSVisible-
RootCap: CRSVisible-
RootSta: PME ReqID 0000, PMEStatus- PMEPending-
DevCap2: Completion Timeout: Range B, TimeoutDis+, LTR+, OBFF Via message ARIFwd+
DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-, LTR-, OBFF Disabled ARIFwd-
LnkCtl2: Target Link Speed: 5GT/s, EnterCompliance- SpeedDis-
Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
Compliance De-emphasis: -6dB
LnkSta2: Current De-emphasis Level: -6dB, EqualizationComplete-, EqualizationPhase1-
EqualizationPhase2-, EqualizationPhase3-, LinkEqualizationRequest-
Capabilities: [100 v2] Advanced Error Reporting
UESta: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
UEMsk: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
UESvrt: DLP+ SDES+ TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-
CESta: RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr-
CEMsk: RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+
AERCap: First Error Pointer: 00, GenCap+ CGenEn- ChkCap+ ChkEn-
Capabilities: [274 v1] Transaction Processing Hints
Interrupt vector mode supported
Device specific mode supported
Steering table in TPH capability structure
01:00.0 SATA controller: Marvell Technology Group Ltd. 88SE9230 PCIe SATA 6Gb/s Controller (rev 11) (prog-if 01 [AHCI 1.0])
Subsystem: Marvell Technology Group Ltd. 88SE9230 PCIe SATA 6Gb/s Controller
Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Interrupt: pin A routed to IRQ 230
Region 0: I/O ports at 0000
Region 1: I/O ports at 0000
Region 2: I/O ports at 0000
Region 3: I/O ports at 0000
Region 4: I/O ports at 0000
Region 5: Memory at fa010000 (32-bit, non-prefetchable) [size=2K]
Expansion ROM at fa000000 [disabled] [size=64K]
Capabilities: [40] Power Management version 3
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot+,D3cold-)
Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit-
Address: fee30040 Data: 0000
Capabilities: [70] Express (v2) Legacy Endpoint, MSI 00
DevCap: MaxPayload 512 bytes, PhantFunc 0, Latency L0s <1us, L1 <8us
ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset-
DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported-
RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop-
MaxPayload 256 bytes, MaxReadReq 512 bytes
DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- TransPend-
LnkCap: Port #0, Speed 5GT/s, Width x2, ASPM L0s L1, Exit Latency L0s <512ns, L1 <64us
ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp-
LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- CommClk-
ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
LnkSta: Speed 5GT/s, Width x2, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
DevCap2: Completion Timeout: Not Supported, TimeoutDis+, LTR-, OBFF Not Supported
DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-, LTR-, OBFF Disabled
LnkCtl2: Target Link Speed: 5GT/s, EnterCompliance- SpeedDis-
Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
Compliance De-emphasis: -6dB
LnkSta2: Current De-emphasis Level: -6dB, EqualizationComplete-, EqualizationPhase1-
EqualizationPhase2-, EqualizationPhase3-, LinkEqualizationRequest-
Capabilities: [e0] SATA HBA v0.0 BAR4 Offset=00000004
Capabilities: [100 v1] Advanced Error Reporting
UESta: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
UEMsk: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
UESvrt: DLP+ SDES+ TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-
CESta: RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr-
CEMsk: RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+
AERCap: First Error Pointer: 00, GenCap- CGenEn- ChkCap- ChkEn-
Ok, der Controller wird einwandfrei erkannt. Eine Suche nach den Festplatten war dann leider erfolglos. Diese wurden nicht erkannt. Aber dafür gibt es ja im Internet viele Menschen, die an einer gemeinsamen Sache arbeiten und @flockeee hat die Lösung ja in diesem Thread schon gepostet. Danke dafür!!
Wir erstellen in /etc/udev/rules.d eine Datei mit dem Namen 99-9230.rules. Die 99 besagt aus, das diese Datei als letztes ausgeführt wird (wenn ich mich nicht irre), das 9230 kann man frei wählen.
cd /etc/udev/rules.d
sudo nano 99-9230.rules
Der Inhalt der Datei
ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1b4b", ATTR{device}=="0x9230", RUN+="/bin/bash -c 'echo %k > /sys/bus/pci/drivers/ahci/bind'"
Dazu kann ich leider nicht so viel schreiben. Zum Nachlesen -> udev
Danach Neustarten!
Danach findet man die HDD's
rock64@rockpro64v_2_1:/etc/udev/rules.d$ lsblk -S
NAME HCTL TYPE VENDOR MODEL REV TRAN
sda 0:0:0:0 disk ATA ST2000LM015-2E81 SDM1 sata
sdb 2:0:0:0 disk ATA ST2000LM015-2E81 SDM1 sata
Mit fdisk -l
Disk /dev/sda: 1,8 TiB, 2000398934016 bytes, 3907029168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: ECA86F86-787E-483F-BD79-DC980BCA9447
Device Start End Sectors Size Type
/dev/sda1 2048 3907029134 3907027087 1,8T Linux filesystem
Disk /dev/sdb: 1,8 TiB, 2000398934016 bytes, 3907029168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: 1978A3C9-E914-41FB-8788-5518DBB77B2F
Device Start End Sectors Size Type
/dev/sdb1 2048 3907029134 3907027087 1,8T Linux filesystem
Ok, alles da. Dann rufe ich mal mein Script auf und hänge die verschlüsselten Platten als RAID1 ein.
Fertig!
rock64@rockpro64v_2_1:~$ df -h
Filesystem Size Used Avail Use% Mounted on
udev 980M 0 980M 0% /dev
tmpfs 199M 640K 198M 1% /run
/dev/mmcblk0p7 29G 15G 13G 55% /
tmpfs 992M 0 992M 0% /dev/shm
tmpfs 5,0M 0 5,0M 0% /run/lock
tmpfs 992M 0 992M 0% /sys/fs/cgroup
/dev/mmcblk0p6 112M 4,0K 112M 1% /boot/efi
tmpfs 199M 0 199M 0% /run/user/1000
/dev/md0 1,8T 645G 1,1T 38% /mnt/raid
rock64@rockpro64v_2_1:~$ cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md0 : active raid1 dm-1[2] dm-0[1]
1953379392 blocks super 1.2 [2/2] [UU]
bitmap: 0/15 pages [0KB], 65536KB chunk
unused devices: <none>
So weit sieht alles gut aus, dann machen wir mal was Stress!
Die blaue LED ist dauernd an und fängt bei Schreib-/Lesezugriffen an zu blinken. Was der andere Anschluss macht, habe ich noch nicht raus. Beide Pfostenstecker sind für PWR LED. Siehe -> Klick Ich habe nur an einem Pfostenstecker die LED zum Leuchten bekommen (siehe Bild).
Danke @flockeee , ich halte Dich auf dem Laufenden was die Stabilität angeht. Ich hoffe, das ich jetzt wieder ein stabiles NAS habe. Ich bin gespannt
Zum Schluß noch die Ausgabe von dmesg
Erster Stresstest erfolgreich.
rock64@rockpro64v_2_1:~$ uname -a
Linux rockpro64v_2_1 4.20.0-1083-ayufan-g686e1f1aa461 #ayufan SMP PREEMPT Sun Dec 30 13:42:26 UTC 2018 aarch64 aarch64 aarch64 GNU/Linux
rock64@rockpro64v_2_1:/media$ 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, 44,7297 s, 96,0 MB/s
Die HDD hat ein btrfs Filesystem
rock64@rockpro64v_2_1:~$ sudo blkid /dev/sdc1
/dev/sdc1: LABEL="1TB" UUID="99950e1f-5637-4cb8-9985-e9deea6c8f96" UUID_SUB="48ae2955-33d1-46a6-9067-afd65a04de2b" TYPE="btrfs" PARTUUID="b9aa5cfb-01"
Die Aufgabe ist es, mein RAID1 mittels Restic auf die angeschlossene USB HDD zu sichern. Also etwas Stress für den ROCKPro64, da die Daten alle verschlüsselt werden. Und lesender Stress auf das RAID1.
rock64@rockpro64v_2_1:~$ sudo ./backup.sh
open repository
repository bad662c2 opened successfully, password is correct
created new cache in /home/rock64/.cache/restic
found 1 old cache directories in /home/rock64/.cache/restic, pass --cleanup-cache to remove them
Files: 558914 new, 0 changed, 0 unmodified
Dirs: 1 new, 0 changed, 0 unmodified
Added to the repo: 285.754 GiB
processed 558914 files, 648.243 GiB in 3:17:41
snapshot 19c4ea75 saved
Der Lesetest war erfolgreich, keine Probleme festgestellt. Das die HDD am USB3 ein btrfs Filesystem hat ist Zufall, das ist mir erst hinterher aufgefallen. Meine früheren Erfahrungen mit btrfs auf einem ROCKPro64 waren nicht so positiv. Produktiv würde ich eher ext4 einsetzen.
Als nächstes brauchen wir mal richtig Stress beim Schreiben auf das RAID1
Alles so wie oben, nun der Schreibtest.
Wir ziehen mal von einem anderen NAS ein paar Daten
sshpass -p "password" rsync -vraze 'ssh' --exclude-from "excludes.txt" root@192.168.3.243:/mnt/nas/ /mnt/raid/write_test/
sent 909,539 bytes received 208,162,189,243 bytes 20,487,485.73 bytes/sec
total size is 222,765,913,987 speedup is 1.07
Kein besonderer Eintrag, alles sauber.
Scheint so, als wenn man mit dieser PCIe SATA-Karte die bessere Lösung, zu der preiswerten Pine64-Karte hat. Evt. sind auch nur die Treiber der Marvell Karte besser. Im Moment, von mir eine Kaufempfehlung!
@flockeee sagte in SATA Karte Marvell 88SE9230 Chipsatz:
Leider sind beim Stress Testen des Controllers (kopieren von 500GB vom SW-RAID1 parallel auf beide SSDs)
wiederholt folgende Fehler in dmesg aufgetaucht:[177554.379675] ata3.00: exception Emask 0x0 SAct 0x1f000000 SErr 0x0 action 0x6 frozen [177554.382198] ata3.00: failed command: WRITE FPDMA QUEUED [177554.384513] ata3.00: cmd 61/08:c0:00:09:80/00:00:16:00:00/40 tag 24 ncq dma 4096 out res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout) [177554.389434] ata3.00: status: { DRDY } [177554.391423] ata3.00: failed command: WRITE FPDMA QUEUED [177554.393559] ata3.00: cmd 61/10:c8:10:09:81/00:00:16:00:00/40 tag 25 ncq dma 8192 out res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout) [177554.398530] ata3.00: status: { DRDY } [177554.400704] ata3.00: failed command: WRITE FPDMA QUEUED [177554.402878] ata3.00: cmd 61/08:d0:38:45:86/00:00:16:00:00/40 tag 26 ncq dma 4096 out res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout) [177554.407762] ata3.00: status: { DRDY } [177554.409759] ata3.00: failed command: WRITE FPDMA QUEUED [177554.411909] ata3.00: cmd 61/08:d8:b8:08:00/00:00:00:00:00/40 tag 27 ncq dma 4096 out res 40/00:00:00:4f:c2/00:00:00:00:00/00 Emask 0x4 (timeout) [177554.416582] ata3.00: status: { DRDY } [177554.418559] ata3.00: failed command: WRITE FPDMA QUEUED [177554.420735] ata3.00: cmd 61/28:e0:38:08:00/00:00:0b:00:00/40 tag 28 ncq dma 20480 out res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout) [177554.425796] ata3.00: status: { DRDY } [177554.428043] ata3: hard resetting link [177554.748386] ata3: SATA link up 6.0 Gbps (SStatus 133 SControl 300) [177554.752956] ata3.00: configured for UDMA/133 [177554.755160] ata3: EH complete [177677.262098] ata3.00: NCQ disabled due to excessive errors
Der Kopierprozess auf die jeweilige SSD welche dann resetet stockt dann einige Sekunden und wird dann fortgesetzt. >Dies passiert bisher nur bei den SSDs und nicht parallel.
...
Ich habe oben genannte Probleme mit einem Firmwareupdate* des 88SE9230 in den Griff bekommen. Ein erneuter Stresstest produziert keine der obengenannten Fehlermeldungen mehr bei gleichem Testmuster.
Zum Flashen des Controllers bin ich folgendermaßen vorgegangen:
ACHTUNG: DIESE METHODE BEINHALTET KEIN (FUNKTIONIERENDES) BACKUP DER VORHANDENEN FIRMWARE DES CONTROLLERS! FLASHEN AUF EIGENES RISIKO!
Ich habe zuerst die allerneuste Version 1.0.0.1028 bios + 2.3.0.1078 fw geflasht. Mit dieser Version gab es Fehlermeldungen in dmesg über den controller init und die angeschlossenen Platten wurden nicht angezeigt. Ein Downgrade auf obengenannte Version löste das Problem.
Viele Grüße,
Florian
Als kleine Ergänzung.
@flockeee benutzt 4 Festplatten an seiner Karte 2 * HDD (SW-Raid) & 2 * SSD, ich benutze nur 2 * HDD als RAID1. Bei seinem Stresstest werden wohl alle 4 Platten gleichzeitig genutzt, was wohl zu den Fehlern führt mit der alten Firmware Version.
Ich konnte mit meiner Konfiguration, bis jetzt, keine Fehler feststellen.
Danke für den konstruktiven Beitrag. Vielleicht wage ich mich da auch mal ran.
FreeDOS -> http://www.freedos.org/download/
Kurz als Hinweis, Kernel 5.0.0 crasht bei mir.
Das oben geschriebene muss ich revidieren. Heute nochmal in Ruhe getestet - funktioniert!!
rock64@rp64v_2_1_NAS:~$ uname -a
Linux rp64v_2_1_NAS 5.0.0-1101-ayufan-g41eeb7cd789e #ayufan SMP PREEMPT Fri Mar 8 22:14:59 UTC 2019 aarch64 aarch64 aarch64 GNU/Linux
Mal kurz was an Infos vom heutigen Tag aus dem IRC.
Ein User(Linu) hatte dort massive Probleme mit der SATA-Karte, konnte aber schon nicht vernünftig booten. 4.4er Kernel ging, alle anderen Kernel verursachten Probleme.
Der User bootete von der eMMC-Karte! Das Bootproblem lies sich mit folgendem Befehl beheben
mmc_cmdqueue=off
Danke an den User nuumio für den Tipp.
Die SATA-Karte funktioniert aber nur mit einem Mainline-Kernel vom Kamil. Nix neues für uns
Und wieder ein glücklicher ROCKPro64 User mit NAS
Heute mal mit dem neuen Release 0.10.x von Kamil testen. u-boot im SPI!
Mit pci=nomsi geht es nicht. Die Karte wird zwar erkannt, aber keine angeschlossenen Laufwerke.
Mit
cd /etc/udev/rules.d
dann
nano 98-sata.rules
und
ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1b4b", ATTR{device}=="0x9230", RUN+="/bin/bash -c 'echo %k > /sys/bus/pci/drivers/ahci/bind'"
kann ich die Platte sehen.
root@rockpro64:~# blkid
/dev/sda1: PARTLABEL="loader1" PARTUUID="37466429-e4a4-495c-b9a1-3f74625a3cae"
/dev/sda2: SEC_TYPE="msdos" LABEL_FATBOOT="boot-efi" LABEL="boot-efi" UUID="ABCD-FC7D" TYPE="vfat" PARTLABEL="boot_efi" PARTUUID="72e36967-4050-4bb3-8f8f-bf6755c38f28"
/dev/sda3: LABEL="linux-boot" UUID="8e289a3e-0f9b-4da1-a147-51e03390637c" TYPE="ext4" PARTLABEL="linux_boot" PARTUUID="fe944fd2-3e42-4202-8a95-656e9bdb4be6"
/dev/sda4: LABEL="linux-root" UUID="3e9513c6-dfd1-48c9-bee2-04bb5a153056" TYPE="ext4" PARTLABEL="linux_root" PARTUUID="d2d1dd88-030d-4f74-998f-7c9ce7d385d0"
/dev/sdb1: PARTLABEL="loader1" PARTUUID="615d1c43-7774-43eb-b31f-b586ed7c8af4"
/dev/sdb2: SEC_TYPE="msdos" LABEL_FATBOOT="boot-efi" LABEL="boot-efi" UUID="E616-9C0A" TYPE="vfat" PARTLABEL="boot_efi" PARTUUID="8b62024d-dd94-4022-a43f-dc91766cd611"
/dev/sdb3: LABEL="linux-boot" UUID="d1a97607-270c-494b-a360-9231b52fd7ef" TYPE="ext4" PARTLABEL="linux_boot" PARTUUID="e1c825e9-60f1-479d-9ab4-0a853a5da9f2"
/dev/sdb4: LABEL="linux-root" UUID="1ada358f-1688-4557-ae4e-2942db99a0ff" TYPE="ext4" PARTLABEL="linux_root" PARTUUID="e07545eb-3cf2-4814-8985-728554cd20ae"
Aber von der Karte wird nicht gebootet
Ok, es gibt noch eine andere Möglichkeit.
Kamil hat mir noch ein wenig geholfen. Mit folgender Änderung werden die Platten gefunden.
hmm, I had to add
/etc/default/extlinux
:libahci.skip_host_reset=1
Sieht dann so aus.
# Configure timeout to choose the kernel
# TIMEOUT="10"
# Configure default kernel to boot: check all kernels in `/boot/extlinux/extlinux.conf`
# DEFAULT="kernel-4.4.126-rockchip-ayufan-253"
# Configure additional kernel configuration options
APPEND="$APPEND root=LABEL=linux-root rootwait rootfstype=ext4 libahci.skip_host_reset=1"
Danach waren die Platten zu sehen.
root@rockpro64:/tmp/etc/default# blkid
/dev/sda2: SEC_TYPE="msdos" LABEL_FATBOOT="boot-efi" LABEL="boot-efi" UUID="ABCD-FC7D" TYPE="vfat" PARTLABEL="boot_efi" PARTUUID="72e36967-4050-4bb3-8f8f-bf6755c38f28"
/dev/sda3: LABEL="linux-boot" UUID="8e289a3e-0f9b-4da1-a147-51e03390637c" TYPE="ext4" PARTLABEL="linux_boot" PARTUUID="fe944fd2-3e42-4202-8a95-656e9bdb4be6"
/dev/sda4: LABEL="linux-root" UUID="3e9513c6-dfd1-48c9-bee2-04bb5a153056" TYPE="ext4" PARTLABEL="linux_root" PARTUUID="d2d1dd88-030d-4f74-998f-7c9ce7d385d0"
/dev/sdb2: SEC_TYPE="msdos" LABEL_FATBOOT="boot-efi" LABEL="boot-efi" UUID="56C9-F745" TYPE="vfat" PARTLABEL="boot_efi" PARTUUID="919c8f73-5f25-4a01-9072-3a5ed9a88ff2"
/dev/sdb3: LABEL="linux-boot" UUID="23c19647-f4a1-4197-a877-f1bb03456bef" TYPE="ext4" PARTLABEL="linux_boot" PARTUUID="093d0cc0-d122-4dce-aeb5-4e266b4b7d9d"
/dev/sdb4: LABEL="linux-root" UUID="f1c74331-8318-4ee8-a4f7-f0c169fb9944" TYPE="ext4" PARTLABEL="linux_root" PARTUUID="964ab457-58d5-40c4-bb02-dfd37bd2f0da"
/dev/sda1: PARTLABEL="loader1" PARTUUID="37466429-e4a4-495c-b9a1-3f74625a3cae"
/dev/sdb1: PARTLABEL="loader1" PARTUUID="33f692b3-54cb-4a37-b602-21a2baf32fa0"
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