版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、linux系統(tǒng)管理員工具包 : 監(jiān)視磁盤空間和使用情況本書網(wǎng)絡下載內容豐富,分享給大家學習。研究確定跨多個unix 系統(tǒng)的磁盤使用情況以及如何創(chuàng)建一個簡單的警告系統(tǒng)對潛在問題發(fā)出警告的方法。關注您的文件系統(tǒng),確保它們沒有填滿,這雖然是個小事,但在unix 系統(tǒng)的日常管理工作中是至關重要的過程。在本文中,您將了解到監(jiān)視磁盤空間、發(fā)現(xiàn)究竟是哪些文件、用戶或應用程序占用了大部分的空間、以及如何使用配額和其他解決方案查找需要的信息的方法。關于本系列通常, unix 管理員都擁有一套常用的輔助進程管理的實用工具、技巧和系統(tǒng)。本文提供了各種用于簡化各個過程的關鍵實用工具、命令行鏈和腳本。這些工具中的一部分
2、來自于操作系統(tǒng),而大部分的技巧則來源于長期的經(jīng)驗積累和減輕系統(tǒng)管理員的工作壓力的要求。 本系列文章主要專注于最大限度地利用各種unix 環(huán)境中可用的工具,包括簡化異類環(huán)境中的管理任務的方法。入門:使用df監(jiān)視磁盤空間是unix 管理員的工作中很重要的一部分。本文向您介紹一些完成管理工作所需的工具,包括df、du、find 的使用,甚至配額的使用。讓我們先來看看df 的強大功能。對于許多管理員來說,使用df 工具可能有點像斷續(xù)的神經(jīng)運動,因為它通過一個命令提供了所有文件系統(tǒng)中已使用的和可用的存儲空間的快照視圖。根據(jù)您的unix 環(huán)境的不同, df 的缺省輸出可能包含各種不同的信息。大部分現(xiàn)代的d
3、f 變種都可以顯示磁盤空間、使用情況和可用性,通常還包括裝入點 (有時包括設備) 。例如,基于 bsd 的 mac os x 顯示如清單1 所示的信息。清單 1. mac os x 的缺省磁盤空間信息1.filesystem 512-blocks used avail capacity mounted on 2./dev/disk0s2 268435456 119741344 148182112 45% / 3.devfs 195 195 0 100% /dev 4.fdesc 2 2 0 100% /dev 5. 1024 1024 0 100% /.vol 6./dev/disk0s3 4
4、3474520 7251448 36223072 17% /volumes/untitled 復制代碼請注意,所顯示的大小是以512 字節(jié)塊為單位,而不是千字節(jié)。缺省情況下,幾乎所有傳統(tǒng)的unix 操作系統(tǒng)都以512 字節(jié)塊為單位報告大小,而不是千字節(jié)。要獲得以1k 塊為單位的信息,可以使用-k 命令行選項,如清單2 所示。清單 2. 使用帶-k 選項的df 命令1.$ df -k 2.filesystem 1k-blocks used avail capacity mounted on 3./dev/disk0s2 134217728 59870704 74091024 45% / 4.de
5、vfs 97 97 0 100% /dev 5.fdesc 1 1 0 100% /dev 6. 512 512 0 100% /.vol 7./dev/disk0s3 21737260 3625724 18111536 17% /volumes/untitled 復制代碼有些變種可能還支持可選的塊大小,如兆字節(jié)(使用 -m)和千兆字節(jié) (使用 -g),如清單3 所示。清單 3. 使用帶-g 選項的df 命令1.$ df -g 2.filesystem 1g-blocks used avail capacity mounted on 3./dev/disk0s2 128 57 70 45% /
6、 4.devfs 0 0 0 100% /dev 5.fdesc 0 0 0 100% /dev 6. 0 0 0 100% /.vol 7./dev/disk0s3 20 3 17 17% /volumes/untitled 復制代碼很顯然,在增大顯示的塊大小的同時,信息中的詳細級別也開始降低,但使用可選的大小是一種快速監(jiān)視磁盤,特別是超大容量磁盤的很有用的方法。其他版本的df 工具(特別是solaris ),缺省情況下將報告空塊和文件可用性信息。大部分文件系統(tǒng)都具有能夠存儲文件的上限數(shù)值(該數(shù)值很大,以至于通常不會達到該上限),所以有可能整個系統(tǒng)填滿了文件,還有可用磁盤容量但卻不能再存儲任
7、何文件了。您可以在清單4 中看到 solaris 的缺省輸出示例。清單 4. solaris 的缺省輸出1.$ df 2./ (/dev/dsk/c0t0d0s0 ):14877208 blocks 914042 files 3./devices (/devices ): 0 blocks 0 files 4./system/contract (ctfs ): 0 blocks 2147483618 files 5./proc (proc ): 0 blocks 16109 files 6./etc/mnttab (mnttab ): 0 blocks 0 files 7./etc/svc/v
8、olatile (swap ): 5737216 blocks 147177 files 8./system/object (objfs ): 0 blocks 2147483532 files 9./usr (/dev/dsk/c0t0d0s3 ): 9076010 blocks 863695 files 10. /dev/fd (fd ): 0 blocks 0 files 11. /var (/dev/dsk/c0t0d0s4 ): 8110796 blocks 483714 files 12. /tmp (swap ): 5737216 blocks 147177 files 13.
9、/var/run (swap ): 5737216 blocks 147177 files 14. /export/home (/dev/dsk/c0t0d0s7 ):69362510 blocks 4272812 files 復制代碼使用 -k 命令行選項可以將顯示內容切換為與前面的示例類似的格式,其中對數(shù)據(jù)進行了摘要處理,得到更加便于閱讀的格式(請參見清單5)。清單 5. 使用 -k 選項1.$ df -k 2.filesystem kbytes used avail capacity mounted on 3./dev/dsk/c0t0d0s0 7644629 206026 736215
10、7 3% / 4./devices 0 0 0 0% /devices 5.ctfs 0 0 0 0% /system/contract 6.proc 0 0 0 0% /proc 7.mnttab 0 0 0 0% /etc/mnttab 8.swap 2868600 1016 2867584 1% /etc/svc/volatile 9.objfs 0 0 0 0% /system/object 10. /dev/dsk/c0t0d0s3 8261237 3723232 4455393 46% /usr 11. fd 0 0 0 0% /dev/fd 12. /dev/dsk/c0t0d0
11、s4 4130238 74849 4014087 2% /var 13. swap 2867584 0 2867584 0% /tmp 14. swap 2867624 40 2867584 1% /var/run 15. /dev/dsk/c0t0d0s7 35611388 930133 34325142 3% /export/home 復制代碼所有的df 變種都接受一個目錄或路徑,然后顯示包含該路徑的文件系統(tǒng)的磁盤空間信息。例如,下面顯示了應該如何獲得根文件系統(tǒng)的空間信息:1.$ df -k / 2.filesystem kbytes used avail capacity mounted
12、 on 3./dev/dsk/c0t0d0s0 7644629 206026 7362157 3% / 復制代碼或者,下面使用df 顯示了一個用戶的home 目錄的空間信息:1.$ df -k mc 2.filesystem kbytes used avail capacity mounted on 3./dev/dsk/c0t0d0s7 35611388 930133 34325142 3% /export/home 復制代碼使用 df 的輸出df 工具實際上是disk free 的縮寫,并且這也正是該工具所顯示的內容。如果再次查看某個示例輸出,您可以從中提取一些特別重要的元素:filesy
13、stem kbytes used avail capacity mounted on /dev/dsk/c0t0d0s7 35611388 930133 34325142 3% /export/home 第一列通常具有與塊大小數(shù)據(jù)相對應的標題,它顯示了磁盤的總大小。used 列顯示了該文件系統(tǒng)或設備上已使用的塊數(shù)。avail 列顯示了該文件系統(tǒng)上尚未使用的(可用的)塊數(shù)。capacity 列提供了總大小中已使用的磁盤空間所占的百分比。這個信息本身可以提供關于可用空間的直觀指示。缺省情況下, unix 所創(chuàng)建的文件系統(tǒng)中百分之九十的容量可用于存放用戶數(shù)據(jù)。剩下的百分之十由系統(tǒng)保留,以便root
14、用戶執(zhí)行緊急維護工作。如果用戶試圖添加或創(chuàng)建超出該限制的文件,那么將返回一個錯誤(超出文件系統(tǒng)空間)。有了這個緊急維護空間,就可以利用它對一塊已滿的磁盤進行恢復。例如,作為管理員,您可以使用這個空間來創(chuàng)建快速備份,或對現(xiàn)有的數(shù)據(jù)進行壓縮而無需為達到該目的使用輔助文件系統(tǒng)。您可以使用tunefs 工具或在創(chuàng)建文件系統(tǒng)時,調整保留的空閑空間的大小。對于大容量磁盤來說,這是至關重要的,因為其中百分之十的緩沖區(qū)可能等于許多個gb 的潛在空間。通常好的做法是至少保留百分之一的空間,以便在完全用盡存儲空間之前,提供最低限度的緩沖區(qū)空間。在深入研究這個問題之前,特別是如果已經(jīng)使用了大量的磁盤空間,您需要確定
15、到底是誰使用了所有的這些空間。使用 dudu 命令并不是顯示磁盤的空閑空間,而是顯示磁盤使用情況的信息。du 工具用于確定文件和目錄的磁盤使用情況。要使用這個工具,改變到一個目錄,然后運行該工具(請參見清單6)。清單 6. du 命令1.$ cd /var 2.$ du 3.16 ./lost+found 4.4 ./sadm/install/admin 5.22 ./sadm/install/logs 6.28448 ./sadm/install 7.4 ./sadm/pkg/sunwocfd/install 8.4 ./sadm/pkg/sunwocfd/save/pspool/sunwo
16、cfd/install 9.16 ./sadm/pkg/sunwocfd/save/pspool/sunwocfd 10. 18 ./sadm/pkg/sunwocfd/save/pspool 11. 20 ./sadm/pkg/sunwocfd/save 12. 28 ./sadm/pkg/sunwocfd 13. 4 ./sadm/pkg/sunwcsu/inst 14. . 復制代碼上面的清單6 中顯示的輸出,經(jīng)過了適當?shù)恼{整。缺省情況下,du 將顯示當前或指定的目錄下每個文件和目錄的文件使用情況。得到的值是文件的大小,單位為該系統(tǒng)中的缺省塊大小, 與 df 所使用的單位相同。 可能是也
17、可能不是1k,而使用-k 命令行選項,您可以強制以1k 塊為單位進行顯示。您可能需要根據(jù)所查看的頂級文件或目錄對信息進行摘要。使用-s 選項以打開摘要視圖。下面是solaris 安裝中的一個摘要版本在/var 目錄中的顯示:1.$ du -sk 2.70818 . 復制代碼請注意,它顯示了當前目錄(.) 的摘要信息。要獲得所有文件和目錄的摘要信息,可以使用* 通配符(請參見清單7)。清單 7. 使用 * 通配符獲得摘要信息1.$ du -sk * 2.382 adm 3.950 apache 4.683 apache2 5.6837 appserver 6.1 audit 7.162 cach
18、e 8.3 cc-ccr 9.2 crash 10. 4 cron 11. 31 dmi 12. 22 dt 13. 6 fm 14. 2 imq 15. 1 inet 16. 3 krb5 17. 4 ld 18. 1 ldap 19. 937 lib 20. 6 log 21. 8 lost+found 22. 2 lp 23. 2 mail 24. 1 mysql 25. 1 news 26. 3 nfs 27. 38 nis 28. 2 ntp 29. 10034 opt 30. 1 preserve 31. 96 run 32. 49687 sadm 33. 15 saf 34. 3
19、 samba 35. 2 sma_snmp 36. 131 snmp 37. 39 spool 38. 4 statmon 39. 663 svc 40. 14 tmp 41. 10 uucp 42. 24 yp 復制代碼使用該工具時,特別是在用戶目錄中使用該工具時,請?zhí)貏e小心,因為所顯示的信息中不包含隱藏文件,換句話說, 具有單點號前綴的那些文件和目錄。您可能希望使用下面的代碼行,在用戶目錄中獲得所有的摘要信息:1.$ du -sk * .a-za-z0-9* 復制代碼du 命令的最后一個非常有用的選項是-d,該選項可以防止du 命令超過文件系統(tǒng)邊界。例如,要確定根文件系統(tǒng)而不是任何其他的文
20、件系統(tǒng)的磁盤使用情況,您可以使用-d 選項:1.$ du -dsk / 復制代碼有些系統(tǒng)沒有這個選項,但是有-x 命令行選項,該選項僅包含與您所指定的路徑相同的設備或文件系統(tǒng)中的文件使用情況。查找一個特定用戶的磁盤使用情況要查找某個用戶所使用的磁盤空間,在使用find 命令的同時,您需要結合使用du 命令以僅報告特定用戶的磁盤使用情況。1.$ find . -user mc -type f -exec du -k ; 復制代碼-user 選項允許您指定find 將僅報告屬于特定用戶的文件。-type 選項強制find 僅返回特定類型(在本示例中是文件)項目的路徑,這樣可以防止du 包含目錄,因
21、為這些目錄可能屬于某個用戶,但其中卻包含了許多用戶的文件。然后,對于查找到的每個路徑,執(zhí)行du 命令以報告磁盤使用情況。要獲得摘要信息, 換句話說,即某個特定用戶所使用的總空間,您可以使用awk 對該信息進行總計,并打印出最后的值:1.$ find . -user mc -type f -exec du -k ;|awk s = 2. s+$1 end print total used: ,s 3.total used: 123721 復制代碼對于組,您可以根據(jù)相同的原則對find 使用-group 選項:1.$ find . -group mcslp -type f -exec du -k
22、;|awk s = s+$1 end print 2.total used: ,s 3.total used: 542485 復制代碼然而,如果啟用了磁盤配額,那么就有一種更簡單的方法。使用配額配額系統(tǒng)以文件系統(tǒng)為單位,自動監(jiān)視該文件系統(tǒng)中各個用戶的磁盤使用情況。配額環(huán)境不僅允許您監(jiān)視磁盤的使用情況,而且還允許設置相應的使用限制,在超過使用限制時提供警告或者更直接地禁止用戶使用超過所分配的配額值的磁盤空間。下限(發(fā)出警告) 稱為軟限制, 而上限(禁止創(chuàng)建超過該限制的文件)稱為硬限制。有些系統(tǒng)可能還允許您控制每個用戶所擁有的文件的數(shù)目。在您的計算機上啟動配額的確切方法取決于您所使用的操作系統(tǒng)。大
23、多數(shù)unix 系統(tǒng)在缺省情況下都包含配額的支持。linux® 系統(tǒng)可能需要構建新的包含配額支持的內核。然而,通常大多數(shù)操作系統(tǒng)為每個文件系統(tǒng)使用一個稱為quotas 的文件,其中包含了對每個用戶的空間使用限制。要啟用配額,您首先需要創(chuàng)建該文件, 并確保僅有root 用戶可以編輯該配額文件:1.$ touch /export/home/quotas 2.$ chmod 600 /export/home/quotas 復制代碼然后,使用quotaon 命令啟用配額功能:1.$ quotaon /export/home 復制代碼最后,您必須為每個用戶編輯適當?shù)呐漕~??梢允褂胑dquo
24、ta 命令并指定相應的用戶來完成這項任務:1.$ edquota mc 復制代碼這將打開缺省的編輯器(或者vi,如果您沒有設置可選的編輯器),其中包含一個用來設置配額值的簡單表格。在下面您可以看到, 已為用戶home 目錄文件系統(tǒng)啟用了配額,并且軟限制為200,000kb ,硬限制為400,000kb 。文件限制的設置為零,這表示沒有設置限制,用戶可以設置并創(chuàng)建任意數(shù)目的文件。fs /export/home blocks (soft = 200000, hard = 400000) inodes (soft = 0, hard = 0) 如果有更多的文件系統(tǒng)具有配額,那么您需要為這些文件系統(tǒng)配
25、置更多的行。如果您需要對多個用戶配置配額,那么可以首先為一個用戶設置配額,然后對edquota 使用-p 命令行選項。這將使用指定的用戶作為基礎來創(chuàng)建新的用戶。例如,要使用mc 的設置為用戶名slp、tw 和 sh 設置配額,請執(zhí)行下面的命令:1.$ edquota -p mc slp tw sh 復制代碼使用配額進行文件限制警告當用戶創(chuàng)建一個超過其軟限制的文件時,他們將會得到下面的警告:quota_ufs: warning: over disk limit (pid 1738, uid 101, inum 94, fs /export/home) 請注意,留給用戶7 天的時間更正該問題,您可
26、以使用edquota -t 來更改這個期限。如果用戶試圖創(chuàng)建超過硬限制的文件,那么系統(tǒng)將終止寫進程并根據(jù)相應的限制來截斷該文件:1.$ mkfile 210000k overlimit 2.quota_ufs: over hard disk limit (pid 1843, uid 101, inum 130, fs 3./export/home) 4.overlimit: initialized 191873024 of 215040000 bytes: disc quota exceeded 復制代碼通過運行quota 命令,任何用戶都可以檢查他們自己的配額限制和磁盤使用情況:1.$ qu
27、ota 2.over disk quota on /export/home, remove 199993k within 7.0 days 復制代碼配額管理使用 quota 命令,系統(tǒng)管理員可以檢查任何用戶的配額,您應該使用-v 命令行選項以提供關于文件系統(tǒng)、使用情況和限制信息的完整報告(請參見清單8)。清單 8. 使用 -v 選項1.$ quota -v mc 2.disk quotas for mc (uid 101): 3.filesystem usage quota limit timeleft files quota limit 4.timeleft 5./export/home 3
28、99993 200000 400000 6.9 days 151 0 0 復制代碼要獲得某個文件系統(tǒng)中詳細描述所有用戶的磁盤和配額使用情況的報告,可以使用repquota 命令,并指定要報告的文件系統(tǒng)(請參見清單9)。清單 9. 使用 repquote 命令1.$ repquota -v /export/home 2./dev/dsk/c0t0d0s7 (/export/home): 3. block limits file limits 4.user used soft hard timeleft used soft hard timeleft 5.mc +- 399993 200000 4
29、00000 6.9 days 151 0 0 復制代碼要確保配額信息保持最新,您應該使用quotacheck 命令。這將利用用來報告配額信息的配額信息對文件存儲數(shù)據(jù)進行驗證。您應該使用cron 來自動地運行這項任務,每天一次比較合適(因為這個過程是比較耗時的)。配額的技巧和陷井配額系統(tǒng)提供了監(jiān)視和自動管理的最佳組合,但是您應該注意啟用了配額的文件系統(tǒng)以及您所設置的限制,因為它們可能會妨礙用戶的工作,而不是控制他們的磁盤使用情況。例如,與您進行的使用配置相比, 程序員可能需要更多的空間來構建一個應用程序。通過提供一個不受限制的編譯區(qū)域(通過設置一個可選的臨時目錄),您可以在維持他們的home 目
30、錄配額的同時避開這個問題,或者在設置很高的硬限制 (甚至可能是該文件系統(tǒng)的最大容量)的同時,設置合適的軟限制。其結果應該是當達到軟限制時給出一個警告,而不會真正地實施硬限制。用戶應該仍然可以構建和創(chuàng)建臨時文件,但是因為在構建的過程中會刪除這些文件,所以不應該禁止用戶創(chuàng)建他們所需的文件。配額還可以用來幫助完成監(jiān)視任務,并提醒您關于特殊用戶帳戶的空間使用情況。我過去曾使用配額來監(jiān)視web 用戶帳戶,即所謂的nobody 帳戶和其他帳戶,以確保它們無法向不應具有訪問權限的文件系統(tǒng)中寫入文件。要完成這項任務,可以將您需要保護的文件系統(tǒng)和用戶的硬限制設置為1kb 。自動監(jiān)視手動監(jiān)視磁盤空間使用情況是可行的,但是您并不希望不停地運行df(甚至d
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025版成都事業(yè)單位勞動合同范本(含勞動合同簽訂及備案要求)3篇
- 2024年藥理學研究員崗位協(xié)議3篇
- 2025版開發(fā)商與二手房買家房屋置換及裝修服務合同3篇
- 建筑物給排水安全合同
- 野營基地建設合同進度跟蹤
- 公共設施維護招標實施細則
- 2024年鐵路客運特許經(jīng)營合同3篇
- 物流信貸證明業(yè)務
- 保定市河道水利工程規(guī)劃
- 婚禮場地租賃合同違約
- 2025蛇年元旦晚會
- 《高低壓配電室施工工藝標準》
- 2024年太陽能光伏組件高空清洗作業(yè)人員安全保障合同3篇
- 大學學業(yè)規(guī)劃講座
- 【MOOC】中國近現(xiàn)代史綱要-武漢理工大學 中國大學慕課MOOC答案
- 綜合管廊知識
- 《國家課程建設》課件
- 新教科版小學1-6年級科學需做實驗目錄
- 2024過敏性休克搶救指南(2024)課件干貨分享
- 【發(fā)動機曲軸數(shù)控加工工藝過程卡片的設計7800字(論文)】
- 2024年貴州貴陽市貴安新區(qū)產(chǎn)業(yè)發(fā)展控股集團有限公司招聘筆試參考題庫含答案解析
評論
0/150
提交評論