Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 8 Apr 2016 21:53:52 +0200
From:      Sebastian Wolfgarten <sebastian@wolfgarten.com>
To:        freebsd-questions@freebsd.org
Subject:   Zfs - broken disk - add instead of attach - How to go back to mirrored setup?
Message-ID:  <6ACA8DAA-7D86-4FD0-B08C-2030CFF575C1@wolfgarten.com>

next in thread | raw e-mail | index | archive | help
Dear all,

I used to have a ZFS-based mirror and now thanks to a typo I have one =
big disk of 5.4TB instead of a 2.7T mirror - how do I get back to having =
a mirror?

Here is what happened:

Last week one of my hard drives broke requiring me to detach & replace =
the disk:

server1 - ZFS pool - HEALTH fault=20

NAME    SIZE  ALLOC   FREE   FRAG  EXPANDSZ    CAP  DEDUP  HEALTH  =
ALTROOT
zroot  2.72T   763G  1.97T    18%         -    27%  1.00x  DEGRADED  -=20=


 pool: zroot
state: DEGRADED
status: One or more devices has been removed by the administrator.
Sufficient replicas exist for the pool to continue functioning in a
degraded state.
action: Online the device using 'zpool online' or replace the device =
with
'zpool replace'.
scan: scrub repaired 0 in 3h48m with 0 errors on Fri Mar 25 10:48:35 =
2016
config:

NAME                     STATE     READ WRITE CKSUM
zroot                    DEGRADED     0     0     0
  mirror-0               DEGRADED     0     0     0
    5383010007106655398  REMOVED      0     0     0  was
/dev/diskid/DISK-Z1F0LSM7p3
    gpt/zfs1             ONLINE       0     0     0

errors: No known data errors

# zpool detach zroot /dev/diskid/DISK-Z1F0LSM7p3

After the provider put in a new disk, I made a mistake (i.e. I added the =
disk to the zroot pool instead of attaching it) and now I was wondering =
how to recover from this situation:

# zpool add zroot ada0

Here is what zroot now looks like:

# zpool status zroot
  pool: zroot
 state: ONLINE
  scan: scrub canceled on Fri Apr  8 21:27:31 2016
config:

	NAME        STATE     READ WRITE CKSUM
	zroot       ONLINE       0     0     0
	  gpt/zfs1  ONLINE       0     0     0
	  ada0      ONLINE       0     0     0

errors: No known data errors

I tried to remove/disable/offline the second disk but that did not work:

# zpool offline zroot ada0
cannot offline ada0: no valid replicas
# zpool remove zroot ada0
cannot remove ada0: only inactive hot spares, cache, top-level, or log =
devices can be removed
# zpool detach zroot ada0
cannot detach ada0: only applicable to mirror and replacing vdevs

Now my question is: How can I get back to having a mirror without =
loosing all the data on ada1? Any ideas? Using ZFS split maybe?

Many thanks.

Best regards
Sebastian




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6ACA8DAA-7D86-4FD0-B08C-2030CFF575C1>