Skip to content

mdadm

Verschoben Linux
  • Info

    raid_pool0 = sda1 = /dev/mapper/raid_pool0
    raid_pool1 = sdb1 = /dev/mapper/raid_pool1
    

    Verschlüsseln

    sudo cryptsetup --key-size 512 --hash sha256 --iter-time 5000 --use-random luksFormat /dev/sda1
    sudo cryptsetup --key-size 512 --hash sha256 --iter-time 5000 --use-random luksFormat /dev/sdb1
    

    Platten entschlüsseln

    sudo cryptsetup open /dev/sda1 raid_pool0
    sudo cryptsetup open /dev/sdb1 raid_pool1
    

    RAID1 anlegen

    sudo mdadm --create /dev/md0 --auto md --level=1 --raid-devices=2 /dev/mapper/raid_pool0 /dev/mapper/raid_pool1 
    
    sudo mkfs.ext4 /dev/md0
    

    Script zum Entschlüsseln und Mounten

    #!/bin/bash
    ###############################################################################$
    #       Autor: Frank Mankel
    #       Verschlüsseltes Raid1 einbinden!
    #
    #       Hardware:
    #       ROCKPro64v2.1
    #       PCIe SATA Karte
    #       2St. 2,5 Zoll HDD Platten a 2TB
    #
    #       Software:
    #       bionic-minimal 0.7.9
    #
    ###############################################################################$
    
    #Passwort abfragen
    echo "Passwort eingeben!"
    read -s password
    echo "Bitte warten......"
    
    #Passwörter abfragen
    echo -n $password | cryptsetup open /dev/sda1 raid_pool0 -d -
    echo -n $password | cryptsetup open /dev/sdb1 raid_pool1 -d -
          
    #Raid1 mounten
    mount /dev/md0 /mnt/raid
    
    echo "Laufwerke erfolgreich gemountet!"
    
  • Wir möchten dieses vorhandene Raid1 auf einem neuen Betriebssystem wieder aktivieren!

    Erstmal was installieren

    sudo apt install cryptsetup
    sudo apt install mdadm
    

    Danach ließ sich das Device /dev/md0 nicht mounten.

    frank@rockpro64:~$ sudo mount /dev/md0 /mnt/raid
    mount: special device /dev/md0 does not exist
    

    Irgendwie logisch. Das haben wir beim letzten Mal ja auch angelegt, ist jetzt aber natürlich nicht angelegt. Ok, wie bekommen wir das jetzt wieder an den Start?

    sudo mdadm --assemble --scan
    

    Danach ist das Device wieder vorhanden und das Script funktioniert wieder wie gewohnt.

  • Mein RAID1 war mal wieder nicht komplett 😞

    Da beide Platten verschlüsselt sind, werden diese erst mal entsperrt.

    cryptsetup open /dev/sda1 raid_pool0
    cryptsetup open /dev/sdb1 raid_pool1
    

    Danach geht es weiter...

    Nach fdisk -l

    Disk /dev/mapper/raid_pool0: 1,8 TiB, 2000395771392 bytes, 3907022991 sectors
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 4096 bytes
    I/O size (minimum/optimal): 4096 bytes / 4096 bytes
    
    
    Disk /dev/md0: 1,8 TiB, 2000260497408 bytes, 3906758784 sectors
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 4096 bytes
    I/O size (minimum/optimal): 4096 bytes / 4096 bytes
    
    
    Disk /dev/mapper/raid_pool1: 1,8 TiB, 2000395771392 bytes, 3907022991 sectors
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 4096 bytes
    I/O size (minimum/optimal): 4096 bytes / 4096 bytes
    

    Mir fehlt das Device /dev/md1 Warum??? Keine Ahnung!!!

    Schauen wir mal nach, was noch lebt.

    root@rockpro64v_2_1:~# mdadm --examine --scan
    ARRAY /dev/md/0  metadata=1.2 UUID=33ac7964:473fe590:3682dd85:a979b336 name=rockpro64v_2_1:0
    

    So, Device md0 lebt 🙂

    Wir mounten das noch lebende Laufwerk.

    mount /dev/md0 /mnt/raid
    

    Danach geschaut, ob mit NFS die Daten erreichbar sind. Alles OK.

    Kurz checken

    root@rockpro64v_2_1:~# cat /proc/mdstat
    Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] 
    md0 : active raid1 dm-0[2]
          1953379392 blocks super 1.2 [2/1] [U_]
          bitmap: 7/15 pages [28KB], 65536KB chunk
    
    unused devices: <none>
    

    Da sieht man das ein Laufwerk fehlt. Dann wollen wir mal adden 😉

    root@rockpro64v_2_1:~# mdadm /dev/md0 --manage --add /dev/mapper/raid_pool1
    mdadm: re-added /dev/mapper/raid_pool1
    

    Jetzt läuft das Recovery

    root@rockpro64v_2_1:~# cat /proc/mdstat
    Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] 
    md0 : active raid1 dm-1[1] dm-0[2]
          1953379392 blocks super 1.2 [2/1] [U_]
          [>....................]  recovery =  1.2% (25185728/1953379392) finish=604.2min speed=53184K/sec
          bitmap: 7/15 pages [28KB], 65536KB chunk
    
    unused devices: <none>
    

    Und Fertig 🙂

    root@rockpro64v_2_1:~# cat /proc/mdstat
    Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] 
    md0 : active raid1 dm-1[1] dm-0[2]
          1953379392 blocks super 1.2 [2/2] [UU]
          bitmap: 0/15 pages [0KB], 65536KB chunk
    
    unused devices: <none>
    

    Daten kontrolliert, noch alles da. Puuuuuh! Aber, warum das Ganze???? Ich bin übrigens jetzt wieder auf Kamils Image und dabei ist mir aufgefallen, das das Recovery wesentlich schneller ging als bei meinem letzten Versuch. Hmm???????

    Zum Schluß noch was aus dem dmesg

    [    8.612039] ata1: SATA max UDMA/133 abar m512@0xfa010000 port 0xfa010100 irq 231
    [    8.612047] ata2: SATA max UDMA/133 abar m512@0xfa010000 port 0xfa010180 irq 231
    [    9.085894] ata1: SATA link up 6.0 Gbps (SStatus 133 SControl 300)
    [    9.123159] ata1.00: ATA-10: ST2000LM015-2E8174, SDM1, max UDMA/133
    [    9.123169] ata1.00: 3907029168 sectors, multi 16: LBA48 NCQ (depth 32), AA
    [    9.172776] ata1.00: configured for UDMA/133
    [    9.173235] scsi 0:0:0:0: Direct-Access     ATA      ST2000LM015-2E81 SDM1 PQ: 0 ANSI: 5
    [    9.173782] sd 0:0:0:0: [sda] 3907029168 512-byte logical blocks: (2.00 TB/1.82 TiB)
    [    9.173792] sd 0:0:0:0: [sda] 4096-byte physical blocks
    [    9.173889] sd 0:0:0:0: [sda] Write Protect is off
    [    9.173896] sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
    [    9.173933] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
    [    9.239218]  sda: sda1
    [    9.240144] sd 0:0:0:0: [sda] Attached SCSI disk
    [    9.649853] ata2: SATA link up 6.0 Gbps (SStatus 133 SControl 300)
    [    9.687095] ata2.00: ATA-10: ST2000LM015-2E8174, SDM1, max UDMA/133
    [    9.687104] ata2.00: 3907029168 sectors, multi 16: LBA48 NCQ (depth 32), AA
    [    9.696476] NFSD: starting 45-second grace period (net f00000a1)
    [    9.736698] ata2.00: configured for UDMA/133
    [    9.737137] scsi 1:0:0:0: Direct-Access     ATA      ST2000LM015-2E81 SDM1 PQ: 0 ANSI: 5
    [    9.739557] sd 1:0:0:0: [sdb] 3907029168 512-byte logical blocks: (2.00 TB/1.82 TiB)
    [    9.739568] sd 1:0:0:0: [sdb] 4096-byte physical blocks
    [    9.739592] sd 1:0:0:0: [sdb] Write Protect is off
    [    9.739597] sd 1:0:0:0: [sdb] Mode Sense: 00 3a 00 00
    [    9.739631] sd 1:0:0:0: [sdb] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
    [    9.803472]  sdb: sdb1
    [    9.804397] sd 1:0:0:0: [sdb] Attached SCSI disk
    [   22.550770] rk_gmac-dwmac fe300000.ethernet eth0: Link is Up - 100Mbps/Full - flow control off
    [   22.550820] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
    [   42.132977] device-mapper: uevent: version 1.0.3
    [   42.133199] device-mapper: ioctl: 4.39.0-ioctl (2018-04-03) initialised: dm-devel@redhat.com
    [  141.047476] md/raid1:md0: active with 1 out of 2 mirrors
    [  141.061140] md0: detected capacity change from 0 to 2000260497408
    [  522.183161] EXT4-fs (md0): mounted filesystem with ordered data mode. Opts: (null)
    [  559.062705] nfsd: last server has exited, flushing export cache
    [  559.084203] NFSD: starting 45-second grace period (net f00000a1)
    [  840.473519] md: recovery of RAID array md0
    [ 1141.650170] md: md0: recovery done.
    
  • Ok, öfter was Neues 🙂

    Mein Device md0 war weg, das hieß nun /dev/md127 !?!?!

    Gut, etwas gelesen, dann neugestartet.

    Die Datei /etc/mdadm/mdadm.conf geändert

    # mdadm.conf
    #
    # !NB! Run update-initramfs -u after updating this file.
    # !NB! This will ensure that initramfs has an uptodate copy.
    #
    # Please refer to mdadm.conf(5) for information about this file.
    #
    
    # by default (built-in), scan all partitions (/proc/partitions) and all
    # containers for MD superblocks. alternatively, specify devices to scan, using
    # wildcards if desired.
    #DEVICE partitions containers
    
    # automatically tag new arrays as belonging to the local system
    HOMEHOST <system>
    
    # instruct the monitoring daemon where to send mail alerts
    MAILADDR root
    
    # definitions of existing MD arrays
    
    # This configuration was auto-generated on Sat, 20 Oct 2018 09:01:46 +0200 by mkconf
    ARRAY /dev/md0 level=raid1 num-devices=2 metadata=1.20 UUID=33ac7964:473fe590:3682dd85:a979b336
    

    An die Daten, was man da eintragen muss kommt man mit

    rock64@rp64v_2_1_NAS:~$ sudo mdadm --detail /dev/md0
    mdadm: metadata format 1.20 unknown, ignored.
    /dev/md0:
               Version : 1.2
         Creation Time : Sat Oct 20 09:05:51 2018
            Raid Level : raid1
            Array Size : 1953379392 (1862.89 GiB 2000.26 GB)
         Used Dev Size : 1953379392 (1862.89 GiB 2000.26 GB)
          Raid Devices : 2
         Total Devices : 2
           Persistence : Superblock is persistent
    
         Intent Bitmap : Internal
    
           Update Time : Thu Feb  7 20:10:12 2019
                 State : clean 
        Active Devices : 2
       Working Devices : 2
        Failed Devices : 0
         Spare Devices : 0
    
    Consistency Policy : bitmap
    
                  Name : rockpro64v_2_1:0
                  UUID : 33ac7964:473fe590:3682dd85:a979b336
                Events : 66932
    
        Number   Major   Minor   RaidDevice State
           2     252        1        0      active sync   /dev/dm-1
           1     252        0        1      active sync   /dev/dm-0
    

    Nach dem Eintragen der Änderungen den Befehl hier nicht vergessen 😉

    update-initramfs -u
    

    Mal schauen ob das jetzt mal was länger klappt 🙂

  • Nachdem ich die SATA-Karte gewechselt habe, sind meine Probleme verschwunden. Mein NAS läuft seit Monaten einwandfrei.

    rock64@rp64v_2_1_NAS:~$ uptime
     21:57:50 up 73 days,  4:44,  1 user,  load average: 0,00, 0,00, 0,00
    

    https://forum.frank-mankel.org/topic/299/sata-karte-marvell-88se9230-chipsatz/16

  • Open Source Software - Nur mit Luft & Liebe läuft es auch nicht rund

    Linux
    1
    0 Stimmen
    1 Beiträge
    145 Aufrufe
    Niemand hat geantwortet
  • Ansible - host_key_checking

    Ansible
    1
    0 Stimmen
    1 Beiträge
    188 Aufrufe
    Niemand hat geantwortet
  • Vaultwarden auf Debian Bookworm 12 installieren!

    Angeheftet Linux
    6
    5
    0 Stimmen
    6 Beiträge
    4k Aufrufe
    I
    Vielen lieben Dank Nico! Jetzt läuft vaultwarden.
  • Pycharm & Docker

    Verschoben Linux
    1
    4
    0 Stimmen
    1 Beiträge
    266 Aufrufe
    Niemand hat geantwortet
  • Mainline 5.13.x

    Images
    1
    0 Stimmen
    1 Beiträge
    210 Aufrufe
    Niemand hat geantwortet
  • Rest-Server

    Verschoben Restic
    8
    0 Stimmen
    8 Beiträge
    628 Aufrufe
    FrankMF
    Dann mal eben ausprobiert. Auf meinem Server war die Version 0.9.7 selber, mit go, gebaut. Dann mache ich das auch mit der v0.10.0 so. Aber bevor ich anfange, wird die v0.9.7 gesichert. mv /usr/local/bin/rest-server /usr/local/bin/rest-server_0_9_7 So erspare ich mir im Problemfall das selber bauen. Ok, dann die neue Version bauen. git clone https://github.com/restic/rest-server.git cd rest-server go run build.go Danach befindet sich im Verzeichnis die Binärdatei rest-server Die kopieren wir jetzt cp rest-server /usr/local/bin Danach kurzer Test # rest-server --version rest-server 0.10.0 (v0.10.0-6-g037fe06) compiled with go1.11.6 on linux/amd64 Gut Version passt Dann ein Backup gestartet. Das sichert einen Teil meines Home-Verzeichnis Files: 153 new, 100 changed, 177857 unmodified Dirs: 0 new, 1 changed, 0 unmodified Added to the repo: 81.881 MiB processed 178110 files, 80.571 GiB in 0:28 snapshot 607e0027 saved Applying Policy: keep the last 3 snapshots, 3 monthly snapshots keep 5 snapshots: ID Time Host Tags Reasons Paths --------------------------------------------------------------------------------------- fa97890e 2020-07-25 21:02:05 frank-XXX monthly snapshot /home/frank 5b073bbb 2020-08-30 10:17:27 frank-XXX monthly snapshot /home/frank f7cf37ef 2020-09-06 15:13:03 frank-XXX last snapshot /home/frank 0157462c 2020-09-13 13:32:12 frank-XXX last snapshot /home/frank 607e0027 2020-09-14 08:09:34 frank-XXX last snapshot /home/frank monthly snapshot --------------------------------------------------------------------------------------- 5 snapshots remove 1 snapshots: ID Time Host Tags Paths --------------------------------------------------------------------- 3010b7cc 2020-09-06 11:39:27 frank-XXX /home/frank --------------------------------------------------------------------- 1 snapshots 1 snapshots have been removed, running prune counting files in repo building new index for repo [1:34] 100.00% 17351 / 17351 packs So weit funktioniert das genau wie vorher. Im Changelog stand ja was von Subfoldern. Das betrifft mich nicht, weil ich für jeden User genau ein Verzeichnis habe. So mit alles Gut Dann warte ich mal morgen ab, ob die täglichen Backups der Server rund laufen.
  • ACER und der UEFI-Booteintrag!

    Linux
    1
    0 Stimmen
    1 Beiträge
    228 Aufrufe
    Niemand hat geantwortet
  • NodeBB - nach Plugin platt

    NodeBB
    1
    0 Stimmen
    1 Beiträge
    615 Aufrufe
    Niemand hat geantwortet