What I want from a home server (2): File Sharing and Backups January 23
We’re covering File Sharing and Backups in part 2 of our multi-part series on
What I want for a home server
In part 1, we covered the related topic of RAID. Let’s go on to file systems first.
File system
Here is what Svein points out:
Based on maximum security, there should go a lot of thought into what file system that should be used for the data drives. FAT32 would be a good candidate if it had been a bit more robust and allowed for bigger file sizes. But with a maximum of 2GB files, it is totally out of the question since many people would like to store backups of DVD’s on a server like this. A good solution might be to to use ext-2 or ext-3 and provide Windows and OSX drivers to be able to read the drives if there should be a major crisis.
While we do not yet support these on the Amahi Linux Home Server, we expect that support for this will come one day, hopefully sooner rather than later.
At the moment, we’re using Samba to provide file and printer sharing services in a way that is compatible with Windows, Mac and Linux, while still retaining the most excellent ext3 Linux file system for the base of the home server. We also use NFS to share some resources easily within the home network.
Backup
Our second topic today is backups. This is always a tough one. Everyone wants to have their cake and eat it too! Most times only a certain set of things are needed, depending on the network configuration, number of machines, etc. Here’s Svein’s take on it:
Even if we have a secure way of storing data on the server, we still need a good backup system. And I really prefer a centrally managed system. There should only be a small agent installed on each PC (Windows, OSX or Linux/BSD) and then the rest should be done from the server – setting up what to backup, when and how often. There system must be able to backup files that are in use and to control bandwidth use so it can run in the background even if you are working on the system.
There should be a wide range of options on where to store the backups. The backups of the pc’s in the network could be stored or cached on the server. But there must also be a way to wite to an different medium e.g. DVD+R or tape. Or some other kind of attached storage. Because of this it would be smart to have the backup program divide all backup files into chunks of 2GB or less.
That’s a tall order!
At the moment, Amahi supports two ways to back up. One is periodic, incremental and automatic, essentially as a NAS, and the other is a full disk backup, which restores the OS and all. These are sort of two extremes, for different tastes and different needs:
- Periodic file backups, such as features included in Windows Vista, Mac and Linux.
- Full-disk backups, a la Norton Ghost. We call this PBA (Personal Backup Appliance) and it’s an app for the Amahi LHS.
Versioning File Systems
There are several techniques to solve the issue of managing files in a safe way. Versioning file systems, while fairly well known in technical circles, are one of the newcomers that are starting to become popular. They deal with file systems and also with prior versions as backups, all simultaneously, since the file system includes support for versions built in. This makes the issue of handling versions much simpler, making any client user interface much easier to build.
This allows users to access their file system as it appeared at any point in time. In this area I would like to highlight two options:
- One of them is the ext3cow file system. It’s an open source versioning file system based on ext3. It provides a time-shifting feature that allows a real-time and continuous view of the past.
- ZFS is another one, from Sun Microsystems. ZFS is gaining wide adoption and has lots of acclaims, including encryption and scalability. Some people claimed this was going to be used as an underlaying implementation of Apple’s Time Machine, or perhaps in the time capsule
In the mean time, we have solved the issue of issue of using network disks, such as the HDA, with Apple’s Time Machine. It has been solved by using the handy utility called iTimeMachine. With it, your network drives are usable from Time Machine. Pretty cool!
Thanks to Svein Wisnaes, who wrote with great ideas.
In this series we will also feature suggestions from other home server enthusiasts, so write us or submit your comments!