Home » Questions » Computers [ Ask a new question ]

How should I set up my home file server?

How should I set up my home file server?

I'd like to set up a home server for three purposes:

Asked by: Guest | Views: 289
Total answers/comments: 5
bert [Entry]

"Your usage sounds a lot like mine, so I'll describe my main goals and how they influenced my setup:

Reliable, network-available drive space. Like you I wanted to be able to back files up from multiple computers and serve media files. My primary concern is that the data be as solid as possible, so in the event of a hardware failure, getting to the data is as easy as plugging the drive into another computer.
Cheap hardware. By cheap, I mean ""already own"". My home servers for the last decade have been whatever workstation hardware I was using before buying my current workstation. Currently, this is a dual PIII-600 with 768Mb RAM, built in 2001 or so. Since putting it into a server role, the only hardware I've purchased for it has been hard drives and drive controllers.

Like you, backing up the family workstations and serving files is my main priority. If the server hardware dies, that's ok -- I can handle a little downtime while I scrounge up replacement hardware, and the replacement hardware can be nearly anything off-the-shelf.

To that end, I don't use any RAID or LVM or DynamicDisk configurations that would complicate moving a disk from one machine to the other. Data is stored on a 1TB drive in a standard ext3 partition, and a second 1TB drive maintains a mirror of the data via rsync. Really important stuff gets backed up to data DVD, and I keep a smaller drive (320GB) as an offline backup of the major stuff.

My home server is limited by the CPU and RAM, but for what it's doing the only practical limitations are network and drive (really bus speed). Graphics/RAM/CPU aren't really a factor for me, but they'll be factors for you if you optimize your hardware for simulations and computational jobs. If this is a headless server, you could even take advantage of a good GPU for your computations.

As far as software goes, I highly recommend Linux. If you're new to Linux, consider Ubuntu or Xubuntu, especially the server form. (Use Xubuntu if you end up with the desktop version; GNOME is a resource hog). On the other hand, if you're very comfortable with Linux, consider a very light Debian install instead -- a typical home server doesn't need the heavyweight desktop GUI stuff, and your usage would benefit from having as little of it as possible."
bert [Entry]

"You can pretty much scrounge everything BUT the hard drives - data integrity is the most important.

For the first 2 objectives you are pursuing, you do not need a powerful computer. Essentially an Atom chipset will do just fine. You will want to hook this computer up via wire (Gigabit preferred) to your network though, for network transfer speed is going to be the main bottle-neck here.

With regards to your 3rd objective of running stats comps/sims, well it really depends on how long you can wait for results to come out. If you need it to be fast, then get a faster processor, and more RAM. Be careful though - this objective might slow down your disk I/O operations depending on what kind of comps/sims you are doing.

Finally, just make the box a SAMBA share and use a backup software such as Cobian to schedule regular backups to the box. Run some monitoring tool, and most importantly, have fun!"
bert [Entry]

"I would (and did) set up a Linux server for SMB/CIFS (samba) and AFP (netatalk, if you have Macs).

One strength in using Linux is that it suits a homogenous environment well. I have two Windows systems and a Mac system on my network connected to the file server. It can also be a single-sign on server via LDAP/Kerberos/Samba, yes even to Windows systems.

For hardware, I suggest 2-4G of memory, and separate hard drives for the shared data. Use RAID-1 mirroring, or RAID-5, depending on how much your budget is for hard drives. I suggest hardware RAID as it is transparent to the OS. Since Linux is free vs the cost of a Windows license, you can add another hard drive :-).

I also have my file server set up to be a Time Machine backup system for the Macbook I work on. I manage all the configurations with Chef, so I can rebuild the machine from scratch easily."
"I would (and did) set up a Linux server for SMB/CIFS (samba) and AFP (netatalk, if you have Macs).

One strength in using Linux is that it suits a homogenous environment well. I have two Windows systems and a Mac system on my network connected to the file server. It can also be a single-sign on server via LDAP/Kerberos/Samba, yes even to Windows systems.

For hardware, I suggest 2-4G of memory, and separate hard drives for the shared data. Use RAID-1 mirroring, or RAID-5, depending on how much your budget is for hard drives. I suggest hardware RAID as it is transparent to the OS. Since Linux is free vs the cost of a Windows license, you can add another hard drive :-).

I also have my file server set up to be a Time Machine backup system for the Macbook I work on. I manage all the configurations with Chef, so I can rebuild the machine from scratch easily."
bert [Entry]

"I just put together a standard computer in a rackmount case. Quad core, 6GB, Server 2008 (free, which is a long story). Just set up UNC shares and map my workstations' local drives to the drives on the server, i.e.

C: System
D: \server\d$
...
L: \server\l$
Z: Local DVD drive

That way my docs are always in the same path (in my case, i:\docs), etc."
bert [Entry]

If some of your local computers are Macs, I recommend this tutorial on how to get Time Machine working with a linux server. Time Machine is a great way to backup, and by using a linux server you can achieve your other goals, too, if you spend enough time on it.