首页编程quotacheck?求Linux习题答案:quotacheck是( )

quotacheck?求Linux习题答案:quotacheck是( )

编程之家2023-11-0670次浏览

在这个信息爆炸的时代,了解quotacheck和求Linux习题答案:quotacheck是( )的重要性不言而喻。本文将为您带来全面的解读,助您在这个领域中游刃有余。

linux edquota 时出现的错误

什么是 Quota?

Quota让你可以从两方面指定磁盘的储存限制:使用者所能够支配的索引

节点(inodes)数量;以及使用者可以取用的磁盘区块数量。

Quota背后的含意是强制使用者在大部分的时间中保持在他们的磁盘使用

限制之下,取消他们在系统上无限制地使用磁盘空间的能力。

Quota是以每一使用者,每一文件系统为基础的.如果使用者可能在超过

一个以上的文件系统上建立文件,那么必须在每一文件系统上分别设定

quota.建立quota:

一:内核中支持QUOTA:

检查当前内核是否支持quota,当前内核配置文件在/boot下

[root@LFS~]#grep CONFIG_QUOTA/boot/config-[version]

CONFIG_QUOTA=y

CONFIG_QUOTACTL=y

[root@LFS~]#

如果有上列输出,则表示当前内核已经支持quota。

如果当前内核不支持quota,需要重新编译内核将quota support编译进核心:

File systems--->

Quota support

二:安装QUOTA工具:

http://distro.ibiblio.org/pub/linux/distributions/sorcerer/sources/quota/3.12/

下载quota-3.12.tar.bz2解压后使用如下命令编译安装:

[root@LFS quota-tools]#./configure--prefix=/usr

[root@LFS quota-tools]#make

[root@LFS quota-tools]#make install

三:修改/etc/fstab加入QUOTA支持:

/dev/hda7/mnt/lfs ext3 defaults,usrquota,grpquota 1 2

四:使用quotacheck初始化QUOTA数据库:

因为quotacheck依据/etc/mtab搜索文件系统,所以要将刚刚修改的hda7重新挂载

[root@LFS quota-tools]#mount/mnt/lfs/-o remount

[root@LFS quota-tools]#mount

......略

/dev/hda7 on/mnt/lfs type ext3(rw,usrquota,grpquota)

[root@LFS quota-tools]#quotacheck-avug

quotacheck: Scanning/dev/hda7 [/mnt/lfs] quotacheck: Cannot stat old user quota file: No such file or directory

quotacheck: Cannot stat old group quota file: No such file or directory

quotacheck: Cannot stat old user quota file: No such file or directory

quotacheck: Cannot stat old group quota file: No such file or directory

done

quotacheck: Checked 6316 directories and 85861 files

quotacheck: Old file not found.

quotacheck: Old file not found.

[root@LFS quota-tools]#

这里因为搜索不到旧版本的quota文件,所以有错误信息,但不影响。

-a:扫描所有在/etc/mtab中开启quota的文件系统

-v:显示扫描过程

-u:扫描所有user quotas(usrquota)

-g:扫描所有group quotas(grpquota)

检查完毕后生成quota的信息文件:

[root@LFS lfs]#ls-l/mnt/lfs/aquota.*

-rw------- 1 root root 11264 Mar 18 20:56 aquota.group

-rw------- 1 root root 12288 Mar 18 20:56 aquota.user

[root@LFS lfs]#

五:启动QUOTA:

[root@LFS lfs]#quotaon-av

/dev/hda7 [/mnt/lfs]: group quotas turned on

/dev/hda7 [/mnt/lfs]: user quotas turned on

[root@LFS lfs]#

-a:开启所有quota设定,根据/etc/mtab设定

-v:当开启quota时显示信息

六:编辑用户磁盘限额:

这里设定用户quota最大使用容量为20M,当使用到10M时会得到警告要求降低到10M

最多可以创建10个文件,当创建5个文件时会得到警告要求降低到5个文件:-)

[root@LFS lfs]#edquota-u quota

