GNU/Linux >> Znalost Linux >  >> Linux

Jak vyměnit disk v neredundantním fondu ZFS?

zpool attach pool old-disk new-disk

Tím se starý disk převede na zrcadlo se starým i novým diskem a začne se resilverování, po kterém můžete starý disk odpojit.

zpool detach pool old-disk

Testováno se smyčkovými zařízeními:

# 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

Nevím, jestli to bylo v `13 tak odlišné, ale 'zfs nahradit' funguje na neredundantních fondech. Místo odpojení nejprve spustíte příkaz 1.

d1 je 1G, d2 je 2G, oba jsou prázdné soubory v /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. Jak nastavit systém souborů ZFS v systému Linux pomocí příkladů příkazů zpool

  2. Jak mohu monitorovat disk io?

  3. Jak rozšířit linuxový PV oddíl online po růstu virtuálního disku

  1. Jak rozdělit disk v Linuxu

  2. Jak uniknout! v hesle?

  3. Proč se můj fond ZFS nerozšiřuje pomocí ZFS na Linuxu?

  1. Jak nahradit řetězec v souboru (souborech)?

  2. Jak přesunout /tmp na samostatný disk jako samostatný bod připojení (online)

  3. Jak přesunout /var na samostatný disk jako samostatný bod připojení (Online)