1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

ZFS unsupported ZFS version 5000 (should be 28) can't find /boot/zfsloader

Discussion in 'Installing and Upgrading FreeBSD' started by meteor8488, Mar 27, 2013.

  1. meteor8488

    meteor8488 New Member

    Messages:
    48
    Likes Received:
    0
    I have two zpools:
    1. a raidz2 zpool named zroot, made up by 6 HDDs, root is on this zpool
    2. a mirrored zpool named ssd, made up by 2 SSDs

    I upgraded the zpool version yesterday. Today when I reboot the server, the server can't boot. Below is the error message:
    Code:
    ZFS: unsupported ZFS version 5000 (should be 2Cool
    can't find /boot/zfsloader
    
    default: ssd::/boot/kernel/kernel
    boot:
    can't find /boot/zfsloader
    
    I tried to use FB9.1 current FreeBSD 9.1-CURRENT to boot the server to fix this issue, but if I run fixit#zpool import -f zroot the / on the LiveCD will be replaced by / on zroot, and there is no device in /dev.

    If I run fixit#zpool set mountpoint /mnt zroot then I'll get an error message:
    Code:
    can't open zroot: dataset doesn't exist
    I have no idea about how to fix it, can anyone help?
     
  2. SirDice

    SirDice Moderator Staff Member Moderator

    Messages:
    17,392
    Likes Received:
    7
    Try updating the bootcode in the freebsd-boot partition.
     
  3. meteor8488

    meteor8488 New Member

    Messages:
    48
    Likes Received:
    0
    The problem is that if I don't import the zroot. I can't update the bootcode in freebsd-boot partition. But if I import zroot, the /dev on zroot will overwrite /dev on livecd, and I can't find any HDD.
     
  4. ondra_knezour

    ondra_knezour Member

    Messages:
    454
    Likes Received:
    1
    Do you have /mnt in your filesystem when booting from LiveCD?

    As far as I can remember, I have to mess with creating mountpoint somewhere, something like
    # mkdir /tmp/mnt
    # zpool import -o altroot=/tmp/mnt zroot


    Even better may be
    Consult zpool(8) about it.
     
  5. SirDice

    SirDice Moderator Staff Member Moderator

    Messages:
    17,392
    Likes Received:
    7
    You don't need to import it to update the bootcode.

    # gpart bootcode -b /boot/pmbr -p /boot/gptzfsboot -i 1 ada0
    (That's assuming the disk is ada0 and the freebsd-boot partition is the first)
     
  6. meteor8488

    meteor8488 New Member

    Messages:
    48
    Likes Received:
    0
    Hi, the /boot is on zfs, so I think /boot/gptzfsboot is in zroot. If I don't import it, I'm not sure that I can use part to recreate the bootcode.

    Anyway, let me try first.
     
  7. SirDice

    SirDice Moderator Staff Member Moderator

    Messages:
    17,392
    Likes Received:
    7
    Not if you booted from the Live CD.
     
  8. ondra_knezour

    ondra_knezour Member

    Messages:
    454
    Likes Received:
    1
    SirDice is right, you don't need read access to anything on disk in this case, in fact you only want to "infect" couple of sectors on HDD with something available on live medium (CD/USB).
     
  9. kpa

    kpa Member

    Messages:
    4,007
    Likes Received:
    9
  10. meteor8488

    meteor8488 New Member

    Messages:
    48
    Likes Received:
    0
    Thanks very much, it works!