0

I am trying to install FreeBSD Sparc64 on my SunFire440 machine, I followed the tutorials to Install FreeBSD Root on ZFS using this tutorial link. Only the changes I made is that instead of using mirror I tried configuring raidz1 with four internal disks. Everything was fine while installing but booting after installation shows the error below:-

ZFS: i/o error - all block copies unavailable
ZFS: can't read MOS object directory
ZFS: can't find root filesystem 

FreeBSD/sparc64 ZFS enabled bootstrap loader, Revision 1.0
(root@releng1.nyi.freebsd.org, Wed Nov 12 03:13:59 UTC 2014)

bootpath="" 

can't load 'kernel'

Any ideas?

Megamind
  • 1
  • 1

1 Answers1

3

First of all, installing FreeBSD on a Sun hardware is a serious crime, you could be decapitated in some countries (however, I think that several years in prison camp on Chukotka will be enough) !

Second, 10.x version family includes a bsdinstall pretty capable of installing FreeBSD on ZFS root without the need of emulating sunrise by hand.

Third, there's could be several reasons of this:

a) your pool is broken, there's not enough available data indeed

b) SunFire 440 BIOS is unable to access the boot blocks wherever they are, for example beyond 1 Tb, beyonf 2 Tb, or whatever

c) gptzfsboot is unable to do so.

d) kernel ZFS code is unable to read and understand vdev labels (it happens sometimes) by itself.

I suggest you boot from USB stick and import this pool. If it will be imported successfully, this will exclude a). The rest is up to you to investigate, for example you can create a separate hybrid /boot slice to boot the kernel and/or libzfs from, and lots of other options (reslice the disk, make the root pool smaller, and so on). I stepped on the similar issue by myself, from now I have to use an USB stick to boot up. I'm considering creating smaller root pool, because I suspect my GigaByte MB BIOS.

And remember: Solaris ZFS implementation is still way, way better !

drookie
  • 8,051
  • 1
  • 17
  • 27