From owner-freebsd-current@FreeBSD.ORG Thu Oct 11 19:04:45 2007 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2164716A41A for ; Thu, 11 Oct 2007 19:04:45 +0000 (UTC) (envelope-from thompsa@FreeBSD.org) Received: from heff.fud.org.nz (203-109-251-39.static.bliink.ihug.co.nz [203.109.251.39]) by mx1.freebsd.org (Postfix) with ESMTP id 6ABC513C467 for ; Thu, 11 Oct 2007 19:04:44 +0000 (UTC) (envelope-from thompsa@FreeBSD.org) Received: by heff.fud.org.nz (Postfix, from userid 1001) id 12B471CC5E; Fri, 12 Oct 2007 08:04:42 +1300 (NZDT) Date: Fri, 12 Oct 2007 08:04:41 +1300 From: Andrew Thompson To: "Ralf S. Engelschall" Message-ID: <20071011190441.GA40950@heff.fud.org.nz> References: <20071011184340.GA13972@engelschall.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20071011184340.GA13972@engelschall.com> User-Agent: Mutt/1.5.13 (2006-08-11) Cc: freebsd-current@freebsd.org Subject: Re: reanimate ZFS pool after disk cloning and host changing X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Oct 2007 19:04:45 -0000 On Thu, Oct 11, 2007 at 08:43:40PM +0200, Ralf S. Engelschall wrote: > I've a FreeBSD 7-CURRENT (as of 2007-10-09) running in a VirtualBox > virtual machine and with all filesystems except /boot on ZFS. Now that > we switched to 7.0-PRERELEASE and 8-CURRENT I today created another > virtual machine and just cloned the disks (with "vboxmanage clonevdi", > but it doesn't matter here). > > When I then booted the new virtual machine with the cloned disks, the > root filesystem couldn't be mounted during boot via "zfs:zp1/root" as > the ZFS pool "zp1" is no longer available. > > So I booted into the Fixit environment from > "7.0-CURRENT-200709-i386-disc1.iso" and tried "zpool import". It was > able to detect the pool on device ad0s1f. The problem just is that the > hostid has changed (which is correct), so I thought I just have to > re-import the ZFS pool with "zfs import -R /zp1 -f zp1". This still > worked just fine: all filesystem were available under temporary /zp1 > now (I had to use this alternative root or the Fixit environment is > immediately dead). But once I then reboot into the system, the ZFS pool > is again not found via "zfs:zp1/root"! > > In tried multiple times with various ways in the Fixit environment: > "zfs import zp1" is denied because the hostid is different, "zfs import > -f zp1" does the trick (although breaks the Fixit environent) but > after reboot the ZFS pool again gone, "zfs import -R /zp1 -f zp1" does > also the trick but here again the ZFS pool is gone after reboot. > > So, the silly question is: what is the correct way to reanimate a ZFS > pool after the host has changed, so that one can again directly boot > from from one of its filesystems (here "zp1/root")? Is /boot/zfs/zpool.cache up to date after importing the pool? If your seperate /boot filesystem isnt mounted when you import then you will need to overwrite it manually. Andrew