1. 程式人生 > >處理AIX檔案系統空間不足常用命令及注意事項

處理AIX檔案系統空間不足常用命令及注意事項

三個確定:
<1>確定所要清理的檔案型別:
(1)建議只清理LOG等日誌檔案,對於需清理檔案採用清空或移動的策略,擴充檔案系統則是最後考慮的方法。
(2)對於tar,gz等型別的檔案,需確認檔案用途後再進行移動
(3)系統檔案勿做任何操作
<2>確定檔案最後修改時間:
(1)如果檔案的修改日期是當天或前幾天,則不能移動
(2)如果檔案的修改日期是前幾個月或不是當年,則可以考慮移動
<3>確定可清空檔案的清理順序:
(1)首先查詢SIZE較大的日誌檔案
(2)如果未找到大size檔案,則有可能產生大量的小檔案,如aud日誌
(3)比較du及df 的結果,如果相差較大,則查詢已經刪除但還被記憶體中程序佔用的檔案


對於Oracle10g,在檔案或目錄生成的時間不是當前時間時,可以清除以下檔案:
1、$ORACLE_BASE/admin/*/bdump/*trc
2、$ORACLE_BASE/admin/*/udump/*trc
3、$ORACLE_BASE/admin/*/adump/*aud
4、$ORACLE_BASE/admin/*/bdump/cdmp* 
5、$ORACLE_BASE/admin/*/cdump/core* 


【範例】
#find /dir -xdev -size +20480 -ls 
     注:該命令找出/dir目錄下大於10M(20480*512byte=10M)的檔案,對於檔案大小可自行調整


# find /var -xdev -mtime 1  -ls
     注:該命令檢視最近1天修改過的檔案,對於日期可自行修改


# > /var/spool/mail/root 
     注:該命令用於清空mail檔案,用大於號清除被程序佔用的檔案


#ls –l /dir/file1    
#mv /dir1/file1 /dir2/file1
     注:該命令移動file1 從dir1到dir2,通過用於移動長期未使用的檔案(注:移動檔案只能是使用者的備份tar 或gz壓縮打包檔案,不能是任何系統檔案)      


#ln –s /dir1/file1 /dir2/file1
     注:如果我們夜間將一個應用部門人員備份的檔案移動前,最好能詢問應用部門人員,如果無法詢問,事後也需詢問,或通過上述命令建一個連結到新位置
刪除無用的檔案(需未被程序佔用,可先通過LSOF檢視後再刪除)
如$ORACLE_BASE/admin/*/bdump下的trc檔案,cdmp目錄


#pwd
# rm –rf cdmp_200810*
     注:該命令執行前請確定所在目錄,儘量少使用萬用字元,或檔名字首寫長一些,避免刪錯檔案


清理被程序佔用但已刪除的檔案
  # fuser –dV /home
     如果有查出結果,並且對應的程序號找不訪問的檔案,說明該程序開啟的檔案被刪除,會導致檔案系統虛滿
注:該方法清除的程序通常只有佔用太多空間的情況下,因為一些程序我們無法確定是否可以刪除。


檢視找出的檔案是否被其它程序佔用
     # lsof   /var/log/maillog 
     COMMAND   PID USER   FD   TYPE DEVICE      SIZE   NODE NAME
     syslogd 22986 root    4w   REG   58,6 760581712 129554 /var/log/maillog
     注:如果該命令沒有輸出,則表示暫時無程序佔用該檔案


處理過程雖然簡單,但在檔案系統報滿出問題前及時做好防範才是根本。