《linux下磁盘空间监视.docx》由会员分享,可在线阅读,更多相关《linux下磁盘空间监视.docx(9页珍藏版)》请在优知文库上搜索。
1、入门:运用df监视磁盘空间是UNIX管理员的工作中很重要的一局部。本文向您介绍一些完成管理工作所需的工具,包括df.du、find的运用,甚至配额的运用。让我们先来看看df的强大功能.对于很多管理员来说,运用df工具可能有点像断续的神经运动,因为它通过一个吩咐供应了全部文件系统中已运用的和可用的存储空间的快照视图。依据您的UNIX环境的不同,df的缺省输出可能包含各种不同的信息。大局部现代的df变种都可以显示磁盘空间、运用状况和可用性,通常还包括装入点有时包括设备)。例如,基于BSD的MacOSX显示如迨里所示的信息。清单1.MacOSX的缺省磁盘空间信息512-blocksusedAvail
2、CapacityMountedondevdisks226843545611974134414818211245%/devfs195195O100%devfdesc220100%dev102410240100%/.voldevdisks34347452072514483622307217%/Volumes/untitled请留意,所显示的大小是以512字节块为单位,而不是千字节。缺省状况下,几乎全部传统的UNIX操作系统都以512字节块为胞位报告大小,而不是千字节。要获得以IK块为单位的信息,可以运用-k吩咐行选项,如道里2所示。清单2.运用带-k选项的df吩咐$df-kAvai1Capacit
3、yMountedonl-blocksUseddevdisks2134217728598707047409102445%/devfs97970100%devfdesc110100%dev5125120100%/.voldevdisks32173726036257241811153617%/volumes/untitled有些变种可能还支持可选的块大小,如兆字节(运用-m)和千兆字节(运用-g),如洒单3所示.清单3.运用带-g选项的df吩咐du吩咐并不是显示磁盘的空闲空间,而是显示磁盘运用状况的信息,du工具用于确定文件和书目的陂盘运用状况。要运用这个工具,变更到个书目,然后运行该工具(请参见道
4、里6).清单6.du吩咐$cdvar$du16./lost+found4.sadminstal1admin22.sadminstal1/logs28448.sadminstal14.sadmpkgSUNWocfdinstal14.sadmpkgsNWocfdsavepspoolsNWocfdinstal116.sadmpkgSUNWocfdsavepsool/SUNwocfd18.sadmpkgSUNWocfdsavepspool20.sadmpkgSUNWocfdsave28.sadmpkgSUNWocfd4.sadmpkgSUNWcsuinst上面的边巴6中显示的输出,经过了适当的调整。缺
5、省状况下,du招显示当前或指定的书目卜.每个文件和书目的文件运用状况。得到的值是文件的大小,单位为该系统中的缺省块大小,与df所运用的单位样。可能是也可能不是1K.而运用-k吩咐行选项,您可以强制以IK块为单位进展显示。您可能须要依据所查看的顶级文件或书目对信息进展摘要。运用-S选项以虢开摘要视图。下面是Solaris安装中的一个摘要版本在Zvar书目中的显示:$du-sk70818.请留意,它显示了当前书目(.)的摘要信息。要获得全部文件和书目的摘要信息,可以运用通配符(请参见港至7)。清单7.运用*通配符驶得摘要侑息$du-sk*382adm950apache683apache26837a
6、ppserver1audit162cache3cc-ccr2crash4cron31dmi22dt6fm2imq1inet3krb54Id1Idap937lib6log8lost+found2ip2mail1mysql1news3nfs38nis2ntp10034opt1preserve96run49687sadm15saf3samba2sma_snmp131snmp39spool4Statmon663SVC14tmp10uucp24yp运用该工具时,特殊是在用户书目中运用该工具时,请特殊当心,因为所显示的信息中不包含府度文件,换句话说,具有单点号前缀的那些文件和书目。您可能希望运用下面的代码
7、行,在用户书目中获得全部的摘要信息:$du-sk*.a-zA-z-9*du吩咐的最终一个特别有用的选项是-d,该选项可以防止du吩咐超过文件系统边界。例如,要确定根文件系统而不是任何其他的文件系统的磁盘运用状况,您可以运用-d选项:$du-dsk/有些系统没仃这个选项,但是有-X吩咐行选项,该选项仅包含与您所指定的路径一样的设备或文件系统中的文件运用状况.回页苜杳找一个特定用户的磁盘运用状况要查找某个用户所运用的磁盘空间,在运用find吩咐的同时,您须要结合运用du吩咐以仅报告特定用户的磁做运用状况。$find.-userme-typef-execdu-k;-user选项允i午您指定find将
8、仅报告属于特定用户的文件。-type选项强制find仅返I川特定类型(在本例如中是文件)工程的路径,这样可以防止du包含拈目,因为这些书目可能属于某个用户,但其中却包含了很多用户的文件。然后,对于查找到的每个路径,执行du吩咐以报告礴盘运用状况。要获得摘要信息,换句话说,即某个特定用户所运用的总空间,您可以运用awk对该信息进展总计,并打印出最终的值:$find.-userme-typef-execdu-k;awk(s=s+$lendprintTotalused:,sTotalused:123721时丁组,您可以依据一样的原那么对find运用-group选项:$find.-groupmcslp
9、-typef-execdu-k;Iawks=s+$lENDprintTotalused:,sTotalused:542485然而,假如启用了硬盘配额,那么就有一种更简洁的方法。目页首运用配项配额系统以文件系统为单位,自动监视该文件系统中各个用户的磁楸运用状况。配额环境不仅允许您监视磁盘的运用状况,而且还允许设置相应的运用限制,在超过运用限制时供应警告或者更干脆地制止用户运用超过所安排的配额值的磁盘空间。下限(发出警告)称为软限制,而上限制止创立超过该限制的文件)称为硬限制。有些系统可能还允许您限制每个用户所拥有的文件的数H在您的计算机上启动配额的确切方法取决于您所运用的操作系统。大多数UNIX
10、系统在缺省状况下都包含配额的支持。1.inux系统可能须要构建新的包含配额支持的内核。然而,通常大多数操作系统为每个文件系统运用一个称为quotas的文件,其中包含了对每个用户的空间运用限制。要启用配额,您首先须要创立该文件,并确保仅有root用户可以编辑该配额文件:$toucheporthomequotas$chmod600exporthomequotas然后,运用quotaon吩咐启用配额功能:$quotaonexporthome最终,您必需为每个用户编科适当的配额。可以运用edquota吩咐并指定相应的用户来完成这项任务:$edquotame这将翻开缺省的编辑器或者vi,假如您没有设置可
11、选的编辑器),其中包含一个用来设厘配额值的简洁表格。在卜面您可以看到,已为用户home书目文件系统启用了配额,并且软限制为200,000KB.硬限制为400,OOOKBo文件限制的设置为零,这表示没有设置限制,用户可以设理并创立随意数目的文件。fsexporthomeblocks(soft=200000,hard=400000)inodes(soft=0,hard=0)假如有更多的文件系统具有配额,那么您须要为这些文件系统配置更多的行。假如您须要对多个用户配置配额,那么可以首先为一个用户设置配额,然后对edquota运用-P吩咐行选项。这将运用指定的用户作为根底来创立新的用户。例如,要运用me
12、的设置,为用户名sip、tw和sh设置配额,请执行下面的吩咐:$edquota-pmesiptwsh回页首运用品税进展文件限IM告当用户创立一个超过其软限制的文件时,他们将会得到卜面的警告:quota_ufs:warning:overdisklimit(pid1738,uid101,inum94,fsexporthome)请用意,留给用户7天的时间更正该问题,您可以运用edquota-t来更改这个期限。假如用户试图创立超过硬限制的文件,那么系统将终止写进程并依据相应的限制来截断该文件:$mkoverlimitquota_ufs:overharddisklimit(pid1843,uid101,
13、inum130,fsexporthome)overlimit:initialized191873024of215040000bytes:Discquotaexceeded通过运行quota吩咐,任何用户都可以检查他们自己的配额限制和盛盘运用状况:$quotaOverdiskquotaonexporthome,remove199993within7.0days回页Ir配额管理运用quota吩咐,系统管理员可以检查任何用户的配额,您应当运用-V吩咐行选项以供应关于文件系统、运用状况和限制信息的完整报告请参见消不8).清单8.运用-V选项$quota-VmeDiskquotasforme(uid10
14、1):usagequotalimittimeleftfilesquotalimittimeleftexporthome3999932000004000006.9days15100要获得某个文件系统中具体描述全部用户的磁盘和配额运用状况的报告,可以运用repquota吩咐,并指定要报告的文件系统(请参见清单9).清单9.运用repquote吩咐$repquota-veporthomedevdskctds7(exporthome):BlocklimitsUserusedsofthardtimeleftusedsofthardtimeleftme+-3999932000004000006.9days15100要确保配额信息保持最新,您应当运用quotacheck吩咐。这将利用用来报告配额信息的配额信息对文件存储数据进展验证。您应当运用cron来自动地运行这项任务,每天一次比拟相宜(因为这个过程是比拟耗时的)。回页首配旗的技巧和陷井配额系统供应了监视和臼动管理的最正确组合,但是您应当留意启用了配额的文件系统以及您所设置的限制,因为它们可能