# "error 2" "unknown filesystem" on boot after upgrading to 10



## underscore (Jan 26, 2014)

Hello,
I'm running a FreeBSD machine with its root on an geli-based zfs filesystem.
 So far everything worked, however after upgrading to 10.0 (via `freebsd-update`) my boot-prompt fails with "error 2" "unknown filesystem", as if it doesn't know ZFS. 
Of course I have the zfs_load="YES" set in my loader.conf, as well as vfs.root.mountfrom="tank/root", and since I stumbled upon this: http://lists.freebsd.org/pipermail/free ... 75504.html, I also added zpool_cache_load="YES", zpool_cache_type="/boot/zfs/zpool.cache" and zpool_cache_name="/boot/zfs/zpool.cache"

However this doesn't seem to work, and the machine still doesn't boot, after I enter the passwords for the geli - volumes, it hangs with "error 2", even if I load the ZFS-module by hand directly from the loader (with `enable-module zfs`). 

Does anyone has an idea what changed between 9.2 and 10.0 that could cause this? Why does it seem that my kernel/the bootloader doesn't know zfs, even though I can see them load the module? How do I rescue that system? 

Ah, when I boot via a USB-stick, I can mout the zpool, withou any problem, actually.


----------



## wblock@ (Jan 26, 2014)

*Re: "error 2" "unknown filesystem" on boot after upgrading t*



			
				underscore said:
			
		

> However this doesn't seem to work, and the machine still doesn't boot, after I enter the passwords for the geli - volumes, it hangs with "error 2", even if I load the ZFS-module by hand directly from the loader (with `enable-module zfs`).



Are you sure that's a loader command?


----------



## underscore (Jan 26, 2014)

*Re: "error 2" "unknown filesystem" on boot after upgrading t*

Ehm, i thought so, also the feedback was "module zfs will be loaded".


----------



## wblock@ (Jan 26, 2014)

*Re: "error 2" "unknown filesystem" on boot after upgrading t*

No, you're right.

Could the problem be that the pool needs to be upgraded?


----------



## trh411 (Jan 26, 2014)

*Re: "error 2" "unknown filesystem" on boot after upgrading t*

After you boot via the memstick can you do a `gpart show` and see what it reports?

EDIT: Afterthought ... 


			
				wblock@ said:
			
		

> Could the problem be that the pool needs to be upgraded?


Or the bootcode? I don't have any experience with `freebsd-update`, but maybe it mangled the bootcode somehow?


----------



## underscore (Jan 27, 2014)

*Re: "error 2" "unknown filesystem" on boot after upgrading t*



			
				wblock@ said:
			
		

> Could the problem be that the pool needs to be upgraded?


I don't know, was there a upgrade? But I somehow doubt it, as the error message is always the same independently on what I write after "zfs:".



			
				trh411 said:
			
		

> After you boot via the memstick can you do a `gpart show` and see what it reports?
> 
> EDIT: Afterthought ...
> 
> ...


I just set a fresh bootcode, so no, it shouldn't. 

`gpart show`:


```
root@:~ # gpart show
=>        34  5860533101  ada0  GPT  (2.7T)
          34           6        - free -  (3.0K)
          40         128     1  freebsd-boot  (64K)
         168     1048576     2  freebsd-ufs  (512M)
     1048744     4194304     3  freebsd-swap  (2.0G)
     5243048  5855290080     4  freebsd-zfs  (2.7T)
  5860533128           7        - free -  (3.5K)

=>        34  5860533101  diskid/DISK-WD-WMC1T0798722  GPT  (2.7T)
          34           6                               - free -  (3.0K)
          40         128                            1  freebsd-boot  (64K)
         168     1048576                            2  freebsd-ufs  (512M)
     1048744     4194304                            3  freebsd-swap  (2.0G)
     5243048  5855290080                            4  freebsd-zfs  (2.7T)
  5860533128           7                               - free -  (3.5K)

=>        34  5860533101  ada1  GPT  (2.7T)
          34           6        - free -  (3.0K)
          40         128     1  freebsd-boot  (64K)
         168     1048576     2  freebsd-ufs  (512M)
     1048744     4194304     3  freebsd-swap  (2.0G)
     5243048  5855290080     4  freebsd-zfs  (2.7T)
  5860533128           7        - free -  (3.5K)

=>        34  5860533101  ada2  GPT  (2.7T)
          34           6        - free -  (3.0K)
          40  5860533088     1  freebsd-zfs  (2.7T)
  5860533128           7        - free -  (3.5K)

=>        34  5860533101  ada3  GPT  (2.7T)
          34           6        - free -  (3.0K)
          40  5860533088     1  freebsd-zfs  (2.7T)
  5860533128           7        - free -  (3.5K)

=>        34  3907024829  da0  GPT  (1.8T)
          34  3907024829    1  freebsd-zfs  (1.8T)

=>      0  7821312  da1  BSD  (3.7G)
        0  1362080    1  freebsd-ufs  (665M)
  1362080  6459232       - free -  (3.1G)

=>        34  5860533101  diskid/DISK-WD-WMC1T0798510  GPT  (2.7T)
          34           6                               - free -  (3.0K)
          40         128                            1  freebsd-boot  (64K)
         168     1048576                            2  freebsd-ufs  (512M)
     1048744     4194304                            3  freebsd-swap  (2.0G)
     5243048  5855290080                            4  freebsd-zfs  (2.7T)
  5860533128           7                               - free -  (3.5K)

=>        34  5860533101  diskid/DISK-WD-WMC1T2524755  GPT  (2.7T)
          34           6                               - free -  (3.0K)
          40  5860533088                            1  freebsd-zfs  (2.7T)
  5860533128           7                               - free -  (3.5K)

=>        34  5860533101  diskid/DISK-WD-WMC1T2507461  GPT  (2.7T)
          34           6                               - free -  (3.0K)
          40  5860533088                            1  freebsd-zfs  (2.7T)
  5860533128           7                               - free -  (3.5K)

=>        34  3907024829  diskid/DISK-5743415A4133393430383537  GPT  (1.8T)
          34  3907024829                                     1  freebsd-zfs  (1.8T)

=>      0  7821312  diskid/DISK-20053550711437C02EE8  BSD  (3.7G)
        0  1362080                                 1  freebsd-ufs  (665M)
  1362080  6459232                                    - free -  (3.1G)

root@:~ #
```

Which looks fine (ada0 / ada1 are the two disks I can boot from). 

Strange thing is after a `gmirror load` (ada0p1 / ada1p1 are mirrored) `gpart show` can't read the table of ada0/ada1 anymore... However, I don't think this has something to do with my problem?


----------



## underscore (Jan 27, 2014)

*Re: "error 2" "unknown filesystem" on boot after upgrading t*

... erm ada0p2 / ada1p2 I mean.


----------



## underscore (Jan 30, 2014)

*Re: "error 2" "unknown filesystem" on boot after upgrading t*

Ok, I figured out what my problem was: the disk I have /boot on is too small, and when I forget to delete the old backup-kernel `freebsd-update install` goes wrong, even though it reports it finished successfully. So in my upgrade process something went wrong, I deleted the old kernel and ran `freebsd-update install` again and thought it would perform the same actions as before, but it didn't. 

So I fixed this by coping /boot from the memstick image over my /boot (Note: of course after backing up the zpool.cache and loader.conf. So now it boots again, I think I'll finish the update process and then build a new kernel from src to be on the safe side (in case the memstick -kernel is in some way special).

Thanks for the help!


----------



## wblock@ (Jan 30, 2014)

*Re: "error 2" "unknown filesystem" on boot after upgrading t*

That needs to be fixed.  Please enter a PR.


----------



## underscore (Jan 30, 2014)

*Re: "error 2" "unknown filesystem" on boot after upgrading t*

Done. http://www.freebsd.org/cgi/query-pr.cgi?pr=186278


----------



## wblock@ (Jan 30, 2014)

*Re: "error 2" "unknown filesystem" on boot after upgrading t*

Thank you.


----------

