您好,欢迎访问三七文档
当前位置:首页 > 财经/贸易 > 资产评估/会计 > Linux磁盘配额的设置与检测
摘要:学习如何设置和检测Linux文件系统的磁盘配额,防止个体用户使用超过允许范围的空间,避免造成整个文件系统的意外拥堵。您可以使用本文中的资料来准备Linux系统管理员认证的LPI101考试,或者只是探究配额。标签:Linux磁盘配额本文帮助您了解Linux系统管理任务相关知识。对LinuxProfessionalInstituteCertification级别1(LPIC-1)考试的资料准备有所帮助。下面我们就开始学习如何管理用户的磁盘配额。概述在本文中,了解如何管理用户的磁盘配额。学习:1.设置一个文件系统的磁盘配额2.设置配额限制3.检查配额4.生成配额报告除非有特殊说明,本文中的例子都使用2.6.34内核的Fedora13。您在其他系统上的结果可能有所不同。本文帮助您准备LinuxProfessionalInstitute'sJuniorLevelAdministration(LPIC-1)考试101中主题104下的目标104.4。该目标的权值为1。先决条件为了最有效地利用本系列中的文章,您应该具有基本的Linux知识,并需要准备一个Linux系统,用于练习本文介绍的命令。有时候不同版本的程序输出格式不同,因此您所得到的结果未必总是与这里所示的清单和图相同。配额简介配额允许您控制用户或者组织的磁盘使用。它能防止个体用户和组织使用文件系统中超过自己所允许的部分,或者造成系统完全拥堵。XFS文件系统也支持项目配额,它限制了一个项目所能使用的空间大小,无论哪个用户在项目的目录树中创建文件。配额必须由root用户或者有root权限的用户启用和管理。它们往往用于多用户系统,不常用于单一用户的工作站。有3种不同的配额支持:1、vfsold,或者版本1配额2、vfsv0,或者版本2配额3、xfs,XFS文件系统上的配额本文包括非XFS文件系统上的版本2配额和XFS文件系统上的xfs配额。请注意,LPI101考试以版本2配额为重点。配额需要2.4内核之后引入的内核支持。2.6内核也有您所需的支持。XFS配额往往是日志化的。内核2.6.11及以上版本支持日志化版本2配额。测试设置首先要说明本文使用的测试分区设置,这样您就能更好地理解部分例子。如果您已经理解了文件所有权和权限,也已经安装了配额包,那么您可以直接跳到配额的启用部分。参考学习Linux,101:LPIC-1路线图,获得该系列提供更多命令详细信息的其他文章链接,本文此处只提供简单说明。测试分区和用户我们使用110GBext4分区(/dev/sda7)和40GBXFS分区(/dev/sda8)来演示。它们分别安装在/quotatest/ext4和/quotatest/xfs。清单1.设置分区[root@echidna~]#mkfs-text4/dev/sda7mke2fs1.41.10(10-Feb-2009)Filesystemlabel=OStype:LinuxBlocksize=4096(log=2)Fragmentsize=4096(log=2)Stride=0blocks,Stripewidth=0blocks7159808inodes,28637862blocks1431893blocks(5.00%)reservedforthesuperuserFirstdatablock=0Maximumfilesystemblocks=4294967296874blockgroups32768blockspergroup,32768fragmentspergroup8192inodespergroupSuperblockbackupsstoredonblocks:32768,98304,163840,229376,294912,819200,884736,1605632,2654208,4096000,7962624,11239424,20480000,23887872Writinginodetables:doneCreatingjournal(32768blocks):doneWritingsuperblocksandfilesystemaccountinginformation:doneThisfilesystemwillbeautomaticallycheckedevery28mountsor180days,whichevercomesfirst.Usetune2fs-cor-itooverride.[root@echidna~]#mkfs-txfs/dev/sda8meta-data=/dev/sda8isize=256agcount=4,agsize=2622108blks=sectsz=512attr=2data=bsize=4096blocks=10488429,imaxpct=25=sunit=0swidth=0blksnaming=version2bsize=4096ascii-ci=0log=internallogbsize=4096blocks=5121,version=2=sectsz=512sunit=0blks,lazy-count=1realtime=noneextsz=4096blocks=0,rtextents=0[root@echidna~]#mkdir-p/quotatest/ext4[root@echidna~]#mkdir-p/quotatest/xfs[root@echidna~]#mount/dev/sda7/quotatest/ext4[root@echidna~]#mount/dev/sda8/quotatest/xfs在这个例子中,我们希望普通用户能够在新的文件系统中创建文件。这样创建,文件系统归root所有,一般用户不能在系统上创建文件或者目录。我们变更所有权,这样新的文件系统就由拥有名为development的专用组的用户development所有。我们变更权限,这样在development组中的用户就能够创建文件和目录。清单2显示了我们如何设置所有权和权限。清单2.变更测试分区的所有权和权限[root@echidna~]##Showdefaultownershipandpermissions[root@echidna~]#ls-l/quotatest/total4drwxr-xr-x.3rootroot4096Nov1822:43ext4drwxr-xr-x.2rootroot6Nov1822:43xfs[root@echidna~]##Changeuserandgroupownershiptodevelopment[root@echidna~]#chowndevelopment:development/quotatest/*[root@echidna~]##Allowgroupmemberstocreatefilesanddirectories[root@echidna~]#chmodg+w/quotatest/*[root@echidna~]#ls-l/quotatest/total4drwxrwxr-x.3developmentdevelopment4096Nov1822:43ext4drwxrwxr-x.2developmentdevelopment6Nov1822:43xfs[root@echidna~]##Setdefaultgroupofnewfilesanddirectories[root@echidna~]##todevelopment[root@echidna~]#chmodg+s/quotatest/ext4/[root@echidna~]#ls-l/quotatest/total4drwxrwsr-x.3developmentdevelopment4096Nov1911:39ext4drwxrwxr-x.2developmentdevelopment6Nov1822:43xfs我们利用3位用户,ian、gretchen和tom,他们每人都拥有和用户名一样的专用组,同时也是development组的成员。检查配额包如果您正在使用一个桌面系统,那么您可能无法安装配额包,因为配额不是普通的默认桌面系统安装的。使用dpkg或者rpm确认您是否安装了包,如清单3。清单3.检查配额包#OnDebian-basedsystemsian@pinguino:~$dpkg-lquotaDesired=Unknown/Install/Remove/Purge/Hold|Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend|/Err?=(none)/Reinst-required(Status,Err:uppercase=bad)||/NameVersionDescription+++-==============-==============-============================================iiquota4.00~pre1-3implementationofthediskquotasystem#OnsystemsthatuseRPM[ian@echidna~]$rpm-qquotaquota-3.17-11.fc13.x86_64如果您没有如本文所述安装配额包,在安装页“学习Linux,101:Debian包管理”和学习Linux,101:RPM和YUM包管理获取帮助。配额的启用添加配额支持到/etc/fstab启用配额的下一步是根据您是否想实现用户配额、组配额,或者两者兼有,添加适当选项到/etc/fstab的文件系统定义。XFS文件系统也支持项目配额。编写时,启用配额的选项不是集中记录在一个明显的手册页中。表1显示了可用的选项,以及它们适用的配额系统类型。表1./etc/fstab中的配额选项选项适用于使用usrquota所有类型启用用户配额usrjquota=filenamevfsv0启用日志化的用户配额;需要一个配额数据库文件名(通常为aquota.user)和jqfmt选项的规格uquotaxfs相当于usrquotagrpquota所有类型支持组配额grpjquota=filenamevfsv0启用日志化组配额;需要一个配额数据库文件名(通常为aquota.group)和jpfmt选项的规格gquotaxfs相当于grpquotaprjquotaxfs启用项目配额pquotaxfs相当于prjquotajqfmt=formatvfsv0当usrjquota或者grpjquota被指定时使用的配额格式;目前只有vfsv0是受支持的格式quotavfsold,vfsv0相当于usrquotanoquotavfsold,vfsv0不启用配额uqnoenforcexfs启用用户配额审计,但是不能启用强制措施gqnoenforcexfs启用组配额审计,但是不能启用强制措施pqnoenforcexfs启用项目配额审计,但是不能启用强制措施我们使用一个ext4分区和一个XFS分区进行演示。我们将会在这些文件系统中添加用户和组配额,这样您就可以看到配额如何在两个不同的文件系统中运行。我们的/etc/fstab输入如清单4所示。清单4.启用/etc/fstab中的配额支持/dev/sda7/quotatest/ext4ext4defaults,usrquota,grpquota12/dev/sda8/quotatest/xfsxfsdefaults,usrquota,grpquota12重新安装文件系统编辑/etc/fstab和添加配额之后,您需要重新安装文件系统。对XFS文件系统来说,配额数据是文件系统元数据的一部分。对其他文件系统来说,用户配额信息存储在文件系统root的aquo
本文标题:Linux磁盘配额的设置与检测
链接地址:https://www.777doc.com/doc-5482774 .html