this is a extra element for clear the floated element
关于在linux下磁盘定额的实现
  • 12/31
  • 2008
基础知识 | Linux 3404 次查看
  关于在linux下磁盘定额的实现

  1. 问题的提出:

  能够限制用户在服务器上使用一定的硬盘空间,是作为公用服务器所必须的。

  在这方面linux 比Windows NT有明显的优势。

  2. 需求说明:

  需建FTP服务器,在系统中有多个用户, 需如下分配磁盘定额:

  user name group home_dir 定额

  ----------------------------------------------------------

  co_user01 company01 /home/company 60M

  co_user02 company01 /home/company

  -----------------------------------------------------------

  user01 user01 /home/user01 30M

  -----------------------------------------------------------

  user02 user02 /home/user02 30M

  -----------------------------------------------------------

  user03 user03 /home/user03 30M

  3. 解决步骤:

  a. 我们使用系统为Red hat 5.2 , 用户已按上述需求设好帐号。

  b. 由于使用了Redhat5.2 ,系统内核缺省情况是支持磁盘定额的,而且

  启动脚本启动磁盘定额服务。(在/etc/rc.d/rc.sysinit中,你可以

  看到在安装完所有分区后,有quotaon -a 及quotacheck -avug的设置。)

  c. 现在(1999/04/10)linux的磁盘定额只支持ext2分区。这时,我们要

  指定系统中哪一个分区要做定额设置。你可编辑/etc/fstab文件来指定,

  原文件:

  /dev/hda3 / ext2 defaults 1 1

  /dev/hda1 /winnt vfat defaults 0 0

  /dev/hda2 /my_ntfs ntfs defaults 0 0

  /dev/hda4 swap swap defaults 0 0

  /dev/fd0 /mnt/floppy ext2 noauto 0 0

  /dev/cdrom /mnt/cdrom iso9660 noauto,ro 0 0

  none /proc proc defaults 0 0

  改为

  /dev/hda3 / ext2 defaults,usrquota, grpquota 1 1

  /dev/hda1 /winnt vfat defaults 0 0

  /dev/hda2 /my_ntfs ntfs defaults 0 0

  /dev/hda4 swap swap defaults 0 0

  /dev/fd0 /mnt/floppy ext2 noauto 0 0

  /dev/cdrom /mnt/cdrom iso9660 noauto,ro 0 0

  none /proc proc defaults 0 0

  *** 千万不要把usrquota写成userquota, 后果并不是想象的那么简单。

  d.

  在指定的要做定额的分区的根目录中建立空文件quota.user及quota.group并把权限指定为

  只有root可更改。

  # touch quota.user

  # touch quota.group

  # chmod 600 quota.user

  # chmod 600 quota.group

  e. 这时,我们重新启动系统

  # reboot

  f.

  在系统重新启动后,我们就可以用edquota命令或linuxconf软件为用户来划分磁盘定额了。

  用linuxconf比较容易。... ...

  g. 这样全部设置就告完成,使用repquota -a 命令看看。

  参考资料 http://mud.263.net/~linux/doc/CLDP/mini/Quota.html

  wangwei

  mailto: wangwei@computer-china.com