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

Unix/Linux
linux查看内存的大小
在linux下写的代码,用的是utf-8,结果拿到XP下运行的时候,所有的中文都成乱码
linux su和sudo命令的区别
linux cron 下的定时执行工具使用技巧
linux 查找进程及终止进程操作的相关命令
redhat linux 安装 gcc编译器
Linux Mplayer播放各种格式的电影
一起回顾一下linux常用命令
Linux 网站项目发布要做哪些配置
linux SSH配合SecureCRT的密匙完美使用方法
GD 编译出错解决方法
Facebook Open Platform编译FAQ
Linux 系统硬盘 优化
linux 挂载详解
linux crontab定时命令
Linux 系统中确保访问三级域名畅通的方法
Linux 特权帐号VS普通帐号
确保Linux系统安全的前提条件 漏洞防护
Linux 监视系统资源使用率
Red Hat Linux上使用BIND建立DNS服务器

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 33 ::
收藏到网摘: 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 显示使用情况超过配额的简要信息