FreeNAS (Photo credit: Wikipedia)
Besides using third party online cloud services such as Dropbox or Pogoplug, you can always set up your own personal cloud at home. In my opinion, a personal cloud should not route your data to any third party service, and so even Pogoplug touts as a personal cloud solution — your data still route through their network first.
OK, before we go even further into this post, I should make clear that a cloud can mean many things. To some people, a cloud should be able to sync things. To others, a cloud should automate things such as push and pull data — similar to iCloud. Then there are folks who think cloud as expandable/scalable storage (either automatically or manually). To me, a personal cloud can be all of the above and more. Unfortunately, to have a personal cloud to do all of the above and more, one might have to go through a third party cloud service which touts as personal cloud — this to me isn’t truly a personal cloud!
In this blog post, I prefer to create a personal cloud that I host on my own machines. Although the solution I’m going to talk about isn’t as elegant as iCloud or Dropbox, but at least this solution is somewhat capable of allowing you to interact with your personal cloud as if it’s an unlimited/scalable storage cloud (but manually scalable). Our solution has to be manually scalable since when we want more storage capacity we have to add more storage means. When I say more storage means, I mean we have to add either more hardware or to configure our personal storage cloud software to handle larger storage capacity.
So, what is our personal storage cloud solution? Virtualizing FreeNAS! Yes, FreeNAS is just a software which specializes in allowing people to create a free network-attached storage server. When one uses FreeNAS natively (i.e., not virtualizing it), then it’s just a free network-attached storage server solution. Now, imagining one can install FreeNAS onto VirtualBox, suddenly everything changes as one can begin utilizing FreeNAS as a personal storage cloud solution!
How is the virtualization of FreeNAS can provide us a personal storage cloud solution? We can always add more virtual hard disks with the largest virtual hard disk size. At this point in time VirtualBox allows largest virtual hard disk to be around 2 Terabytes. You might be curious, what if you don’t have enough real disk space to support the humongous capacity (i.e., stringing together many large virtual hard disks under one virtual machine) of virtual hard disks right? Well, the marvelous thing about virtualization is that you don’t actually have to have exactly the amount of real hard disk space until the virtual hard disks are actually growing that large. In the worst case scenario, you can always move the virtualization of your FreeNAS onto a system with large enough storage capacity (i.e., move the VirtualBox virtual machine which runs FreeNAS and all of the attached virtual hard disks to a physical system which has larger storage capacity).
Meanwhile, working with FreeNAS in VirtualBox will not harm your real system in anyway, because it’s virtualization! You can play with FreeNAS in VirtualBox without fear, and this leads to allowing you to understand FreeNAS better (i.e., practice makes perfect). To tell the truth, I just get to know FreeNAS, therefore I will have to play with FreeNAS a lot more through VirtualBox’s virtualization before I can confidently post an excellent FreeNAS tutorial in thorough detail.
What I know so far about installing FreeNAS with VirtualBox is that it’s easy! Just make sure that you specify FreeNAS as a BSD operating system type and FreeBSD as the operating system which FreeNAS is based on. This means FreeNAS is a unix type of operating system, but it’s designed for creating network-attached storage server. During the setup of a new VirtualBox virtual machine for FreeNAS, don’t forget to configure the settings to add however many additional virtual disks — this allows you with the ability to create storage volumes with specific virtual disks within FreeNAS’s control panel (i.e., FreeNAS graphical user interface control panel which can be accessed through a web browser through a local IP address or an external IP address).
When done installing FreeNAS through VirtualBox, you will see a black screen with scrolling letters and you will see options that you can choose so FreeNAS can be configured — you should pick the option which allows you to set up how FreeNAS should advertise its IP address (i.e., Configure Network Interfaces). In unique situation when you cannot use DHCP to automatically lease/borrow a dynamic IP address from a router for your FreeNAS virtual machine, you can always fall back to the option which allows you to enter a shell. Inside a shell, you can set up a temporary static IP so you can access FreeNAS’s graphical user interface control panel through a browser. Here is how you set up a temporary static IP for FreeNAS — enter this command [ifconfig eth0 192.168.1.55 netmask 255.255.255.0], but do not use the square brackets and make sure you replace the static and netmask IP addresses with the ones that work with your router’s configuration.
Once done set up a temporary static IP for FreeNAS, you can access FreeNAS’s graphical user interface control panel through a browser. Within FreeNAS’s graphical user interface control panel, you can access Network > Interfaces to add a permanent static IP address for your FreeNAS virtual machine (i.e., VirtualBox virtual machine). This way, whenever you reboot your FreeNAS virtual machine, it will boot up with the same static IP address, consequently allowing you to access FreeNAS with the same static IP address.
By the way, I forgot to tell you that you should choose Bridge Adapter when you set up the network adapter for your FreeNAS virtual machine through VirtualBox Manager, because NAT adapter will advertise FreeNAS services on VirtualBox’s virtual IP address which might start as something like 10.x.x.x. NAT type of IP addresses might prevent you from accessing FreeNAS’s graphical user interface control panel through a browser.
I’ll post more on FreeNAS once I get to be expertly using it, OK? For now, at least we know that FreeNAS can be virtualized into an unlimited personal storage cloud in virtualization sense. In reality, we still have to add more hardware to cope with growing disk space of virtual disks. Even with FreeNAS, it’s illogical to think we can have unlimited personal storage cloud in absolute sense unless you have unlimited amount of money to buy unlimited amount of hardware (i.e., disk drives) to support the unlimited growing disk space of virtual hard disks.
For your information, FreeNAS is free to download and install and use, therefore there is no harm in trying it out — virtualizing FreeNAS for personal storage cloud or natively using it. What’s even more wonderful is that virtualizing FreeNAS with VirtualBox is also free, therefore you can virtualize FreeNAS to your heart’s content without paying a dime. What isn’t free is buying more hard disks to handle the growing virtual disks for your system!