Disk quotas for user quota(uid 5011):

Filesystem blocks soft hard inodes soft hard

/dev/hda7 0 10240 20480 0 5 10

-u:编辑user的quota

-g:编辑group的quota

-t:编辑宽限时间

-p:复制quota资料到另一用户上

blocks:目前使用者(quota:uid=5011)在/dev/hda7所使用的空间,单位:KB(不要修改)

soft:soft limit磁盘空间限定值单位:KB(需要设定)

hard:hard limit磁盘空间限定值单位: KB(需要设定)

inodes:目前使用者使用掉的inodes,由于不容易使用inode控制,所以不要修改它。

soft:soft limit文件限制数量(根据需要修改)

hard:hard limit文件限制数量(根据需要修改)

soft limit:最低限制容量,在宽限期(grace period)之内,使用容量可以超过soft limit,但必须在宽限期之内将使用容量降低到soft limit以下。

hard limit:最终限制容量,如果使用者在宽限期内继续写入数据,到达hard limit将无法再写入。

宽限时间:使用容量超过soft limit,宽限时间自动启动,使用者将容量降低到soft limit以下,宽限时间自动关闭,如果使用者没有在宽限时间内将容量降低到soft limit,那么他将无法再写入数据,即使使用容量没有到达hard limit

设定宽限时间:

[root@LFS lfs]#edquota-t

Grace period before enforcing soft limits for users:

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

Filesystem Block grace period Inode grace period

/dev/hda7 1days 7days

OK,完成啦,检查一下吧:

[root@LFS lfs]#quota-uv quota

Disk quotas for user quota(uid 5011):

Filesystem blocks quota limit grace files quota limit grace

/dev/hda7 0 1024 2048 0 5 10

[root@LFS lfs]#

-u:显示user

-v:显示quota值

使用-p参数复制quota资料到另一个用户:

[root@LFS lfs]#edquota-p quota test

[root@LFS lfs]#quota-uv test

Disk quotas for user test(uid 5012):

Filesystem blocks quota limit grace files quota limit grace

/dev/hda7 0 1024 2048 0 5 10

[root@LFS lfs]#

同时复制给多个用户:

[root@LFS lfs]#edquota-p quota `awk-F:'$3>499{print$1}'/etc/passwd`

这样就将quota的磁盘配额资料复制给所有uid>499的用户(uid为500以上的用户通常为真实用户)

OK,最后加在启动脚本里,系统启动时自动激活quota吧!

可以加入到/etc/rc.d/rc.sysinit或/etc/rc.d/rc.local中,在结尾加上一行:

/usr/sbin/quotaon-aug

还要记得在系统关机/重启脚本(/etc/rc.d/rc[0,6]/)中加入关闭quota的语句:

/usr/sbin/quotaoff-aug

通常发行版在系统启动/关闭时都会处理quota,在系统启动信息看到相关信息。

例如RedHat RHEL4,Mandrake 10.1系统启动/关闭时有这样两行:

Turning on user and group quotas for local filesystems:(/etc/rc.d/rc.sysinit)

Turning off quotas:(/etc/rc.d/rc0.d/S01halt/etc/rc.d/rc6.d/S01reboot)

查询磁盘配额:

root查询所有用户使用情况:

[root@LFS~]#repquota-a

*** Report for user quotas on device/dev/hda7

Block grace time: 24:00; Inode grace time: 7days

Block limits File limits

User used soft hard grace used soft hard grace

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

......略

quota+- 1032 1024 2048 23:59 2 5 10

[root@LFS~]#

如果有多个分区为quota,可用repquota-u挂载点查询单个分区的使用情况

普通用户查询自己使用情况:

[quota@MyLFS~]$quota

Disk quotas for user quota(uid 5011):

Filesystem blocks quota limit grace files quota limit grace

/dev/hda7 1032* 1024 2048 23:58 2 5 10

[quota@MyLFS~]$

quotcheck:

quotcheck用来扫描文件系统的磁盘用量,更新aquota.user,aquota.group

