---
# System prepended metadata

title: google summer of code

---

# google summer of code Bonding period
This the first week of google summer of code.
My mentor gave me a challenge:to boot a bhyve-vm on NFS,
therefore I decided to setup the NFS.
First We have to setup /etc/export,
```
/usr/nfs -alldirs -maproot=root -network 192.168.67.0 -mask 255.255.255.0 
```
we must take more attention on bridge0 addm wlan0 addm tap0 ,because it connected 
to our physical interface 
```
# ifconfig tap0 create
# ifconfig tap0 up 
# ifconfig bridge0 create 
# ifconfig bridge0 addm wlan0 addm tap0 
# ifconfig bridge0 up 
# ifconfig bridge0 192.168.67.1/24 
# cd ~/boot_root_nfs 
# ./boot_root_nfs 192.168.67.1:/usr/nfs /mnt 
```
problems:
I met some problem with my booting process. It seems to be
a device problem.However, it is the problem about fstab.
I copied my /etc/fstab from my baremetal system,
however, I needed to modify it to accommodate the NFS configuration.
```
Can't open `/dev/gpt/efiboot0'
/dev/gpt/efiboot0: UNEXPECTED INCONSISTENCY; RUN fsck_msdosfs MANUALLY.
THE FOLLOWING FILE SYSTEM HAD AN UNEXPECTED INCONSISTENCY:
        msdosfs: /dev/gpt/efiboot0 (/boot/efi)
Automatic file system check failed; help!
ERROR: ABORTING BOOT (sending SIGTERM to parent)!
2024-05-17T22:24:07.856067+08:00 - init 1 - - /bin/sh on /etc/rc terminated abnormally, going to single user mode
Enter full pathname of shell or RETURN for /bin/sh: fsck -y /dev/gpt/backup
```
**Conclusion**
I successfully boot with relen/14.1,however,after I compiled my kernel into 15.0,I found that my bhyve hangs after bootup.Therefore,I decided to compile to current on my baremetal system.Although I didnt make it run on CURRENT,it helps me a lot on concepts of compiling kernel and how to create a NFS file system.

## Reference

https://oshogbo.vexillium.org/blog/39/
https://oshogbo.vexillium.org/blog/28/