Skip to content

ZFS - One Disk Pool -> Mirror Pool

Linux
  • Auf meinem neuen Rechner, habe ich einen Proxmox installiert. Als Datengrab hatte ich eine Platte meines alten RAID Verbundes genommen und dort eingebaut.

    Dann alle Daten vom NAS auf die neue Platte im Proxmox geschaufelt. Die Platte sieht so aus.

    root@pve:~# zpool status
      pool: ZFS-Pool
     state: ONLINE
    config:
    
    	NAME                                        STATE     READ WRITE CKSUM
    	ZFS-Pool                                    ONLINE       0     0     0
    	  ata-WDC_WD40EZRZ-00GXCB0_WD-WCC7K6XD2C26  ONLINE       0     0     0
    
    errors: No known data errors
    

    Ok, so weit so gut. Nachdem jetzt alle Daten drüben sind, ich das so weit es ging kontrolliert habe, nehme ich jetzt die zweite Platte aus dem NAS heraus und möchte diese zu dem ZFS-Pool hängen, so das ein Mirror entsteht. Keine Sorge, wenn was schief geht, ich habe auch immer noch ein Backup des NAS 🙂

    Mal schnell im Netz ein paar Seiten angeschaut und ein, zwei Videos angesehen. Ich denke ich weiß jetzt, wie es geht ....

    Ok, erster Versuch

    Bitte nicht die Disk Label sda sdb usw. benutzen! Nur die IDs aus /dev/disk/by-id !!

    root@pve:~# zpool attach ZFS-Pool sda sdb
    cannot attach sdb to sda: no such device in pool
    

    Hmm, geht nicht. Mir war aber sehr schnell klar, woran das lag. Wie man im Status sieht, hat die PVE Software, den Namen von /dev/disk/by-id genommen.

    root@pve:/dev/disk# ls by-id/
    ata-WDC_ata-WDC_WD40EZRZ-00GXCB0_WD-WCC7K6XD2C26
    [..gekürzt..]
    

    Ich hatte jetzt folgendes eingegeben

    root@pve:~# zpool attach ZFS-Pool ata-WDC_WD40EZRZ-00GXCB0_WD-WCC7K6XD2C26 sdb
    

    Nach kurzer Zeit war der Befehl fertig. Kontrolle

    root@pve:~# zpool status
      pool: ZFS-Pool
     state: ONLINE
    status: One or more devices is currently being resilvered.  The pool will
    	continue to function, possibly in a degraded state.
    action: Wait for the resilver to complete.
      scan: resilver in progress since Sun Oct 17 08:25:49 2021
    	55.7G scanned at 6.19G/s, 264K issued at 29.3K/s, 838G total
    	0B resilvered, 0.00% done, no estimated completion time
    config:
    
    	NAME                                          STATE     READ WRITE CKSUM
    	ZFS-Pool                                      ONLINE       0     0     0
    	  mirror-0                                    ONLINE       0     0     0
    	    ata-WDC_WD40EZRZ-00GXCB0_WD-WCC7K6XD2C26  ONLINE       0     0     0
    	    sdb                                       ONLINE       0     0     0
    
    errors: No known data errors
    

    Wie man sieht, ist der Mirror vorhanden. Der Mirror macht aktuell einen "resilver", ok kann ich mir nicht richtig übersetzen aber ich weiß ja was er jetzt macht. Er spiegelt die Daten von der einen Platte auf die anderen. Später sieht das so aus.

    root@pve:/dev/disk# zpool status -v ZFS-Pool
      pool: ZFS-Pool
     state: ONLINE
    status: One or more devices is currently being resilvered.  The pool will
    	continue to function, possibly in a degraded state.
    action: Wait for the resilver to complete.
      scan: resilver in progress since Sun Oct 17 08:25:49 2021
    	838G scanned at 502M/s, 185G issued at 111M/s, 838G total
    	187G resilvered, 22.06% done, 01:40:33 to go
    config:
    
    	NAME                                          STATE     READ WRITE CKSUM
    	ZFS-Pool                                      ONLINE       0     0     0
    	  mirror-0                                    ONLINE       0     0     0
    	    ata-WDC_WD40EZRZ-00GXCB0_WD-WCC7K6XD2C26  ONLINE       0     0     0
    	    sdb                                       ONLINE       0     0     0  (resilvering)
    
    errors: No known data errors
    

    OK, ist noch dran 🙂

    Jetzt so im Nachhinein betrachtet, bekomme ich ein wenig Kopfschmerzen, ob ich nicht auch besser die by-id benutzt hätte!?? Das weiß ich aktuell nicht, muss ich googeln.

    Was man machen könnte, das Laufwerk sdb detachen und dann mit by-id attachen. Aber, ob das Sinn macht???

    Hier ein netter Beitrag im Netz, was man machen kann wenn die Label falsch sind.

  • Manjaro KDE Plasma 21.2.6

    Linux
    16
    0 Stimmen
    16 Beiträge
    421 Aufrufe
    FrankMF

    @FrankM sagte in Manjaro KDE Plasma 21.2.6:

    Eines betrifft die Anordnung der Icons auf dem Desktop. Die Anordnung, die ich wähle, werden immer wieder geändert. Unschön, aber den Desktop nutze ich so gut wie gar nicht. Also kann ich auch auf den Fix warten.

    Kann noch was dauern
    https://pointieststick.com/2023/03/03/this-week-in-kde-plasma-6-begins/

    Desktop icons on the active activity should no longer inappropriately re-arrange themselves when the set of connected screens changes. However during the process of investigation, we discovered that the code for storing desktop file position is inherently problematic and in need of a fundamental rewrite just like we did for multi-screen arrangement in Plasma 5.27. This will be done for Plasma 6.0, and hopefully make Plasma’s long history of being bad about remembering desktop icon positions just that–history (Marco Martin, Plasma 5.27.3. Link)

  • ZFS - Wichtige Befehle

    Linux
    2
    0 Stimmen
    2 Beiträge
    386 Aufrufe
    FrankMF

    Unter dem Beitrag sammel ich mal ein paar Beispiele, für mich zum Nachlesen 🙂

    Den Anfang macht die

    ZFS-Replication

    Ich hatte Am Anfang ein wenig Verständnisprobleme, bis es klar war, das diese Replication von Pool zu Pool funktioniert. Also brauchen wir zwei vorhandene ZFS-Pools.

    root@pbs:/mnt/datastore/datapool/test# zfs list NAME USED AVAIL REFER MOUNTPOINT Backup_Home 222G 677G 222G /mnt/datastore/Backup_Home datapool 2.36G 1.75T 2.36G /mnt/datastore/datapool

    Wir erzeugen ein Dataset im datapool

    zfs create datapool/docs -o mountpoint=/docs

    Wir erzeugen eine Datei mit Inhalt

    echo "version 1" > /docs/data.txt

    Wir erzeugen einen Snapshot

    zfs snapshot datapool/docs@today

    Kontrolle

    root@pbs:/mnt/datastore/datapool/test# zfs list -t snapshot NAME USED AVAIL REFER MOUNTPOINT datapool/docs@today 0B - 96K -

    Wir replizieren den vorhandenen Snapshot zum ZFS-Pool Backup_Home und speichern ihn da im Dataset test.

    zfs send datapool/docs@today | zfs receive Backup_Home/test

    Nun befinden sich die Daten in dem anderen ZFS-Pool

    root@pbs:/mnt/datastore/datapool/test# ls /mnt/datastore/Backup_Home/test/ data.txt

    Und was mich am meisten interessiert, ist wie man das zu einem anderen Server schickt 😉

    zfs send datapool/docs@today | ssh otherserver zfs receive backuppool/backup

    Den Test reiche ich dann später nach.

    Quelle: https://www.howtoforge.com/tutorial/how-to-use-snapshots-clones-and-replication-in-zfs-on-linux/

    ZFS inkrementelle Replication

    Als, nur die geänderten Daten senden!

    Wir erzeugen ein paar Dateien

    root@pbs:/mnt/datastore/datapool/test# echo "data" > /docs/data1.txt root@pbs:/mnt/datastore/datapool/test# echo "data" > /docs/data2.txt root@pbs:/mnt/datastore/datapool/test# echo "data" > /docs/data3.txt root@pbs:/mnt/datastore/datapool/test# echo "data" > /docs/data4.txt

    Neuer Snapshot

    zfs snapshot datapool/docs@17:02

    Liste der Snapshots

    root@pbs:/mnt/datastore/datapool/test# zfs list -t snapshot NAME USED AVAIL REFER MOUNTPOINT datapool/docs@today 56K - 96K - datapool/docs@17:02 0B - 112K -

    Wir senden dieinkrementelle Replication

    zfs send -vi datapool/docs@today datapool/docs@17:02 | zfs receive Backup_Home/test send from datapool/docs@today to datapool/docs@17:02 estimated size is 38.6K total estimated size is 38.6K cannot receive incremental stream: destination Backup_Home/test has been modified since most recent snapshot

    Dazu schreibt die Anleitung, die ich unten verlinkt habe, das die Daten verändert wurden. Warum, verstehe ich aktuell noch nicht. Mit -F im send Befehl erzwingt man einen Rollback zum letzten Snapshot.

    zfs send -vi datapool/docs@today datapool/docs@17:02 | zfs receive -F Backup_Home/test send from datapool/docs@today to datapool/docs@17:02 estimated size is 38.6K total estimated size is 38.6K

    Und Kontrolle

    ls /mnt/datastore/Backup_Home/test/ data1.txt data2.txt data3.txt data4.txt data.txt

    Quelle: https://klarasystems.com/articles/introduction-to-zfs-replication/

  • Kopia

    Allgemeine Diskussionen
    1
    0 Stimmen
    1 Beiträge
    253 Aufrufe
    Niemand hat geantwortet
  • Kopia - Administrative Aufgaben

    Kopia
    1
    0 Stimmen
    1 Beiträge
    240 Aufrufe
    Niemand hat geantwortet
  • Wireguard - nmcli

    Wireguard
    1
    0 Stimmen
    1 Beiträge
    445 Aufrufe
    Niemand hat geantwortet
  • ReactPHP auf einem ROCKPro64 testen

    Linux
    1
    0 Stimmen
    1 Beiträge
    172 Aufrufe
    Niemand hat geantwortet
  • Nextcloud ohne https lokal nutzen!?

    Verschoben Nextcloud
    1
    0 Stimmen
    1 Beiträge
    728 Aufrufe
    Niemand hat geantwortet
  • SSH Login ohne Passwort

    Angeheftet Linux
    4
    0 Stimmen
    4 Beiträge
    1k Aufrufe
    FrankMF

    Wie ihr ja wisst, benutze ich das Forum hier auch gerne als Notizbuch 🙂 Also mal wieder was hier notieren. Mein Windows Systemadmin sagte mir heute, das es auch folgendes gibt

    # ssh-keygen -t ed25519 Generating public/private ed25519 key pair. Enter file in which to save the key (/root/.ssh/id_ed25519): /tmp/ed Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /tmp/ed Your public key has been saved in /tmp/ed.pub The key fingerprint is: SHA256:D33HCTW7Dy0p5kQdFTkPudx1PQh0EHFgkBvxy8KwhGM root@frank-ms7c92 The key's randomart image is: +--[ED25519 256]--+ | o=O*o=+=| | . oo o+oB+| | E o o.o.o+*| | . o +o...oo=o| | .So.o= O .| | o.= o + | | . . .| | | | | +----[SHA256]-----+

    Der Key liegt nur in /tmp kopieren lohnt also nicht 🙂

    Ob das jetzt die Zukunft ist, kann ich nicht beantworten. Ich wollte es aber hier mal festhalten, weil es wohl mittlerweile auch von vielen Projekten benutzt wird.

    Link Preview Image ssh-keygen - Wikipedia

    favicon

    (en.wikipedia.org)