保持quota记录档到最新的状态。

因此最好在系统启动时执行或通过cron定期执行:

每周六早七点执行一次:

0 7** 6/sbin/quotacheck-avug

你是不是想在跟分区做配额?这样是可以的。

首先,你要修改你的/etc/fstab文件:

LABEL=// ext3 defaults 1 1

改为:

LABEL=// ext3 defaults,usrquota 1 1

或者改为:

LABEL=// ext3 defaults,grpquota 1 1

usrquota是基于用户的磁盘配额,grpquota是基于组的磁盘配额,怎么改就看你需要了。

之后你或者重新启动一下,或者remount一下(mount-o remount/。

第二,在/中建立aquota.user或aquota.grup,这两个文件要建立在你要实现配额的顶级目录,所谓定级目录,就是 ̄ ̄咋解释呢?就是比如你要在/上实现配额,就要在/下建立aquota.user或者aquota.grup;如果你要在/home上实现配额(当然你的/home应该是一个独立的磁盘分区),就在/home下建立这两个文件中的一个。用touch命令建立就可以了,touch aquota.user或aquota.srup。但这时建立好的文件是空的,不符和系统的需要。所以执行下一步。

第三,用quotacheck-mc/将这两个文件(aquota.user或aquota.grup)格式化。

注意一下,除非是/分区,一般不用加-m参数,比如你要在/home上实现配额(当然你的/home应该是一个独立的磁盘分区)就:quotacheck-c/home就可以了。

-m的意思是强迫在“读、写”模式下检查硬盘的配额。

第四,quotaon/启动磁盘配额。

第五,edquota用户名/组名设置用户/组的配额

例如:edquota user_name

edquota-g group_name(对于用户组)

执行后会打开一个vi编辑窗口。可以设置磁盘空间和节点数目的配额。其中soft只是起到警告的作用,并不会真正的限制用户/组。hard就会强制限制用户/组的磁盘空间和节点数目了。

第六,设定soft quota和hard quota之间的时间:

edquota-t

出现一个 vi窗口:

Grace period before enforcing soft limits for users:

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

Filesystem Block grace period Inode grace period

/dev/hda7 7days 7days

按照自己的需要修改吧。重新启动就可以了。磁盘限额就生效了。

第七,如果要成批的复制相同的磁盘配额给不通用户:

edquota-p user user1 user2 user3

edquota-g-p group group1 group2 group3

第八,取消磁盘限额:

quotaoff/

求Linux习题答案:quotacheck是( )

quotacheck命令

用途

检查文件系统限额一致性。

语法

quotacheck [-g ] [-u ] [-v ]{-a| Filesystem...}

描述

quotacheck命令检查 FileSystem参数指定的文件系统,建立当前磁盘使用情况的表,并将表中的信息与记录在文件系统磁盘限额文件中的信息进行比较。如果检测到不一致,更新限额文件。如果检查的是活动的文件系统,也将更新当前系统的不正确限额副本。缺省情况下,同时检查用户和组的限额。

可选的-g标志指定只检查组限额。可选的-u标志指定只检查用户限额。同时指定-g和-u标志等同于缺省选项。-a标志指定检查/etc/filesystems文件中带磁盘限额的所有文件系统。

quotacheck命令通常静默地操作。如果指定-v标志,quotacheck命令报告计算的和记录的磁盘限额之间的差异。

quotacheck命令认为每个文件系统包含定位在相关文件系统的 root上的 quota.user和 quota.group文件。这些缺省文件名可以在/etc/filesystems文件中进行修改。如果这些文件不存在,quotacheck命令创建它们。

选A更贴切些。

文章分享到这里,希望我们关于quotacheck和求Linux习题答案:quotacheck是( )的内容能够给您带来一些新的认识和思考。如果您还有其他问题,欢迎继续探索我们的网站或者与我们交流,我们将尽力为您提供满意的答案。

java入门教程,新手java应该怎么学塘沽软件开发?天津开发区有哪些德企