3

I am running Debian, and need to setup an NFS server. My server has five identical 2TB disks. I will need to setup folder quotas. I am planning to use software raid by putting 3 of the five disks into one raid 5 pool and using the remaining two disks as backup space. I feel that using RAID and quotas and NFS is a little painful to manage. I would love to use a ZFS like tool to make all this work easier, but I want to know if there are any competitive software in Linux.

Being a novice sysadmin, I want to know if there is a better system to do all this under Linux.

donatello
  • 746
  • 1
  • 9
  • 16

4 Answers4

4

The answer really depends on how you envisage your backup drives being used. If you're imagining using it as a hot spare, I'd recommend using all your drives and using RAID6, so you have the ability to lose two drives before you risk losing data by having a third disk failure. If you were just using it to make a backup in case of a filesystem issue or accidental deletion of data, then I'd recommend using all your drives as RAID5.

I have slowly come the the realisation that hardware raid is more effort than it's worth. Software raid is not considerably slower, and in some cases is much faster than hardware raid. Software RAID easier to manage and hardware RAID is just another component to fail, with incompatible metadata standards.

What I would recommend is that you configure LVM (Logical Volume Management) on top of your RAID array. This allows far more flexibility than any standard partitioning would. You can increase the size of partitions and in the case of some filesystems, decrease their size. Most file systems allow you to increase the size while the filesystem is mounted. It also allows you to do other management tasks like migrate filesystems from one device to another easily while they are in use by adding and removing block devices from the volume groups. One useful tip is that, because some file systems like XFS can't be shrunk, you should start by creating your filesystems as small as you first need and leave plenty of space for you to grow your filesystems as and when you need to.

David Pashley
  • 23,497
  • 2
  • 46
  • 73
  • why is a software raid easier to manage? I dont see this in any way. – evildead Oct 25 '09 at 00:51
  • 1
    You have one tool for every machine, rather than trying to rely on four different vendors binary tools, all of which are cryptic to use. There's a large benefit in having consistency between software, even if there isn't between hardware. – David Pashley Oct 25 '09 at 10:27
1

You can set per-directory quotas if you use XFS as your filesystem (which you will probably want to do, since you'll have ~8TB of disk). They call the feature "project quotas" and they're a bit of a pain to get up and running, but work reasonably well once you figure them out.

You can read man 8 xfs_quota to find out more about them.

Basically you need two files: /etc/projects and /etc/projid. In the /etc/projects file you have an ID:directory mapping, eg:

10:/mnt/raid/foo1
10:/mnt/raid/foo2
20:/mnt/raid/bar

Then in the /etc/projid file you have a listing of project name:ID mappings:

foo:10
bar:20

You the mount the filesystem with project quotas enabled mount -o pquota /dev/md0 /mnt/raid and then set up the quotas:

xfs_quota -x -c 'project -s foo' /mnt/raid
xfs_quota -x -c 'project -s bar' /mnt/raid
xfs_quota -x -c 'limit -p bhard=10g foo' /mnt/raid
xfs_quota -x -c 'limit -p bhard=20g bar' /mnt/raid

The first command sets the quota metadata in the filesystem, and the second one sets up the hard block limit. The nice thing about this as opposed to using LVM volumes is that you can both increase and decrease the quota assignment, and you can also set soft quotas so that you can receive warnings when a directory is beginning to use a lot of space (see the report command of xfs_quota).

The downside is that this feature is only available with XFS filesytems, so these project quotas aren't supported by any tools other than the XFS ones.

Kamil Kisiel
  • 12,184
  • 7
  • 48
  • 69
1

As an alternative, since you are planning to set up a file-server, you may want to consider using a file-server oriented Linux distribution such as Openfiler, which may be easier to configure via a web-interface and you can still drop down to the low-level stuff if necessary.

sybreon
  • 7,405
  • 1
  • 21
  • 20
0

Regarding quotas under NFS, the Red Hat manual says:

rpc.rquotad — This process provides user quota information for remote users. This process is started automatically by the nfs service and does not require user configuration.

Cristian Ciupitu
  • 6,396
  • 2
  • 42
  • 56
  • 1
    That's true, but in order for rpc.rquotad to have anything useful to report, quotas have to already be setup. – MikeyB Oct 31 '09 at 03:52