Minimal Init

Here is a minimal init program that runs after the kernel boot.  Well, it does nothing except printing a hello world statement.  The system kernel panics once the program finishes. The program working principle is to first mount the device file system, with the nmount(2) system call.  Then, print to the "/dev/console" and quit.  Before … Continue reading Minimal Init


My Thoughts

It has been two months since I posted my last post, which is about the GEOM gate mechanisms.  Recently, I have been sidetracked to other activities like speculating in bitcoins, Portuguese language games, etc. I fell in love with FreeBSD and Mac OS X at my age 17.  Well, to be precise, some geeks pushed … Continue reading My Thoughts

GEOM Gate Code Reading

In this article, we go through the user-space code of GEOM Gate in FreeBSD, which is responsible of exporting block devices to other hosts. About GEOM Gate GEOM Gate is a mechanism to allow block devices on one host to appear on another.  It can do interesting things from sharing an optical disc drive to … Continue reading GEOM Gate Code Reading


Little Status Update…

In case you wonder why there are not any new articles... I am fine, but I had been sick for a while.  I am writing something big and it will be ready next week or so.  Stay tuned and good luck.  🙂


Network Booting FreeBSD

Installing an operating system is easy for a computer or two.  What about installing for multiples of them?  In some situations, one wants to save money and time from buying that many boot devices and maintain the disk images separately.  Network boot comes handy.  It is relatively easy with FreeBSD, especially since we do not … Continue reading Network Booting FreeBSD


Getting FreeBSD Jail to Run

In this short article, I discuss the way to run a full-blown FreeBSD jail, with some common tunings to get it more "normal". Assumptions I assume the host has two network interfaces.  The "vtnet0" is Internet-facing and "vtnet1" is the intranet, where the jail will be running on.  This way, the jail does not have … Continue reading Getting FreeBSD Jail to Run


Network File System with Firewall in FreeBSD

Network file system nfs(8) in FreeBSD is built on top of rpc(3) infrastructure where rpcbind(8) daemon is responsible binding the services for the clients.  Together with the companion services rpc.lockd(8), rpc.statd(8), and mountd(8), providing the total service with a firewall is tricky since the ports are different all the time.  In addition, sometimes the services are better to … Continue reading Network File System with Firewall in FreeBSD