5
votes

I need some advice on what file system to use for my new 1TB media server hosted on my Linux box. I have a few requirements:

  1. Needs to be shareable to a different Windows machine (not dual booting, totally different box). I see that there might at least be options to do this with ext3, and as I think this will be a rather rare scenario, I'm able to live with this.

  2. Definitely needs to be able to be accessed via Samba on my Xbox running XBMC (and sharing with an Xbox 360 might be in its future).

  3. Needs to allow file size greater than 4GB.

  4. Needs to be shareable with any future media servers/front-ends I build (all would be running a Linux variant such as Boxee, XBMC, Myth*).

I'm guessing Fat32 is out due to the file size requirement, and while I've used NTFS before, I'd prefer something native to Linux. I'm open to just about anything, thanks.

1
  • Thanks for all your answers, I formatted it with ext3 because I was itching to get going but I will definitely look into XFS.
    – Greg Noe
    May 29, 2009 at 13:31

5 Answers 5

5
votes

Given all access to the filesystem from non-Linux systems will be through an abstraction layer, pick whatever you want! I'd suggest your distro's default (ext3 probably). Media storage has no special needs in terms of speed or reliability, so you'll just add unnecessary complexity picking an exotic filesystem. In terms of the specific use cases you mentioned:

  • Vista includes an NFS client, and of course you can share the drive via Samba too. If you mean direct physical access to the drive, I would change my recommendation for the filesystem to NTFS, as it has the best cross platform compatibility between Windows and Linux.
  • Any filesystem works here - Samba abstracts that away from what the client sees.
  • Just don't pick FAT32!
  • Any current, non-exotic filesystem will be fine here. Even the 'exotic' filesystems like XFS/JFS will be supported in the kernel for years to come.
3
votes

I use XFS on my MythTV server, and it works very well. I've also shared out certain directories by way of Samba so my Windows workstations can get access to it. I have a script that transcodes shows into a format usable on my iriver clix2, which dumps to a directory I map to from my Windows laptop and transfer to the media player. One of the nicer things about using XFS for a media server is that XFS has a defragger, as keeping those very large files sequential on that undoubtedly SATA drive is a good idea.

A suggestion that helped me out, is use the "allocsize=256m" mount option for XFS. This tells the kernel to allocate 256MB hunks of space when writing a file. As SD shows are taking 2.2GB/hour on my rig, this reduces frag significantly. The few HD shows I've managed to record are on the order of 15GB/hour, and my file-system hasn't blinked at it. It'd blink even less if I were running 64-bit.

XFS support is relatively new in the land of Linux, but by 2.6.30 it has been in there a long time. I haven't had any corruption problems with it at home or at work. It isn't so hot for massively random I/O on SATA drives, such as the load VMWare Workstation puts on (ahem), but for sequential access it smokes.

I'm actively in the planning stages of setting up another media server in the back room to supplement the storage on the encoder box. This will also be XFS, but shared out over NFS to the MythTV box for minimal network overhead. It might go ext4, but I haven't done anything with that FS yet.

1
  • 1
    +1, in a similar boat, XFS works really well for large files. May 29, 2009 at 7:46
3
votes

XFS is best for storing video because it's very stable and has excellent large file support. It's not even exotic anymore.

Sharing (with another computer) is unrelated to the filesystem.

Basically, if you're sharing with windows - choose Samba because it's easiest.

While Samba works fine, if XBMC is your focus you might also like to consider UPNP (DLNA).

DLNA is designed EXACTLY for sharing media across a network, there are several choices for linux - like mediatomb or ushare.

mediatomb.cc

ushare.geexbox.org

Summary: Use XFS for the media partition, and Samba or DLNA for sharing.

/ Richy

2
votes

Samba should be capable of communicating with your windows boxen and myth frontends, but it does not care what filesystem it's data is stored on as long as it can be read by the kernel. I would pick what ever is the default for distro that you are installing.

Ext3 can definately accomodate files > 4GB. If you are going to be storing large files primarily, there are some tuning parameters you can set to make this more efficient.

1
vote

For a filesystem that will have mostly large files, I would recommend using XFS. It has great performance for large file sizes and is very mature. JFS is worth mentioning, as well and has similar performance to XFS and is just as mature.

However, depending on your distro, it might do you well to put the filesystem on top of LVM so that you can expand your storage seamlessly. Going one step further, I'd put the filesystem on LVM on top of a RAID array. This way you gain fault tolerance and performance while maintaining your ability to scale.

Another option for direct storage (in addition to Alex's NFS recommendation), is to use iSCSI. I export storage to my Windows and Linux boxes via iSCSI using iSCSI Enterprise Target. Failing the need for direct access, samba will do the trick just fine. Just don't export over samba storage that you've imported over NFS; you'll have file locking problems.

Not the answer you're looking for? Browse other questions tagged .