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

  • NodeBB - v3.3.0

    NodeBB
    1
    0 Stimmen
    1 Beiträge
    92 Aufrufe
    Niemand hat geantwortet
  • Storage Box für den REST-Server

    Restic
    1
    0 Stimmen
    1 Beiträge
    141 Aufrufe
    Niemand hat geantwortet
  • Images 0.11.x

    Images
    5
    0 Stimmen
    5 Beiträge
    364 Aufrufe
    FrankMF

    0.11.2: gitlab-ci-linux-build-187 released

    0.11.2: Update OMV install (to also be able to run OMV6)
  • FreeOTP+

    Linux
    1
    0 Stimmen
    1 Beiträge
    398 Aufrufe
    Niemand hat geantwortet
  • Nach Kernel Update werden die Module nicht automatisch gebaut!?

    Linux
    1
    0 Stimmen
    1 Beiträge
    176 Aufrufe
    Niemand hat geantwortet
  • Restic - forget --keep-last 3 --prune

    Restic
    2
    0 Stimmen
    2 Beiträge
    600 Aufrufe
    FrankMF

    Ich habe mich damit noch ein wenig beschäftigt, die letzten drei zu behalten, ist nicht so optimal. Da es viele Optionen bei dem Befehl gibt, hier ein Ausschnitt

    Flags: -l, --keep-last n keep the last n snapshots -H, --keep-hourly n keep the last n hourly snapshots -d, --keep-daily n keep the last n daily snapshots -w, --keep-weekly n keep the last n weekly snapshots -m, --keep-monthly n keep the last n monthly snapshots -y, --keep-yearly n keep the last n yearly snapshots

    habe ich das ein wenig so angepasst, das ich denke es passt für mich.

    restic --password-file /root/passwd -r /media/NAS_neu/Restic/Home/ forget --keep-last 3 --keep-monthly 3 --prune

    Damit behalte ich auch die jeweils eines pro Monat. Und die letzten drei. Das sieht dann so aus.

    root@debian:~# ./backup2.sh repository 2f3f6147 opened successfully, password is correct Files: 38 new, 100 changed, 13268 unmodified Dirs: 0 new, 1 changed, 0 unmodified Added to the repo: 10.166 GiB processed 13406 files, 50.324 GiB in 3:24 snapshot 849f614c saved repository 2f3f6147 opened successfully, password is correct Applying Policy: keep the last 3 snapshots, 3 monthly snapshots snapshots for (host [debian], paths [/home/frank]): keep 5 snapshots: ID Time Host Tags Reasons Paths ------------------------------------------------------------------------------------ a7251cfd 2019-11-28 17:00:01 debian monthly snapshot /home/frank 283d4027 2019-12-31 17:00:01 debian monthly snapshot /home/frank ae2b96ec 2020-01-01 21:47:46 debian last snapshot /home/frank 079e00a6 2020-01-02 17:00:01 debian last snapshot /home/frank 849f614c 2020-01-03 21:08:45 debian last snapshot /home/frank monthly snapshot ------------------------------------------------------------------------------------ 5 snapshots remove 26 snapshots: ID Time Host Tags Paths ------------------------------------------------------------------ 896f16c2 2019-11-07 22:23:40 debian /home/frank b21bcf6d 2019-11-11 17:00:01 debian /home/frank f89248fb 2019-11-12 17:00:01 debian /home/frank 123ab546 2019-11-13 17:00:01 debian /home/frank b82d87d0 2019-11-18 17:00:01 debian /home/frank 040b0ab7 2019-11-19 17:00:01 debian /home/frank 7221d8ef 2019-11-20 17:00:01 debian /home/frank 84132a25 2019-11-21 17:00:01 debian /home/frank b558a52c 2019-11-25 17:00:01 debian /home/frank e5cc0c3e 2019-12-02 17:00:01 debian /home/frank 22423fa5 2019-12-03 17:00:01 debian /home/frank 39df1ab9 2019-12-04 17:00:01 debian /home/frank 98843457 2019-12-05 17:00:01 debian /home/frank b0cdd4b6 2019-12-09 17:00:01 debian /home/frank 828414f9 2019-12-10 17:00:01 debian /home/frank e34a27c3 2019-12-11 17:00:01 debian /home/frank 6e488c3b 2019-12-12 17:00:01 debian /home/frank 17898403 2019-12-16 17:00:01 debian /home/frank 1973305a 2019-12-17 17:00:01 debian /home/frank 9553bedd 2019-12-18 17:00:01 debian /home/frank fedf749d 2019-12-19 17:00:01 debian /home/frank 8e7cb876 2019-12-23 17:00:01 debian /home/frank 0bd0d102 2019-12-25 17:00:01 debian /home/frank 13d348b0 2019-12-26 17:00:01 debian /home/frank c7d960aa 2019-12-30 17:00:01 debian /home/frank f6ea9118 2020-01-01 17:00:01 debian /home/frank ------------------------------------------------------------------ 26 snapshots 26 snapshots have been removed, running prune counting files in repo building new index for repo [0:35] 100.00% 7806 / 7806 packs repository contains 7806 packs (46537 blobs) with 41.110 GiB processed 46537 blobs: 0 duplicate blobs, 0 B duplicate load all snapshots find data that is still in use for 5 snapshots [0:01] 100.00% 5 / 5 snapshots found 32654 of 46537 data blobs still in use, removing 13883 blobs will remove 0 invalid files will delete 715 packs and rewrite 752 packs, this frees 5.027 GiB [2:28] 100.00% 752 / 752 packs rewritten counting files in repo [0:01] 100.00% 6571 / 6571 packs finding old index files saved new indexes as [d137b425 f7caee99 a6e9711a] remove 35 old index files [1:13] 100.00% 1467 / 1467 packs deleted done using temporary cache in /tmp/restic-check-cache-916655151 repository 2f3f6147 opened successfully, password is correct created new cache in /tmp/restic-check-cache-916655151 create exclusive lock for repository load indexes check all packs check snapshots, trees and blobs read all data [7:47] 100.00% 6571 / 6571 items duration: 7:47 no errors were found root@debian:~#

    Am Ende seht ihr noch, wie Restic alle Files testet. Mein Script sieht jetzt so aus.

    #!/bin/bash # Script um mit Restic Daten automatisiert zu sichern! # Dient zum Sichern der Homepartition auf dem ROCKPro64 NAS! # Was soll gesichert werden? backup_pfad=/home/frank # Programm Start restic --password-file /root/passwd -r /media/NAS_neu/Restic/Home/ backup $backup_pfad --exclude-file=excludes.txt restic --password-file /root/passwd -r /media/NAS_neu/Restic/Home/ forget --keep-last 3 --keep-monthly 3 --prune # Testen restic --password-file /root/passwd -r /media/NAS_neu/Restic/Home/ check --read-data

    Das dann schön mit einem Cronjob laufen lassen und die Datensicherung ist erledigt 😉

  • Twitter-Beiträge in NodeBB anzeigen

    Verschoben NodeBB
    3
    0 Stimmen
    3 Beiträge
    339 Aufrufe
    FrankMF

    Endlich was gefunden um Twitter-Beiträge hier anzuzeigen. Beispiele siehe oben... YEAH

    Wie man das in NodeBB und dem Plugin nodebb-plugin-ns-embed einbaut, steht hier.
    https://community.nodebb.org/topic/7135/nodebb-plugin-ns-embed-ns-embed/39

  • ROCKPro64 (2GB) - Probleme mit der PCIe SATA-Karte??

    ROCKPro64
    1
    0 Stimmen
    1 Beiträge
    478 Aufrufe
    Niemand hat geantwortet