Skip to content

ROCKPro64 - PCIe SATA-Karte mit JMicron JMS585- Chip

Angeheftet Hardware
  • Nachdem ich ja die Tage wieder viel mit dem Marvell Controller zu kämpfen hatte, hatte ich ja einen Tipp vom Kamil bekommen.

    (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

    Da man ja in Zeiten von Corona viel Zeit hat, habe ich mal eine Karte geordert. Um es anderen Usern einfacher zu machen, kommt jetzt hier der Link zum Produkt. Meine Bitte, wenn möglich irgendwo lokal bestellen. Unterstützt Eure Händler vor Ort.

    Die Karte kam dann heute an. Sie war in einer Pappschachtel verpackt, so wie man es kennt. Der Lieferumfang.

    • PCIe SATA Karte
    • 5 SATA-Kabel
    • Low Profil Bracket
    • Treiber-CD
    • Ein Zettel als Bedienungsanleitung

    JMS_585_2.jpg

    Dann mal die Karte in den ROCKPro64, ein frisches Release 0.10.10 auf eine SD-Karte und einschalten. Erst mal sehe ich gar nichts, keine LED und nix. Ohhhh

    Ok, mal nachschauen was los ist.

    Kernel

     root@rockpro64:/mnt/home/rock64# uname -a
     Linux rockpro64 5.6.0-1134-ayufan-g652fb97d87eb #ayufan SMP Thu Apr 9 22:26:01 UTC 2020 aarch64 GNU/Linux
    

    lspci

    root@rockpro64:~# lspci   
     00:00.0 PCI bridge: Fuzhou Rockchip Electronics Co., Ltd RK3399 PCI Express Root Port
     01:00.0 SATA controller: JMicron Technology Corp. Device 0585
    

    Und in lang

    root@rockpro64:~# lspci -vvv
    00:00.0 PCI bridge: Fuzhou Rockchip Electronics Co., Ltd RK3399 PCI Express Root Port (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 229
    	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: 00000000fee30040  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 2.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 2.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: 2.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
    	Kernel driver in use: pcieport
    
    01:00.0 SATA controller: JMicron Technology Corp. Device 0585 (prog-if 01 [AHCI 1.0])
    	Subsystem: JMicron Technology Corp. Device 0000
    	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 230
    	Region 0: I/O ports at <unassigned> [disabled]
    	Region 1: I/O ports at <unassigned> [disabled]
    	Region 2: I/O ports at <unassigned> [disabled]
    	Region 3: I/O ports at <unassigned> [disabled]
    	Region 4: I/O ports at <unassigned> [disabled]
    	Region 5: Memory at fa010000 (32-bit, non-prefetchable) [size=8K]
    	[virtual] Expansion ROM at fa000000 [disabled] [size=64K]
    	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=8/8 Maskable+ 64bit+
    		Address: 00000000fee30040  Data: 0000
    		Masking: 000000e0  Pending: 00000000
    	Capabilities: [c0] Express (v2) Legacy Endpoint, MSI 00
    		DevCap:	MaxPayload 512 bytes, PhantFunc 0, Latency L0s <1us, L1 <1us
    			ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset+
    		DevCtl:	Report errors: Correctable- Non-Fatal- Fatal- Unsupported-
    			RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop+ FLReset-
    			MaxPayload 256 bytes, MaxReadReq 512 bytes
    		DevSta:	CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- TransPend-
    		LnkCap:	Port #0, Speed 8GT/s, Width x2, ASPM not supported, Exit Latency L0s <256ns, L1 <8us
    			ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp+
    		LnkCtl:	ASPM Disabled; RCB 64 bytes Disabled- CommClk-
    			ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
    		LnkSta:	Speed 2.5GT/s, Width x2, TrErr- Train- SlotClk- DLActive- BWMgmt- ABWMgmt-
    		DevCap2: Completion Timeout: Range B, TimeoutDis+, LTR-, OBFF Via message
    		DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-, LTR-, OBFF Disabled
    		LnkCtl2: Target Link Speed: 8GT/s, EnterCompliance- SpeedDis-
    			 Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
    			 Compliance De-emphasis: -6dB
    		LnkSta2: Current De-emphasis Level: -3.5dB, 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: [150 v1] Device Serial Number 00-00-00-00-00-00-00-00
    	Capabilities: [160 v1] Power Budgeting <?>
    	Capabilities: [1b8 v1] Latency Tolerance Reporting
    		Max snoop latency: 0ns
    		Max no snoop latency: 0ns
    	Capabilities: [300 v1] #19
    	Capabilities: [900 v1] L1 PM Substates
    		L1SubCap: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+ L1_PM_Substates+
    			  PortCommonModeRestoreTime=255us PortTPowerOnTime=10us
    		L1SubCtl1: PCI-PM_L1.2- PCI-PM_L1.1- ASPM_L1.2- ASPM_L1.1-
    			   T_CommonMode=0us LTR1.2_Threshold=0ns
    		L1SubCtl2: T_PwrOn=10us
    	Kernel driver in use: ahci
    

    Ok, ich hatte gar keine HDD angesteckt. Also nachholen. Hot Swap, nennt man das so? Einfach angeschlossen. Sieht dann so aus.

    [  215.156237] ata1: SATA link up 6.0 Gbps (SStatus 133 SControl 300)           
    [  215.405186] ata1.00: ATA-10: ST2000LM015-2E8174, SDM1, max UDMA/133          
    [  215.406120] ata1.00: 3907029168 sectors, multi 16: LBA48 NCQ (depth 32), AA  
    [  215.456688] ata1.00: configured for UDMA/133                                 
    [  215.458198] scsi 0:0:0:0: Direct-Access     ATA      ST2000LM015-2E81 SDM1 P5
    [  215.461053] sd 0:0:0:0: Attached scsi generic sg0 type 0                     
    [  215.461287] sd 0:0:0:0: [sda] 3907029168 512-byte logical blocks: (2.00 TB/1)
    [  215.462714] sd 0:0:0:0: [sda] 4096-byte physical blocks                      
    [  215.463359] sd 0:0:0:0: [sda] Write Protect is off                           
    [  215.464010] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doeA
    [  215.614516] GPT:Primary header thinks Alt. header is not at the end of the d.
    [  215.615215] GPT:3906241 != 3907029167                                        
    [  215.615554] GPT:Alternate GPT header not at the end of the disk.             
    [  215.616105] GPT:3906241 != 3907029167                                        
    [  215.616463] GPT: Use GNU Parted to correct GPT errors.                       
    [  215.616955]  sda: sda1 sda2 sda3 sda4                                        
    [  215.618720] sd 0:0:0:0: [sda] Attached SCSI disk  
    

    Und hier ist die Platte.

    root@rockpro64:~# blkid
    /dev/mmcblk1: PTUUID="4d25499d-a0f3-454b-b6fe-8067d944b0b6" PTTYPE="gpt"
    /dev/mmcblk1p1: PARTLABEL="loader1" PARTUUID="33f692b3-54cb-4a37-b602-21a2baf32fa0"
    /dev/mmcblk1p2: 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/mmcblk1p3: LABEL="linux-boot" UUID="23c19647-f4a1-4197-a877-f1bb03456bef" TYPE="ext4" PARTLABEL="linux_boot" PARTUUID="093d0cc0-d122-4dce-aeb5-4e266b4b7d9d"
    /dev/mmcblk1p4: 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="33f692b3-54cb-4a37-b602-21a2baf32fa0"
    /dev/sda2: 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/sda3: LABEL="linux-boot" UUID="23c19647-f4a1-4197-a877-f1bb03456bef" TYPE="ext4" PARTLABEL="linux_boot" PARTUUID="093d0cc0-d122-4dce-aeb5-4e266b4b7d9d"
    /dev/sda4: LABEL="linux-root" UUID="f1c74331-8318-4ee8-a4f7-f0c169fb9944" TYPE="ext4" PARTLABEL="linux_root" PARTUUID="964ab457-58d5-40c4-bb02-dfd37bd2f0da"
    

    Ein erster schneller Schreibtest

    2,5 Zoll HDD 2TB

    root@rockpro64:/tmp/home/rock64# 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, 36.6512 s, 117 MB/s
    

    2,5 Zoll SSD Kingston 30GB

    root@rockpro64:/mnt/home/rock64# 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, 11.5676 s, 371 MB/s
    

    Mehr Tests folgen. Wie? Booten von SATA, Schreibgeschwindigkeit zwischen den Platten usw.

    Bootlog

  • Zwei HDDs angeschlossen.

    • 2,5 Zoll HDD 1,8TB Seagate BarraCuda

    Einmal nach /mnt und einmal nach /tmp gemountet.

    4GB File in /mnt erzeugen

    root@rockpro64:/# dd if=/dev/zero of=/mnt/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, 34.5184 s, 124 MB/s
    

    Und dann syncen wir das mal mit /tmp

    root@rockpro64:/# rsync -av --progress /mnt /tmp
    sending incremental file list
    mnt/
    mnt/sd.img
      4,294,967,296 100%   98.55MB/s    0:00:41 (xfr#1, to-chk=1/3)
    mnt/lost+found/
    
    sent 4,296,016,028 bytes  received 47 bytes  101,082,731.18 bytes/sec
    total size is 4,294,967,296  speedup is 1.00
    
  • Test ob der ROCKPro64 auch ein System startet, wenn an der SATA Karte eine HDD angeschlossen ist.

    Start Log

    Der bekannte Test

    rock64@rockpro64:~$ 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, 36.6207 s, 117 MB/s
    
  • Mit Kamil heute Nachmittag ein wenig getestet. Dazu haben wir mal 5 Festplatten an die SATA-Karte angeschlossen. Yeah.

    IMG_20200415_193900_ergebnis.jpg

    Doch es gab ein kleines Problem, Kamil wusste das schon vorher 🙂 Nachdem ich nur noch eine Festplatte mit Bootdevice hatte und diese als Device 4:0 angeschlossen war (entspricht dem Port 5 auf der Karte) bootete das System nicht mehr.

    Das hat Kamil im u-boot eben mal gefixt. Der neue u-boot 2020.01-ayufan-2014-gff2cdd38 enthält einen Fix dafür.

    • ayufan: rockchip: allow to boot scsi4, as JMS585 can have 5 drives

    Und nun bootet die Karte von scsi4 und kann an den anderen Anschlüssen noch 4 andere Laufwerke betreiben.

    df -h

    root@rockpro64:~# df -h
    Filesystem      Size  Used Avail Use% Mounted on
    udev            918M     0  918M   0% /dev
    tmpfs           192M  2.8M  189M   2% /run
    /dev/sde4        28G  5.1G   22G  20% /
    tmpfs           957M     0  957M   0% /dev/shm
    tmpfs           5.0M  4.0K  5.0M   1% /run/lock
    tmpfs           957M     0  957M   0% /sys/fs/cgroup
    /dev/sde3       105M   44M   54M  45% /boot
    /dev/sde2        12M     0   12M   0% /boot/efi
    tmpfs           192M     0  192M   0% /run/user/1000
    

    blkid

    root@rockpro64:~# blkid
    /dev/sda1: UUID="ed9e991a-0345-4200-b9ae-f939d4443c91" TYPE="ext4" PARTUUID="8786fc87-01"
    /dev/sdb1: LABEL="1TB" UUID="99950e1f-5637-4cb8-9985-e9deea6c8f96" UUID_SUB="48ae2955-33d1-46a6-9067-afd65a04de2b" TYPE="btrfs" PARTUUID="b9aa5cfb-01"
    /dev/sdc: PTUUID="4d25499d-a0f3-454b-b6fe-8067d944b0b6" PTTYPE="gpt"
    /dev/sdd1: PARTUUID="154f54f0-4cdc-b547-b5ed-4c5ef5d1ac98"
    /dev/sde1: PARTLABEL="loader1" PARTUUID="37466429-e4a4-495c-b9a1-3f74625a3cae"
    /dev/sde2: 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/sde3: LABEL="linux-boot" UUID="8e289a3e-0f9b-4da1-a147-51e03390637c" TYPE="ext4" PARTLABEL="linux_boot" PARTUUID="fe944fd2-3e42-4202-8a95-656e9bdb4be6"
    /dev/sde4: LABEL="linux-root" UUID="3e9513c6-dfd1-48c9-bee2-04bb5a153056" TYPE="ext4" PARTLABEL="linux_root" PARTUUID="d2d1dd88-030d-4f74-998f-7c9ce7d385d0"
    

    Und schön bunt ist es auch 😉

    IMG_20200415_193908_ergebnis.jpg

    Das wäre dann ein SATA-Karte mit JMS585 im Vollausbau 🙂

    Danke Kamil!!

  • Nächster Test.

    Zwei RAID1, insgesamt 4 HDDs und eine SSD 30GB als System.

    Hardware

    • ROCKPro64v2.1 mit 2GB RAM
    • PCIe SATA Karte JMS585
    • 2 * 2,5 Zoll HDD 2TB Seagate
    • 2 * 2,5 Zoll HDD HGST 1TB
    • 1 30GB SSD Kingston

    Also, alles in allem nix besonderes, so Kram der sich hier angesammelt hat 😉

    Software

    • Kamils Release 0.10.11
    • u-boot im SPI 2020.01-ayufan-2014-gff2cdd38

    Der Plan

    md0

    • sda 1TB
    • sdb 1TB

    md1

    • sdc 1,8TB
    • sdd 1,8TB

    System

    • sde 30GB SSDKingston

    Übersicht

    root@rockpro64:~# blkid
    /dev/sde2: 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/sde3: LABEL="linux-boot" UUID="8e289a3e-0f9b-4da1-a147-51e03390637c" TYPE="ext4" PARTLABEL="linux_boot" PARTUUID="fe944fd2-3e42-4202-8a95-656e9bdb4be6"
    /dev/sde4: LABEL="linux-root" UUID="3e9513c6-dfd1-48c9-bee2-04bb5a153056" TYPE="ext4" PARTLABEL="linux_root" PARTUUID="d2d1dd88-030d-4f74-998f-7c9ce7d385d0"
    /dev/sda: UUID="ff08805b-a249-f512-6b2d-ed9ef86665be" UUID_SUB="27fa92a3-6275-8a3c-d06b-8ccd02e931ae" LABEL="rockpro64:0" TYPE="linux_raid_member"
    /dev/sdb: UUID="ff08805b-a249-f512-6b2d-ed9ef86665be" UUID_SUB="f5f18413-ab32-58d3-21d0-0fef26947d1c" LABEL="rockpro64:0" TYPE="linux_raid_member"
    /dev/sdc: UUID="eca7e4b4-1436-71df-4261-c05037dc9070" UUID_SUB="8d1b00bd-552d-51c9-ed87-9145591a02c1" LABEL="rockpro64:1" TYPE="linux_raid_member"
    /dev/sdd: UUID="eca7e4b4-1436-71df-4261-c05037dc9070" UUID_SUB="c4ee7d26-e264-690d-0933-93ae74ba43f4" LABEL="rockpro64:1" TYPE="linux_raid_member"
    /dev/sde1: PARTLABEL="loader1" PARTUUID="37466429-e4a4-495c-b9a1-3f74625a3cae"
    

    Einrichtung mdadm

    root@rockpro64:~# apt install mdadm
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    Suggested packages:
      dracut-core
    Recommended packages:
      default-mta | mail-transport-agent
    The following NEW packages will be installed:
      mdadm
    0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
    Need to get 425 kB of archives.
    After this operation, 1223 kB of additional disk space will be used.
    Get:1 http://cdn-fastly.deb.debian.org/debian buster/main arm64 mdadm arm64 4.1-1 [425 kB]
    Fetched 425 kB in 1s (468 kB/s)
    Preconfiguring packages ...
    Selecting previously unselected package mdadm.
    (Reading database ... 41667 files and directories currently installed.)
    Preparing to unpack .../archives/mdadm_4.1-1_arm64.deb ...
    Unpacking mdadm (4.1-1) ...
    Setting up mdadm (4.1-1) ...
    Generating mdadm.conf... done.
    update-initramfs: deferring update (trigger activated)
    update-rc.d: warning: start and stop actions are no longer supported; falling back to defaults
    Processing triggers for systemd (241-7~deb10u3) ...
    Processing triggers for initramfs-tools (0.133+deb10u1) ...
    update-initramfs: Generating /boot/initrd.img-5.6.0-1132-ayufan-g81043e6e109a
    

    Einrichtung md0

    Raid anlegen

    root@rockpro64:~# mdadm --create /dev/md0 --auto md --level=1 --raid-devices=2 /dev/sda /dev/sdb
    mdadm: partition table exists on /dev/sda
    mdadm: partition table exists on /dev/sda but will be lost or
           meaningless after creating array
    mdadm: Note: this array has metadata at the start and
        may not be suitable as a boot device.  If you plan to
        store '/boot' on this device please ensure that
        your boot-loader understands md/v1.x metadata, or use
        --metadata=0.90
    mdadm: partition table exists on /dev/sdb
    mdadm: partition table exists on /dev/sdb but will be lost or
           meaningless after creating array
    Continue creating array? Y
    mdadm: Defaulting to version 1.2 metadata
    mdadm: array /dev/md0 started.
    

    Filesystem anlegen

    root@rockpro64:~# mkfs.ext4 /dev/md0
    mke2fs 1.44.5 (15-Dec-2018)
    Creating filesystem with 244157616 4k blocks and 61046784 inodes
    Filesystem UUID: 174a13ea-5ac9-4628-9741-3f802e110b34
    Superblock backups stored on blocks: 
    	32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
    	4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 
    	102400000, 214990848
    
    Allocating group tables: done                            
    Writing inode tables: done                            
    Creating journal (262144 blocks): done
    Writing superblocks and filesystem accounting information: done 
    

    Mounten

    root@rockpro64:~# mkdir /mnt/DATA
    

    Einrichtung md1

    Raid anlegen

    root@rockpro64:~# mdadm --create /dev/md1 --auto md --level=1 --raid-devices=2 /dev/sdc /dev/sdd
    mdadm: partition table exists on /dev/sdc
    mdadm: partition table exists on /dev/sdc but will be lost or
           meaningless after creating array
    mdadm: Note: this array has metadata at the start and
        may not be suitable as a boot device.  If you plan to
        store '/boot' on this device please ensure that
        your boot-loader understands md/v1.x metadata, or use
        --metadata=0.90
    mdadm: partition table exists on /dev/sdd
    mdadm: partition table exists on /dev/sdd but will be lost or
           meaningless after creating array
    Continue creating array? Y
    mdadm: Defaulting to version 1.2 metadata
    mdadm: array /dev/md1 started.
    

    Filesystem anlegen

    root@rockpro64:~# mkfs.ext4 /dev/md1
    mke2fs 1.44.5 (15-Dec-2018)
    Creating filesystem with 488345616 4k blocks and 122093568 inodes
    Filesystem UUID: e697a0f3-8b24-497c-b453-820d70059ac3
    Superblock backups stored on blocks: 
    	32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
    	4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 
    	102400000, 214990848
    
    Allocating group tables: done                            
    Writing inode tables: done                            
    Creating journal (262144 blocks): done
    Writing superblocks and filesystem accounting information: done 
    

    Mounten

    root@rockpro64:~# mount /dev/md1 /mnt/NAS
    

    Ergebnis

    Filesystem      Size  Used Avail Use% Mounted on
    udev            918M     0  918M   0% /dev
    tmpfs           192M  5.2M  187M   3% /run
    /dev/sde4        28G  5.1G   22G  20% /
    tmpfs           957M     0  957M   0% /dev/shm
    tmpfs           5.0M  4.0K  5.0M   1% /run/lock
    tmpfs           957M     0  957M   0% /sys/fs/cgroup
    /dev/sde3       105M   45M   53M  46% /boot
    /dev/sde2        12M     0   12M   0% /boot/efi
    tmpfs           192M     0  192M   0% /run/user/1000
    /dev/md0        916G   77M  870G   1% /mnt/DATA
    /dev/md1        1.8T   77M  1.7T   1% /mnt/NAS
    

    Und jetzt sind die RAIDs erst mal am resyncen......

    Every 10.0s: cat /proc/mdstat                                                                                                                                                   rockpro64: Thu Apr 16 15:15:54 2020
    
    Personalities : [raid1]
    md1 : active raid1 sdd[1] sdc[0]
          1953382464 blocks super 1.2 [2/2] [UU]
          [>....................]  resync =  3.4% (66640768/1953382464) finish=450.5min speed=69797K/sec
          bitmap: 15/15 pages [60KB], 65536KB chunk
    
    md0 : active raid1 sdb[1] sda[0]
          976630464 blocks super 1.2 [2/2] [UU]
          [==>..................]  resync = 10.3% (101341312/976630464) finish=170.2min speed=85702K/sec
          bitmap: 8/8 pages [32KB], 65536KB chunk
    
    unused devices: <none>
    

    wird fortgesetzt...

  • Der Resync ist durch.

     Personalities : [raid1]
     md1 : active raid1 sdd[1] sdc[0]
           1953382464 blocks super 1.2 [2/2] [UU]
           bitmap: 0/15 pages [0KB], 65536KB chunk
     
     md0 : active raid1 sdb[1] sda[0]
           976630464 blocks super 1.2 [2/2] [UU]
           bitmap: 0/8 pages [0KB], 65536KB chunk
     
     unused devices: <none>
    

    Speedtest des Systemes 30GB SSD Kongston

    root@rockpro64:/home/rock64# 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, 13.6125 s, 316 MB/s
    

    Speedtest auf /mnt/DATA

    root@rockpro64:/mnt/DATA# 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, 47.5736 s, 90.3 MB/s
    

    Speedtest auf /mnt/NAS

    root@rockpro64:/mnt/NAS# 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, 42.4595 s, 101 MB/s
    

    Auf meinem alten NAS mit ROCKPro64 bekomme ich das als Ergebnis. Aber darin verbaut sind auch zwei 3,5 Zoll WD mit je 4TB verbaut.

    root@rockpro64:/mnt/nas# dd if=/dev/zero of=sd.img bs=1M count=4096 conv=fdatasync
         4096+0 Datensätze ein
         4096+0 Datensätze aus
         4294967296 bytes (4,3 GB, 4,0 GiB) copied, 29,1319 s, 147 MB/s     
    

    Jetzt wisst Ihr auch, was ich als nächstes Teste... 😉

  • Heute nach Feierabend, die Kiste mal wieder gestartet. Ich konnte md0 nicht mounten. Ok, das ist einfach, den Fehler kenne ich 🙂

    blkid

     root@rockpro64:~# blkid
     /dev/sda: UUID="ff08805b-a249-f512-6b2d-ed9ef86665be" UUID_SUB="27fa92a3-6275-8a3c-d06b-8ccd02e931ae" LABEL="rockpro64:0" TYPE="linux_raid_member"
     /dev/sdb: UUID="ff08805b-a249-f512-6b2d-ed9ef86665be" UUID_SUB="f5f18413-ab32-58d3-21d0-0fef26947d1c" LABEL="rockpro64:0" TYPE="linux_raid_member"
     /dev/sdc: UUID="eca7e4b4-1436-71df-4261-c05037dc9070" UUID_SUB="8d1b00bd-552d-51c9-ed87-9145591a02c1" LABEL="rockpro64:1" TYPE="linux_raid_member"
     /dev/sdd: UUID="eca7e4b4-1436-71df-4261-c05037dc9070" UUID_SUB="c4ee7d26-e264-690d-0933-93ae74ba43f4" LABEL="rockpro64:1" TYPE="linux_raid_member"
     /dev/sde1: PARTLABEL="loader1" PARTUUID="37466429-e4a4-495c-b9a1-3f74625a3cae"
     /dev/sde2: 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/sde3: LABEL="linux-boot" UUID="8e289a3e-0f9b-4da1-a147-51e03390637c" TYPE="ext4" PARTLABEL="linux_boot" PARTUUID="fe944fd2-3e42-4202-8a95-656e9bdb4be6"
     /dev/sde4: LABEL="linux-root" UUID="3e9513c6-dfd1-48c9-bee2-04bb5a153056" TYPE="ext4" PARTLABEL="linux_root" PARTUUID="d2d1dd88-030d-4f74-998f-7c9ce7d385d0"
     /dev/md127: UUID="174a13ea-5ac9-4628-9741-3f802e110b34" TYPE="ext4"
     /dev/md126: UUID="e697a0f3-8b24-497c-b453-820d70059ac3" TYPE="ext4"
    

    Da sehen wir schon das Problem, die heißen jetzt md126 und md127.

    /etc/mdadm/mdadm.conf

    Das können wir ändern.

    nano /etc/mdadm/mdadm.conf
    

    und dort folgendes eintragen.

    # This configuration was auto-generated on Thu, 16 Apr 2020 14:54:56 +0000 by mkconf
    ARRAY /dev/md0 level=raid1 num-devices=2 metadata=1.2 UUID=ff08805b:a249f512:6b2ded9e:f86665be
    ARRAY /dev/md1 level=raid1 num-devices=2 metadata=1.2 UUID=eca7e4b4:143671df:4261c050:37dc9070
    

    Die UUIDs müsst ihr mit Euren Werten füllen. Diese bekommt ihr mit

    root@rockpro64:~# mdadm --detail /dev/md0
    /dev/md0:
               Version : 1.2
         Creation Time : Thu Apr 16 14:55:51 2020
            Raid Level : raid1
            Array Size : 976630464 (931.39 GiB 1000.07 GB)
         Used Dev Size : 976630464 (931.39 GiB 1000.07 GB)
          Raid Devices : 2
         Total Devices : 2
           Persistence : Superblock is persistent
    
         Intent Bitmap : Internal
    
           Update Time : Fri Apr 17 13:49:54 2020
                 State : clean 
        Active Devices : 2
       Working Devices : 2
        Failed Devices : 0
         Spare Devices : 0
    
    Consistency Policy : bitmap
    
                  Name : rockpro64:0  (local to host rockpro64)
                  UUID : ff08805b:a249f512:6b2ded9e:f86665be
                Events : 18567
    
        Number   Major   Minor   RaidDevice State
           0       8        0        0      active sync   /dev/sda
           1       8       16        1      active sync   /dev/sdb
    

    Danach

    root@rockpro64:~# update-initramfs -u
    update-initramfs: Generating /boot/initrd.img-5.6.0-1132-ayufan-g81043e6e109a
    mdadm: metadata format 1.20 unknown, ignored.
    mdadm: metadata format 1.20 unknown, ignored.
    

    Den Fehler

    mdadm: metadata format 1.20 unknown, ignored.
    

    bekommt man, wenn man 1.20 eingibt. Richtig muss es 1.2 lauten. Was für dumme Software 😉

    Mount beim Booten

    Wenn die RAIDs automatisch beim Booten eingebunden werden sollen, muss man in der /etc/fstab folgendes eintragen.

     LABEL=linux-root /           ext4    defaults         0    1
     LABEL=linux-boot /boot       ext4    defaults         0    1
     LABEL=boot-efi   /boot/efi   vfat    defaults,sync    0    1
     /dev/md0        /mnt/DATA       ext4    defaults        0       0
     /dev/md1        /mnt/NAS        ext4    defaults        0       0
    

    Und so sieht das dann aus, wenn man den ROCKPro64 mit den 5 Festplatten neustartet und alles funktioniert 😉

    root@rockpro64:~# df -h
    Filesystem      Size  Used Avail Use% Mounted on
    udev            917M     0  917M   0% /dev
    tmpfs           192M  2.8M  189M   2% /run
    /dev/sde4        28G  5.1G   22G  20% /
    tmpfs           957M     0  957M   0% /dev/shm
    tmpfs           5.0M  4.0K  5.0M   1% /run/lock
    tmpfs           957M     0  957M   0% /sys/fs/cgroup
    /dev/md0        916G  4.1G  866G   1% /mnt/DATA
    /dev/md1        1.8T  4.1G  1.7T   1% /mnt/NAS
    /dev/sde3       105M   45M   53M  46% /boot
    /dev/sde2        12M     0   12M   0% /boot/efi
    tmpfs           192M     0  192M   0% /run/user/1000
    
  • Ich habe das jetzt hier alles provisorisch umgebaut.

    Die 2TB Platten sind jetzt als md1 DATA noch drin. Aus meinem alten NAS die zwei 3,5 Zoll 4TB HDDs rein, als md0 NAS.

    blkid

    root@rockpro64:/mnt/NAS# blkid
    /dev/sda1: UUID="dbbdbbf3-d57a-f8f0-158a-95a090318787" UUID_SUB="a4e46abc-0745-812d-453a-5900c93be9e6" LABEL="rockpro64:0" TYPE="linux_raid_member" PARTUUID="bad3f3c0-1c93-8c48-a236-2d36f561208d"
    /dev/sdb1: UUID="dbbdbbf3-d57a-f8f0-158a-95a090318787" UUID_SUB="f686690c-7820-6177-ff0d-b49d4b6ee162" LABEL="rockpro64:0" TYPE="linux_raid_member" PARTUUID="4969cca5-813b-744b-8be8-267b8dce3a64"
    /dev/sdc: UUID="eca7e4b4-1436-71df-4261-c05037dc9070" UUID_SUB="8d1b00bd-552d-51c9-ed87-9145591a02c1" LABEL="rockpro64:1" TYPE="linux_raid_member"
    /dev/sdd: UUID="eca7e4b4-1436-71df-4261-c05037dc9070" UUID_SUB="c4ee7d26-e264-690d-0933-93ae74ba43f4" LABEL="rockpro64:1" TYPE="linux_raid_member"
    /dev/sde1: PARTLABEL="loader1" PARTUUID="37466429-e4a4-495c-b9a1-3f74625a3cae"
    /dev/sde2: 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/sde3: LABEL="linux-boot" UUID="8e289a3e-0f9b-4da1-a147-51e03390637c" TYPE="ext4" PARTLABEL="linux_boot" PARTUUID="fe944fd2-3e42-4202-8a95-656e9bdb4be6"
    /dev/sde4: LABEL="linux-root" UUID="3e9513c6-dfd1-48c9-bee2-04bb5a153056" TYPE="ext4" PARTLABEL="linux_root" PARTUUID="d2d1dd88-030d-4f74-998f-7c9ce7d385d0"
    /dev/md1: UUID="e697a0f3-8b24-497c-b453-820d70059ac3" TYPE="ext4"
    /dev/md0: UUID="65d12371-db28-405c-91c7-8ee644e5cbaa" TYPE="ext4"
    

    df -h

    root@rockpro64:/mnt/NAS# df -h
    Filesystem      Size  Used Avail Use% Mounted on
    udev            917M     0  917M   0% /dev
    tmpfs           192M  5.3M  187M   3% /run
    /dev/sde4        28G  5.5G   21G  21% /
    tmpfs           957M     0  957M   0% /dev/shm
    tmpfs           5.0M  4.0K  5.0M   1% /run/lock
    tmpfs           957M     0  957M   0% /sys/fs/cgroup
    /dev/md1        1.8T  2.4G  1.7T   1% /mnt/DATA
    /dev/md0        3.6T  693G  2.8T  20% /mnt/NAS
    /dev/sde3       105M   87M  9.7M  90% /boot
    /dev/sde2        12M     0   12M   0% /boot/efi
    tmpfs           192M     0  192M   0% /run/user/1000
    

    Speedtest

    root@rockpro64:/mnt/NAS# dd if=/dev/zero of=sd.img bs=1M count=4096 conv=fdatasync,notrunc
    4096+0 records in
    4096+0 records out
    4294967296 bytes (4.3 GB, 4.0 GiB) copied, 27.6825 s, 155 MB/s
    
    root@rockpro64:/mnt/NAS# echo 3 | sudo tee /proc/sys/vm/drop_caches
    3
    
    root@rockpro64:/mnt/NAS# dd if=sd.img of=/dev/null bs=1M count=1024
    1024+0 records in
    1024+0 records out
    1073741824 bytes (1.1 GB, 1.0 GiB) copied, 6.61112 s, 162 MB/s
    

    Speedtest ein wenig anders. Erst schreiben wir 4GB, dann Cache leeren, dann die 4GB lesen. Quelle: wiki.ubuntuusers.de

  • Was fehlt noch für ein schönes NAS? Da ich ja nicht ständig auf das NAS zugreife, lege ich die angeschlossenen gerne schlafen. Das spart auch reichlich Energie.

    Dazu nutzen wir hdparm

    Installation

    apt install hsparm
    

    Konfiguration

    ls /dev/disk/by-id
    

    Die ID's der HDDs auslesen. In meinem Fall sieht das so aus.

     root@NASrp64:/# ls -lha /dev/disk/by-id
     insgesamt 0
     drwxr-xr-x 2 root root 460 Apr 18 14:04 .
     drwxr-xr-x 8 root root 160 Jan 18  2013 ..
     lrwxrwxrwx 1 root root   9 Apr 18 13:51 ata-KINGSTON_SS200S330G_50026B723A0B3073 -> ../../sde
     lrwxrwxrwx 1 root root  10 Apr 18 13:51 ata-KINGSTON_SS200S330G_50026B723A0B3073-part1 -> ../../sde1
     lrwxrwxrwx 1 root root  10 Apr 18 13:51 ata-KINGSTON_SS200S330G_50026B723A0B3073-part2 -> ../../sde2
     lrwxrwxrwx 1 root root  10 Apr 18 13:51 ata-KINGSTON_SS200S330G_50026B723A0B3073-part3 -> ../../sde3
     lrwxrwxrwx 1 root root  10 Apr 18 13:51 ata-KINGSTON_SS200S330G_50026B723A0B3073-part4 -> ../../sde4
     lrwxrwxrwx 1 root root   9 Apr 18 14:04 ata-ST2000LM015-2E8174_WDZHD87G -> ../../sdd
     lrwxrwxrwx 1 root root   9 Apr 18 14:04 ata-ST2000LM015-2E8174_ZDZ2MY9W -> ../../sdc
     lrwxrwxrwx 1 root root   9 Apr 18 13:51 ata-WDC_WD40EZRZ-00GXCB0_WD-WCC7K5PPSH52 -> ../../sda
     lrwxrwxrwx 1 root root  10 Apr 18 13:51 ata-WDC_WD40EZRZ-00GXCB0_WD-WCC7K5PPSH52-part1 -> ../../sda1
     lrwxrwxrwx 1 root root   9 Apr 18 13:51 ata-WDC_WD40EZRZ-00GXCB0_WD-WCC7K6XD2C26 -> ../../sdb
     lrwxrwxrwx 1 root root  10 Apr 18 13:51 ata-WDC_WD40EZRZ-00GXCB0_WD-WCC7K6XD2C26-part1 -> ../../sdb1
     lrwxrwxrwx 1 root root   9 Apr 18 14:05 md-name-NASrp64:1 -> ../../md1
     lrwxrwxrwx 1 root root   9 Apr 18 13:51 md-name-rockpro64:0 -> ../../md0
     lrwxrwxrwx 1 root root   9 Apr 18 14:05 md-uuid-0f5f870b:eed97c18:50537db9:67b09a14 -> ../../md1
     lrwxrwxrwx 1 root root   9 Apr 18 13:51 md-uuid-dbbdbbf3:d57af8f0:158a95a0:90318787 -> ../../md0
     lrwxrwxrwx 1 root root   9 Apr 18 14:04 wwn-0x5000c500b1112c07 -> ../../sdc
     lrwxrwxrwx 1 root root   9 Apr 18 14:04 wwn-0x5000c500be743191 -> ../../sdd
     lrwxrwxrwx 1 root root   9 Apr 18 13:51 wwn-0x50014ee210ba6136 -> ../../sdb
     lrwxrwxrwx 1 root root  10 Apr 18 13:51 wwn-0x50014ee210ba6136-part1 -> ../../sdb1
     lrwxrwxrwx 1 root root   9 Apr 18 13:51 wwn-0x50014ee21157c259 -> ../../sda
     lrwxrwxrwx 1 root root  10 Apr 18 13:51 wwn-0x50014ee21157c259-part1 -> ../../sda1
    

    Das sind meine vier Festplatten, die ich schlafen legen möchte.

    • ata-WDC_WD40EZRZ-00GXCB0_WD-WCC7K5PPSH52
    • ata-WDC_WD40EZRZ-00GXCB0_WD-WCC7K6XD2C26
    • ata-ST2000LM015-2E8174_WDZHD87G
    • ata-ST2000LM015-2E8174_ZDZ2MY9W

    Config bearbeiten

    sudo nano /etc/hdparm.conf
    

    Das dann ans Ende der Datei. Sieht dann so aus

    # HDDs schlafen legen nach 20 Minuten (240*5=1200Sek.=20Min.)
     /dev/disk/by-id/ata-ST2000LM015-2E8174_WDZHD87G {
     # mult_sect_io = 16
     # write_cache = off
     # dma = on
     spindown_time = 240
     }
    
     /dev/disk/by-id/ata-ST2000LM015-2E8174_ZDZ2MY9W {
     # mult_sect_io = 16
     # write_cache = off
     # dma = on
     spindown_time = 240
     }
    
    /dev/disk/by-id/ata-WDC_WD40EZRZ-00GXCB0_WD-WCC7K5PPSH52 {
     # mult_sect_io = 16
     # write_cache = off
     # dma = on
     spindown_time = 240
     }
    
    /dev/disk/by-id/ata-WDC_WD40EZRZ-00GXCB0_WD-WCC7K6XD2C26 {
     # mult_sect_io = 16
     # write_cache = off
     # dma = on
     spindown_time = 240
     }
    

    Mit spindown_time = 10 kann man mal schnell testen. Man hat ja nicht ewig Zeit 😉 Danach mal eben neustarten und etwas warten, dann legen sich die Platten schlafen. Das machen sie natürlich nur, wenn es keine Aktivität gibt! Bei mir hat das wunderbar geklappt, nach einer knappen Minute waren sie leise.

    Die 240 also 20 Minuten, benutze ich schon ewig auf meinem NAS, ohne Probleme. Also, nach dem Testen auf 240 umstellen! Neustarten nicht vergessen.

    Damit hat man dann ein nettes NAS zusammen. Habe dann noch alle cronjobs angelegt, dem NAS beigebracht wie es Mails versendet und ein paar Standardeinstellungen angepasst. Somit sollte es fertig sein. Wenn ich jetzt die nächsten tage nichts außergewöhnliches feststelle, baue ich das alles mal in schön zusammen 😉

    IMG_20200418_173418.jpg

  • Hallo Frank,

    ja das hört sich ja sehr interessant an.

    mich interessiert noch wie du es mit der Stromversorgung genau gemacht hast? Da es ja mit den pine64-HD Stromkabeln nur für 2 HD klappt. Ich plane das auch so ähnlich auf zubauen. Allerdings mit 4 3,5" HD.

    Baust du es "schön" in ein Gehäuse oder wie ist da dein Plan.

    Übrigens hast du ganz oben im Thread einen kleine Typo ich denke die 5 USB-Kabel sind 5 SATA-Kabel.

    Gruß
    Martin

  • Hallo Martin,

    danke für den Hinweis mit dem Typo, habe es gefixt.

    Ich gebe dir einen kleinen Einblick in mein geheimes Versuchslabor 🙂

    IMG_20200420_163931.jpg

    Oben das Netzteil, was die ganzen Platten versorgt. Der ROCKPro64 unten links ist das NAS (zum Testen). Dieser Aufbau kommt in das Gehäuse unten rechts. Das ist irgendein Gehäuse, wo ich einen ROCKPro64 eingebaut habe. Dafür habe ich jetzt ein Netzteil bestellt.

    Der ROCKPro64 in dem Gehäuse ist aktuell mein Wireguard-Server zum Testen. Ich hoffe das ist jetzt so weit klar!? Wenn nicht, einfach fragen.

    Ich habe jetzt mittels Restic, das vorhandene NAS (md0) auf das andere Raid DATA (md1) gesichert. Das waren insgesamt 693 GB an Daten. Ja, ich muss mal wieder aufräumen 😉

    Und jetzt mach ich noch ein wenig Stress auf den Platten und teste die Daten.

    restic --password-file /root/passwd -r /mnt/DATA/Backup_NAS check --read-data
    
  • So der Check ist durch.

    check snapshots, trees and blobs
    read all data
    [3:37:28] 100.00%  116368 / 116368 items
    duration: 3:37:28
    no errors were found
    

    Damit kann ich jetzt den Cronjob anlegen und fertig 🙂 Am WE wird dann gebaut.

  • Ich möchte das dann hier zum Abschluss bringen, das NAS ist heute zusammengebaut worden. Hier zwei Fotos.

    IMG_20200425_102156_ergebnis.jpg

    IMG_20200425_102206_ergebnis.jpg

  • FrankMF FrankM hat am auf dieses Thema verwiesen
  • FrankMF FrankM hat am auf dieses Thema verwiesen
  • FrankMF FrankM hat am auf dieses Thema verwiesen

  • KDE neon 6.0

    Linux
    2
    0 Stimmen
    2 Beiträge
    175 Aufrufe
    FrankMF

    Heute mal in die bestehende Installation meine Intel ARC A580 GPU eingesteckt. Wollte mal schauen ob das gut klappt. Da die Treiber ja im Kernel vorhanden sind, habe ich keinerlei Probleme erwartet. Und so war es auch. Neustart und fertig. Im BIOS natürlich vorher umgestellt, das sie auch benutzt wird, habe ja einen AMD Prozessor mit eingebauter GPU im CPU-Sockel stecken.

    Screenshot_20240303_101728.png

    Die Wechselfunktion (oben links in der Ecke) um die virtuellen Desktops zu wechseln und zu bearbeiten ist richtig gut geworden.

    Screenshot_20240303_101809.png

    Und auch ein Ärgernis auf meiner KDE Plasma Installation scheint weg zu sein. Wenn ich ein Programm zur Arbeitsfläche hinzugefügt hatte, wurde die Position immer irgendwann zurückgesetzt. Beispiel, Icon des Programmes rechts unten abgelegt. Irgendwann tauchte es dann in der normalen Ansicht (alphabetisch) sortiert, links oben, wieder auf. Sehr nerviger Bug.

  • NAS 2023 - Software Teil 2

    Angeheftet Verschoben Linux
    1
    0 Stimmen
    1 Beiträge
    194 Aufrufe
    Niemand hat geantwortet
  • NanoPi5 - eMMC

    Verschoben NanoPi R5S
    1
    0 Stimmen
    1 Beiträge
    188 Aufrufe
    Niemand hat geantwortet
  • Nextcloud Talk

    Nextcloud
    5
    0 Stimmen
    5 Beiträge
    811 Aufrufe
    FrankMF

    All I needed to do was setting the permissions to 744 for the archive directory and the symlinks resolved correctly after a reboot of coturn

    My turnserver installation on Debian runs as the user turnserver and not as root, nor is the user turnserver in any group owning the letsencrypt directory.
    If your turnserver does run as root, it should be fine just adding execute permissions.

    I hope this helps some of you.
    Quelle: https://help.nextcloud.com/t/lets-encrypt-symlink-breaks-coturn-configuration/70166

    Was zum Testen die Tage....

  • ROCKPro64 Übersicht - was geht?

    ROCKPro64
    4
    0 Stimmen
    4 Beiträge
    597 Aufrufe
    FrankMF
    WIFI

    Seit dem Release des Images 0.7.13 ist WiFi auch möglich. Weiterhin ungelöst ist das Problem PCIe & WiFi (also bei mir).

  • Der 3. ROCKPro64

    ROCKPro64
    3
    0 Stimmen
    3 Beiträge
    937 Aufrufe
    FrankMF

    Nachdem ich jetzt mein NAS neu gemacht habe, schauen wir mal, was die Chinesen geliefert haben. Bestellt hatte ich

    ROCKPro64 v2.1 2GB RAM Kühlkörper Netzteil 3A USB-Adapter für eMMC-Modul

    Endlich habe ich mal an den USB-Adapter für das eMMC-Modul gedacht 🙂

    0_1540029624802_IMG_20181020_115348_ergebnis.jpg

    Was ist mir aufgefallen? Das Versionsdatum ist neu (siehe oben) Die PCIe NVMe Karte ist neu

    Bei der PCIe NVMe Karte liegt eine Abstandshülse aus Messing und eine winzig kleine Schraube bei. Damit bekomme ich aber nicht die NVMe-SSD befestigt. Ich habe dann gemurkst 😉 Da sollte Pine64 unbedingt nachbessern!

    So sieht das dann zusammengebaut aus.

    0_1540029756582_IMG_20181020_115425_ergebnis.jpg

    0_1540029767082_IMG_20181020_115438_ergebnis.jpg

    Da ich ein paarmal gelesen hatte, das Leute Probleme mit dem PCIe NVMe Adapter hatten, direkt als erstes mal ein Test ob das reibungslos funktioniert.

    Sys rock64@rockpro64:/mnt$ uname -a Linux rockpro64 4.4.132-1075-rockchip-ayufan-ga83beded8524 #1 SMP Thu Jul 26 08:22:22 UTC 2018 aarch64 aarch64 aarch64 GNU/Linux lspci rock64@rockpro64:/mnt$ sudo lspci -vvv [sudo] password for rock64: 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 238 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: 00000000fee30040 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 128 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 L1 Enabled; RCB 64 bytes Disabled- CommClk- ExtSynch- ClockPM- AutWidDis- BWInt+ AutBWInt+ LnkSta: Speed 5GT/s, Width x4, 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 Kernel driver in use: pcieport 01:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller SM961/PM961 (prog-if 02 [NVM Express]) Subsystem: Samsung Electronics Co Ltd NVMe SSD Controller SM961/PM961 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 237 Region 0: Memory at fa000000 (64-bit, non-prefetchable) [size=16K] 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/32 Maskable- 64bit+ Address: 0000000000000000 Data: 0000 Capabilities: [70] Express (v2) Endpoint, MSI 00 DevCap: MaxPayload 256 bytes, PhantFunc 0, Latency L0s unlimited, L1 unlimited ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset+ SlotPowerLimit 0.000W DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported- RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop+ FLReset- MaxPayload 128 bytes, MaxReadReq 512 bytes DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr+ TransPend- LnkCap: Port #0, Speed 8GT/s, Width x4, ASPM L1, Exit Latency L0s unlimited, L1 <64us ClockPM+ Surprise- LLActRep- BwNot- ASPMOptComp+ LnkCtl: ASPM L1 Enabled; RCB 64 bytes Disabled- CommClk- ExtSynch- ClockPM+ AutWidDis- BWInt- AutBWInt- LnkSta: Speed 5GT/s, Width x4, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt- DevCap2: Completion Timeout: Range ABCD, TimeoutDis+, LTR+, OBFF Not Supported DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-, LTR-, OBFF Disabled LnkCtl2: Target Link Speed: 8GT/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: [b0] MSI-X: Enable+ Count=8 Masked- Vector table: BAR=0 offset=00003000 PBA: BAR=0 offset=00002000 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: [148 v1] Device Serial Number 00-00-00-00-00-00-00-00 Capabilities: [158 v1] Power Budgeting <?> Capabilities: [168 v1] #19 Capabilities: [188 v1] Latency Tolerance Reporting Max snoop latency: 0ns Max no snoop latency: 0ns Capabilities: [190 v1] L1 PM Substates L1SubCap: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+ L1_PM_Substates+ PortCommonModeRestoreTime=10us PortTPowerOnTime=10us L1SubCtl1: PCI-PM_L1.2- PCI-PM_L1.1- ASPM_L1.2- ASPM_L1.1- T_CommonMode=0us LTR1.2_Threshold=0ns L1SubCtl2: T_PwrOn=10us Kernel driver in use: nvme

    Da sieht alles gut aus. x4 alles Bestens!

    iozone rock64@rockpro64:/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: Sat Oct 20 10:08:28 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 63896 108269 91858 95309 32845 73173 102400 16 123393 236653 273766 275807 118450 199130 102400 512 471775 570571 484612 496942 441345 575817 102400 1024 544229 642558 508895 511834 486506 647765 102400 16384 1044520 1100322 1069825 1092146 1089301 1086757 iozone test complete.

    Das sieht nicht optimal aus, schau ich mir später an. Das hier soll nur ein kurzer Test sein ob das Board rennt 🙂

    Nachdem ich mittlerweile zwei ROCKPro64 im "produktiven" Einsatz habe, war es immer sehr mühsam mal eben was zu testen. Man will die anderen ja nicht immer ausmachen, dran rumhantieren usw. Deswegen jetzt der dritte, der im Moment dann die Rolle des Testkandidaten einnimmt. Ab sofort kann ich wieder nach Lust und Laune, neue Images testen usw.

  • Neue Bilder

    ROCKPro64
    1
    0 Stimmen
    1 Beiträge
    688 Aufrufe
    Niemand hat geantwortet
  • Restic - Ein Backupkonzept - Automatisieren!

    Verschoben Restic
    1
    0 Stimmen
    1 Beiträge
    1k Aufrufe
    Niemand hat geantwortet