Cache ZFS na mesma unidade (partição diferente) como /?

4

Desde o upgrade para o 16.04, mudei meu / home para um zfs-pool para me familiarizar com o zfs.

Já mostrando sua força, identificou a baixa qualidade de minhas unidades de longa duração:

# zpool status -v
  pool: homepool
 state: DEGRADED
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 16 11:09:17 2016
    402G scanned out of 1,63T at 76,8M/s, 4h41m to go
    401G resilvered, 24,10% done
config:

    NAME        STATE     READ WRITE CKSUM
    homepool    DEGRADED     0     0     0
      mirror-0  DEGRADED     0     0     0
        sdb     UNAVAIL      0     0     0
        sdc     ONLINE       0     0     0
        sdd     ONLINE       0     0    1K  (resilvering)
      mirror-1  ONLINE       0     0     0
        sde     ONLINE       0     0     0
        sdf     ONLINE       0     0     0
    cache
      sda4      REMOVED      0     0     0

errors: No known data errors

sdb vem se arrastando há anos, mas com a soma de verificação zfs, ficou aparente que às vezes produz dados ruins. É claro que tal comportamento não é aceito pelo zfs, que marcou o drive como defeituoso - o que me levou a adicionar sdd , inicializando a resilvering.

Agora - o zfs removeu sdb do conjunto duas vezes. Ambas as vezes sda4 foram removidas também. sda1 contém meu / . Em ambas as ocasiões, foi encontrado em ro -state subsequente à remoção de sdb .

Isso tudo está conectado ou é mais provável que eu tenha mais de uma unidade defeituosa?

Meu raciocínio é que sdb está corrompido, mas como é armazenado em cache, alguns dos erros podem ser vistos como provenientes do cache e como o cache está na mesma unidade física que a partição / , a raiz fica nuked when zfs tenta se recuperar de erros vistos em sdb e sda4 devido a ambos os drives físicos serem marcados como produtores de lixo.

Isso parece provável?

A tentativa de remontar / não funciona:

root@computer:~# df /
-su: /bin/df: Input/output error
root@computer:~# df /de-su: cannot create temp file for here-document: Read-only file system
-su: cannot create temp file for here-document: Read-only file system
^C
root@computer:~# mount | grep sda
/dev/sda1 on / type ext4 (ro,relatime,errors=remount-ro,data=ordered)    
root@computer:~# mount -o remount,rw /dev/sda1 /
mount: cannot remount /dev/sda1 read-write, is write-protected

EDITAR:

Desde que eu adicionei o disco extra (removendo assim a unidade sata cd-rom) eu não vi o problema.

# zpool status -v
  pool: homepool
 state: ONLINE
  scan: scrub repaired 0 in 6h37m with 0 errors on Wed Oct 19 15:23:30 2016
config:

    NAME        STATE     READ WRITE CKSUM
    homepool    ONLINE       0     0     0
      mirror-0  ONLINE       0     0     0
        sdb     ONLINE       0     0     0
        sdc     ONLINE       0     0     0
        sdd     ONLINE       0     0     0
      mirror-1  ONLINE       0     0     0 
        sde     ONLINE       0     0     0 
        sdf     ONLINE       0     0     0
    cache
      sda4      ONLINE       0     0     0 

errors: No known data errors

Tudo parece ter sido bom por quase duas semanas, mas o disco quebrado ainda está lá, imagino que deveria ter continuado a espalhar lixo, mas não parece.

    
por azzid 16.10.2016 / 12:54

0 respostas