My household network is made up of two Apple powerbooks and a Linux computer. Yesterday, I gave a 160GB hard disk to my brother to upgrade his Linux computer on condition that he reinstalls his operating system. Determining which OS to use is one of those problems Linux users always face but this time, I demanded that he use Ubuntu Linux Breezy Badger version.
Ubuntu Linux allows you to setup a desktop or a server. The server configuration installs minimal software but beefs up the server specific software. The server boots up to a text-based console window instead of the full graphical interface. Makes sense since it is a server anyway... unlike some other OS out there that eats up a lot of your server's resources by drawing fancy graphics on your screen.
The default Ubuntu desktop provides all the applications one need to work with the computer. You get Mozilla Firefox as the default web browser, Evolution as your email client and OpenOffice.org 2.0 as your office suite. Your get an audio and video player as well as a photo viewer. However, Ubuntu does not give you the flexibility or the complexity, depending on how you look at it, to determine what applications to install.
Although Ubuntu can automatically partition your drive, we opted to manually partition the hard disk instead. From there, there are two other configurations that need manual intervention - the network configuration (it is automatic if you have DHCP server on your network) and user account. One user account will be created with admin privileges. Ubuntu desktop disables the root account, similar to Mac OS X, I guess for security reasons.
Being an aspiring software developer himself, my brother downloaded Chix, an open source application to interface with the Chikka servers, and tried to compile it. Ubuntu failed - it failed because it did not install the developer tools. Most desktop users do not need to compile applications anyway, right? He finally completed the download and installation of the tools and Chix now works with Gaim. Perfect!
Installing applications is easy using either the command-line 'apt- get' or the GUI-based Synaptic application. From the development tools to the openssh server for secure remote access, samba (for sharing with Windows computers), vlc (to replace the default media player) and firestarter (firewall). Downloads and installs took several minutes and get this - NO REBOOTS! If I remember correctly, the only time it will ask you to reboot is right after it asks you to eject the CD during installation.
Now that we have the Ubuntu Linux-based computer running, next is to connect it to the Macs. First thing is to get openssh up and running. This is my default method of remotely accessing the Linux computer from my powerbook. Transferring files is also achieved using ssh. This works great. However, it may not be ideal for everyone.
To make it easier for my wife to transfer files to and from the Linux computer, we configured samba and shared a couple of folders. We could have opted for other methods of sharing files such as NFS or WebDAV but samba is far easier to configure and if there is any chance that you have a Windows-based computer connect to your network, it will interoperate perfectly. So, downloading and install samba is easy and all one needs to do is to invoke Finder-Go-Connect to Server on their Mac to connect to the Ubuntu Linux computer. Cool, huh?
Now we have a fully connected network of computers, if you know what I mean. File transfers between computers, regardless of platform, is flawless. I can even transfer files to an external hard drive connected to the Linux computer - thanks to Ubuntu's automatic detection and configuration of the external drive.
So, don't be afraid to use Linux on a Mac network - both will work together like Apple and Disney! :)