GNU/Linux >> Linux Esercitazione >  >> Linux

Come sostituire un disco in un pool ZFS non ridondante?

zpool attach pool old-disk new-disk

Ciò convertirà il vecchio disco in un mirror sia con il vecchio disco che con il nuovo disco e avvierà il resilvering, dopodiché potrai staccare il vecchio disco.

zpool detach pool old-disk

Testato con dispositivi loop:

# truncate -s 1G a b
# truncate -s 1200M c
# losetup  /dev/loop0 a
# losetup  /dev/loop1 b
# losetup  /dev/loop2 c
# zpool create test loop{0,1}
# zpool attach test loop1 loop2
# zpool status
      pool: test
 state: ONLINE
  scan: resilvered 62K in 0h0m with 0 errors on Wed Jul 31 13:43:19 2013
config:

        NAME        STATE     READ WRITE CKSUM
        test        ONLINE       0     0     0
          loop0     ONLINE       0     0     0
          mirror-1  ONLINE       0     0     0
            loop1   ONLINE       0     0     0
            loop2   ONLINE       0     0     0
# zpool detach test loop1
# zpool status
  pool: test
 state: ONLINE
  scan: resilvered 62K in 0h0m with 0 errors on Wed Jul 31 13:43:19 2013
config:

        NAME        STATE     READ WRITE CKSUM
        test        ONLINE       0     0     0
          loop0     ONLINE       0     0     0
          loop2     ONLINE       0     0     0

Non so se le cose fossero così diverse in `13 ma 'zfs replace' funziona su pool non ridondanti. Devi solo eseguire il comando 1 invece di staccare prima.

d1 è 1G, d2 è 2G, entrambi sono file vuoti in /tmp:

/t/test #> zpool create test /tmp/test/d1
/t/test #> zpool set autoexpand=on test
/t/test #> zpool status
  pool: test
 state: ONLINE
  scan: none requested
config:

    NAME            STATE     READ WRITE CKSUM
    test            ONLINE       0     0     0
      /tmp/test/d1  ONLINE       0     0     0

errors: No known data errors
/t/test #> zpool list
NAME    SIZE  ALLOC   FREE  EXPANDSZ   FRAG    CAP  DEDUP  HEALTH  ALTROOT
test   1008M   258K  1008M         -     0%     0%  1.00x  ONLINE  -


/t/test #> zpool replace test /tmp/test/d1 /tmp/test/d2


/t/test #> zpool status
  pool: test
 state: ONLINE
  scan: resilvered 61K in 0h0m with 0 errors on Sun Sep 18 18:55:32 2016
config:

    NAME            STATE     READ WRITE CKSUM
    test            ONLINE       0     0     0
      /tmp/test/d2  ONLINE       0     0     0

errors: No known data errors
/t/test #> zpool list
NAME    SIZE  ALLOC   FREE  EXPANDSZ   FRAG    CAP  DEDUP  HEALTH  ALTROOT
test   1.98G   408K  1.98G         -     0%     0%  1.00x  ONLINE  -

Linux
  1. Come partizionare un disco in Linux

  2. Come spostare /var su un disco separato come punto di montaggio separato (online)

  3. Come sostituire in modo sicuro un disco non ancora guasto in un array RAID5 Linux?

  4. Come scappare! nella parola d'ordine?

  5. Perché il mio pool ZFS non si espande utilizzando ZFS su Linux?

Come creare partizioni in Linux

Come controllare l'utilizzo dello spazio su disco in Linux

Come collegare gli editor online di ONLYOFFICE a OwnCloud

Come elencare le partizioni del disco in Linux

Come configurare un pool di archiviazione ZFS su Ubuntu

Come crittografare la partizione su Linux