当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > 在Linux中限制用户空间

Unix/Linux
Linux命令Man解释:useradd:帐号建立或更新
Linux 网管 123 --- 第7章. 自订的组态及管理内容 -7.使用 Linuxc
Linux 网管 123 --- 第8章. 备份及回存程序 -1.伺服器备份程序
Linux 网管 123 --- 第8章. 备份及回存程序 -2.伺服器回存程序(tar.
Linux 网管 123 --- 第8章. 备份及回存程序 -3.Cisco 路由器组态备
Linux 网管 123 --- 第9章. 各种杂项管理工作 -1.检查储存空间
Linux 网管 123 --- 第9章. 各种杂项管理工作 -2.管理进程
Linux 网管 123 --- 第9章. 各种杂项管理工作 -3.进程的启动及停止
Linux 网管 123 --- 第9章. 各种杂项管理工作 -4.使用 Cron 及 C
Linux 网管 123 --- 第10章. 升级 Linux 及其他应用软体 -1.使用
Linux 网管 123 --- 1. 前言 2. 简介
Linux 网管 123 --- 第3章. 概观 Linux
Linux 网管 123 --- 第4章. 安装及硬体组态 - 1.建立一张安装磁片
轻轻松松的安装Slackware Linux -- 4.如何在硬碟建置Linux系统
轻轻松松的安装Slackware Linux -- 5.其他非标准安装程序解析
如何重新设定时区
Linux中有没有支援 Solairs x86 的档案系统?有的话要如何mount?
MBR如果被覆盖了怎麽办?
如何使用命令trap来捕捉信号?
如何进行增量备份?

Unix/Linux 中的 在Linux中限制用户空间


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 72 ::
收藏到网摘: n/a

  在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)

  "blocks in use" 是使用者在某个分割区上已经使用的区块总数(以千位元组为单位) , “inodes in use" 是使用者在某个分割区上所拥有的文件总数。其中只需修改soft和hard两项后的值,单位都是kb。Soft指定占用空间达到多少时给以警告,hard则是为用户分配的可用空间大小

 ②设定用户组的磁盘限制:edquota -g 用户组

 ③重复操作:当以设定某个用户而想重复在其他用户上时:

       edquota -p 已设定用户  需设定用户

  当使用  edquota -p wlx01  * 时所有用户都会与wlx01一样

⒊常用命令:

Repquota 

edquota –t:对 quota 使用者实行软性限制之前的时间限制。可以使用的时间单位是秒、分、小时、日、星期、以及月。软性限制指出 quota 使用者在分割区上拥有的磁盘用量总数。但是合并使用缓冲期间的时候,它的动作就如同一道临界线,当 quota

使用者超越时便发出有关他即将违犯 quota 的警告。

Time units may be: days, hours, minutes, or seconds

Grace period before enforcing soft limits for users:

/dev/hda2: block grace period: 0 days, file grace period: 0days

0 days 这个部份可变更为觉得合理的任何期限。

repquota -a : Repquota 产生文件系统关于的quota信息

Block limits File limits

User used soft hard grace used softhard grace

root -- 175419 0 0 14679 00

bin -- 18000 0 0 735 00

uucp -- 729 0 0 23 00

man -- 57 0 0 10 00

user1 -- 13046 15360 19200 806 15002250

user2 -- 2838 5120 6400 377 10001500

Quotaon 用来打开 quota 的计算; quotaoff 则是将其关闭,它们是在系统启动与关机时执行的。

Quota :显示用户的磁盘使用情况和上限。

参数 使用说明 

-g 显示用户所在组的组配额

-u 显示用户配额

-v 显示没有空间分配的文件系统情况

-q 显示使用情况超过配额的简要信息