
The Home Server Setup
Parts used:
- Intel BOXD945GCLF
- Kingston 1GB 240-Pin DDR2 SDRAM
- APEX MI-008 Black Steel Mini-ITX Tower
- Seagate 1.5TB Sata Hard Drive (purchased at Fry’s Electronics)
Installing the Ubuntu Desktop Operating system is pretty plain and simple. All I basically did was install the Ubuntu distro onto my flash drive (I didn’t install a disc drive on the server) and booted the server computer with my flash drive and followed the installation process from there. I decided on using the Ubuntu Desktop version primarily because I wanted to have the ability to use the computer for more purposes than one, for example as a Boxee TV set top, or just as another internet terminal in the household.
Once after I finished installing the operating system I went ahead and installed all the necessary updates which in a sense almost took just as long as the actual operating system installation itself, but no problem that was used as good quality time to serve myself a nice refreshment (beer) and sit back and relax a bit.
Note: Once after installing all the Ubuntu updates and restarted the system I noticed that the NIC card was no longer connecting to the Internet. As I searched through the Ubuntu forums I found out that one of the kernel updates has a little issue with the Intel D945GCLF motherboard. After couple of minutes searching around I came across a post with recompiled version of the update with the issue patched.
The fun part begins
Installing Samba was a walk in the park, all I did was created a folder named TimeMachine (I’ll explain later), and right clicked it and selected sharing options. It prompted me that I needed to install Samba in order to share that folder , and did it automatically after going through the menus. Once having the folder I wanted to share the folder I selected I went on to setup Avahi to broadcast that the server has Samba up and running to the rest of the computers in the network:
Opening Terminal on the Ubuntu Machine and running the following command:
Sudo gedit /etc/avahi/services/samba.service
Copy and paste this into the text editor:
<?xml version="1.0" standalone='no'?><!--*-nxml-*-->
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
<name replace-wildcards="yes">%h</name>
<service>
<type>_smb._tcp</type>
<port>139</port>
</service>
</service-group>
Save and Close the file editor, and restart the Avahi service by doing the following:
Sudo /etc/init.d/avahi-daemon restart
Now that my MacBook was able to see the new server setting up TimeMachine to backup to the server was a little trickier. I had to follow a guide that explains how to do this same process but with Netatalk so I had to skip a couple of steps. Basically you have to set up TimeMachine so that it can use network devices for back ups. This is done by going on Terminal on the Mac and punching in a mini code:
defaults write com.apple.systempreferences TMShowUnsupportedNetworkVolumes 1
once running this command you should be able to select a network share for backing up data.
The next step was a little trickier.
Time Machine didn’t work right away, it gave me an error, telling me it was unable to create disk image and what not. So what I ended up doing was going under the Utilities folder in the applications folder and running Console, on the left navigation menu I selected All Messages and re-ran TimeMachine’s BackUp Now option and waited while it did its thing. On the Console application you’ll notice after a couple of seconds or minutes a message with something along the lines of:
Creating disk image /Volumes/TimeMachine/computername_0014e3856bd0.sparsebundle
Of course with computername being the name you gave your mac during initial setup. Open up the DiskUtility app and from the toolbar Create a New Blank Disk Image with the name that showed up in the console:
computername_0014e3856bd0.sparsebundle
Unfortunately I didn’t really added a Volume name to it so I left its default name but for the Volume Size I selected a small size.
Volume Format: Mac OS Extended (Journaled)
Encryption: none
Partitions: Single partition – Apple Partition Map
Image Format: sparse bundle disk image
Copied over the image to the shared folder on the server, and jumped on Terminal with my Mac to bloat up that tiny image to something usable, lets say around 500 gigabytes. Navigated to the following:
cd /Volumes/Name of Shared Folder
Remember I had already mounted the share folder on my MacBook simply by going under the file manager and on the left hand side clicking on the server share and connecting as the user I created on the server. Once in the Volumes folder and inside the mounted drive can do a quick ls command to make sure that the sparsebundle image is there. There I ran the command to resize the image file which was:
hdiutil resize -size 500g filename.sparsebundle
Time to give TimeMachine another run.
Believe me that you’ll be glad to have resized the image file after it was transferred onto the server, otherwise you’d have to sit and wait for an empty 500gig image to be transferred from one computer to another.
TimeMachine worked perfectly after this, the only thing is that it did take some time doing the initial backup because it was nearly 150gigs of data that was transferred.
Links and Resources:
- Ubuntu
- LAN issue Fix for D945GCLF
- Setup Samba for Bonjour networking with OS X 10.5 Leopard
- HowTo: Make Ubuntu A Perfect Mac File Server And Time Machine Volume
- Installing LAMP On Ubuntu For Newbies
- Resize a Sparse Bundle Image using Terminal