zroot won't mount after 9.0-RC2 -> 9.0-RELEASE upgrade

George Kontostanos gkontos.mail at gmail.com
Wed Feb 15 18:03:15 UTC 2012


On Wed, Feb 15, 2012 at 7:48 PM, Daniel Shahaf <danielsh at apache.org> wrote:
> So far we've tried:
>
> - 'gpart bootcode -b'
> - load geom_part_gpt.ko
> - using zpool.cache from the 9.0-RELEASE CD
>
> And none of that seems to have had any effect.
>
> Additional info: from the CD environment, 'zpool import' reports an old
> 'tank' pool on devices mfid[2-5].  (The 'zroot' pool uses mfid[0-5]p3.)
>
> Any further ideas, please?
>
> Thanks for all the suggestions so far.

You are running ZFS version 4 while the default is 5 on 9.0-RELEASE

---> Assuming your pool is called zroot
--->This is the way to update your zpool.cache: <---

Boot with 9.0-RELEASE and proceed with:

#zpool import -o altroot=/mnt -o cachefile=/var/tmp/zpool.cache zroot

#zfs set mountpoint=/mnt zroot
#zfs set mountpoint=/mnt/usr zroot/usr
#zfs set mountpoint=/mnt/var zroot/var
#zfs set mountpoint=/mnt/tmp zroot/tmp

## Ignore any warnings##

Now export the pool:

#zpool export -f zroot

Import the pool back and update the zpool.cache:

#zpool import -o cachefile=/var/tmp/zpool.cache zroot
#cp /var/tmp/zpool.cache /mnt/boot/zfs/zpool.cache

Make sure that bootfs is set correctly:

#zpool set bootfs=zroot zroot

Now, unmount any ZFS datasets

#zfs umount -af

And fix mountpoints:

#zfs set mountpoint=legacy zroot
#zfs set mountpoint=/tmp zroot/tmp
#zfs set mountpoint=/usr zroot/usr
#zfs set mountpoint=/var zroot/var

That should be enough to update your zpool.cache

If this still doesn't work then you can upgrade your ZFS version to 5.

Make sure you have backups first!!!

Before unmounting your datasets issue a:

zfs upgrade -a

-- 
George Kontostanos
Aicom telecoms ltd
http://www.aisecure.net


More information about the freebsd-questions mailing list