在Linux中限制用户空间(1)


在Linux中限制用户的磁盘使用空间使用的是Quota,一般Quota在安装Linux时就已包括在内核中,不需要另行安装。Quota可以从两方面指定磁盘的储存限制: 使用者所能够支配的索引节点(inodes)数量;以及使用者可以取用的磁盘区块数量。在使用Quota监视用户时,一旦用户使用空间超出缓冲值(soft)就会发出警告,如超出限定值(hard)就会禁止用户再储存文件。在 Linux上2.x 版的核心都可以使用 Quota 。使用步骤及方法如下:

⒈开启系统Quota功能:

1 修改/etc/fstab文件,2 下面是我在我的系统上设定的值:

#device directory type options

/dev/hda1 / ext2 default 1 1

/dev/hda2 /usr ext2 default 1 1

/dev/hda3 /home ext2 default,usrquota,grpquota 1 1

下画线部分(usrquota,grpquota)为另加的部分

3 修改/etc/rc.d/rc.local文件,在文件的最后面加入下面语句:

if

[ -x /usr/sbin/quotaon ]

then

echo "Quota now is turning on"

/usr/sbin/quotaon -avug

4 在quota所在目录(本例为/usr/local/bin)执行quotacheck -avug,这时Quota开始检查所有子目录并建立两个文件:quota.user,quota.group

5 建立 "quota.user" 记录

quota 记录档(quota.user) 应该由 root 拥有,即 root 有读写的权限而其他任何 人都没有。以 root身份登录Linux服务器,进入想要启用 quota 分区最上层,即如想在/usr建立quota管理:

[root@Server/usr]#touch /partition/quota.user

#chmod 600 /partition/quota.user

6 重新启动计算机

⒉设定用户或用户组的空间限定

①设定用户的磁盘限制:edquota -u 用户名

如我系微机室设有一帐户wlx01,当使用命令edquota -u wlx01后出现Vi界面,如下所示:

Quotaa for user wlx01:

/dev/hda3:blocks in use:0,limits(soft=0,hard=0)

inodes in use:9,limits(soft=0,hard=0)


相关内容