From owner-freebsd-fs@FreeBSD.ORG Tue Jun 15 17:20:11 2010 Return-Path: Delivered-To: fs@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id EAA021065670 for ; Tue, 15 Jun 2010 17:20:11 +0000 (UTC) (envelope-from fty@employees.org) Received: from tyhouse.portbridge.com (tyhouse.portbridge.com [209.170.129.155]) by mx1.freebsd.org (Postfix) with ESMTP id 9FB008FC1B for ; Tue, 15 Jun 2010 17:20:11 +0000 (UTC) Received: from [10.116.32.157] (rtp-fty-87112.cisco.com [10.116.32.157]) by tyhouse.portbridge.com (8.14.3/8.14.3) with ESMTP id o5FHCR4B003636 for ; Tue, 15 Jun 2010 13:12:28 -0400 (EDT) (envelope-from fty@employees.org) Message-ID: <4C17B3A9.5000302@employees.org> Date: Tue, 15 Jun 2010 13:08:57 -0400 From: Frank Terhaar-Yonkers User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.1.10) Gecko/20100612 Lightning/1.0b1 Shredder/3.0.6pre ThunderBrowse/3.2.8.1 MIME-Version: 1.0 To: fs@freebsd.org Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: Subject: need to remove an active pool component X-BeenThere: freebsd-fs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Filesystems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 15 Jun 2010 17:20:12 -0000 Howdy - It seems I painted myself into a corner. I originally had ad16 as a hot spare to the raidz. Sometime back I used it temporarily because one of the disks in the raidz went offline (ended up being a bad SATA cable) and when repaired swapped the original back in. Intending to put ad16 back as the hotspare I used the wrong command(s) and added it to the pool instead - doh! Anyway, by the time I realized this files were already created on it and now I can't remove it. From reading, it seems that the ability to remove active elements from a pool is a long ways off. So what I was thinking was a bit of a hack to facilitate removing the disk: 1) create a sysctl variable to inhibit write to a particular disk in a pool. 2) parse the meta-data on the disk to get a list of files, then move off, then move back so the file ends up back in the pool but on the raidz. 3) When empty, I should be able to remove the disk - yes? I don't have the space elsewhere to back this thing up and reload it, which would be the easiest thing. Opinions? TIA, - Frank -------------------- tynas(toot)~ ->zs pool: typool state: ONLINE scrub: none requested config: NAME STATE READ WRITE CKSUM typool ONLINE 0 0 0 raidz1 ONLINE 0 0 0 ad4 ONLINE 0 0 0 ad6 ONLINE 0 0 0 ad8 ONLINE 0 0 0 ad14 ONLINE 0 0 0 ad16 ONLINE 0 0 0 errors: No known data errors tynas(toot)~ ->zpool remove typool ad16 cannot remove ad16: only inactive hot spares or cache devices can be removed Exit 1 tynas(toot)~ ->zpool detach typool ad16 cannot detach ad16: only applicable to mirror and replacing vdevs Exit 255 tynas(toot)~ ->zpool offline typool ad16 cannot offline ad16: no valid replicas Exit 1 -- \\\\////\\\\////\\\\\////\\\\\////\\\\////\\\\ Frank Terhaar-Yonkers W4FTY TRA 8325/L3 Apex, North Carolina fty@employees.org