linux教程:管理/var/spool/clientmqueue/下的大檔案
原因:
在baidu上查詢得知產生這些海量檔案的原因是:系統中有使用者開啟了cron,而cron中執行的程式有輸出內容,輸出內容會以郵件形式發給 cron的使用者,而sendmail沒有啟動所以就產生了這些檔案;所以這些檔案不是什麼重要的檔案,刪!
於是cd /var/spool/clientmqueue
rm * (rm -f *) 都不行,顯示引數列表過長(-bash: /bin/rm: Argument list too long)無法用rm直接刪除,怎麼辦?
解決辦法:
將crontab裡面的命令後面加上 > /dev/null 2>&1. 如:ls -l / > /dev/null 2>&1
補充,這些檔案太多的時候用rm刪除很慢,可以以root身份進入/var/spool/clientmqueue/,執行: ls|xargs rm -f 就能全部刪除了
使用xargs
# cd /var/spool/clientmqueue
# ls | xargs rm -f
回車後,過了兩三分鐘,終於執行完了,clientmqueue下空空如也,磁碟可用空間一下子增加了不少。
附xargs介紹:
Linux Shell真的是一個比較好玩的東西,以前也會經常寫一些,不過都是些簡單的東西,或者稱之為批處理,估計也只能叫批處理,只是一些簡單的命令的堆 積。:)。
今天稍微看了一下xargs,一個簡單的示例應用如下:
[root@TestServer haha]#ls
a.class b.class c.class
a.java b.java c.java
[root@TestServer haha]#ls |xargs rm
[root@TestServer haha]#ls
[root@TestServer haha]#
雖然有點避簡就煩,但是能說明了xargs的功能:它將輸入輸出給xargs後面的命令,作為那個命令的引數。
也就是說,上面的命令執行相當於:
rm a.class b.class c.class a.java b.java c.java
xargs將前面的ls的結果交給了xargs後面的rm命令,作為rm命令的引數。它真正的含義可以用xargs自己來解釋:
[root@TestServer haha]# cat a
first line
second line
[root@TestServer haha]# cat a |xargs
first line second line
[root@TestServer haha]# cat a |xargs ——verbose
/bin/echo first line second line
first line second line third line
[root@TestServer haha]# cat a |xargs ——verbose ——max-args=1
/bin/echo first
first
/bin/echo line
line
/bin/echo second
second
/bin/echo line
line
還有人這樣解釋xargs:
xargs的作用是用來回避對命令列長度的限制,它透過使用一個引數多次呼叫一個命令實現這一功能,而不是一次使用多個引數。這句話的意思 是:xargs永遠一次只傳給他後面的命令一個引數,然後不停的將所有引數一一傳完,然而,這個說法是錯誤的!下面的試驗將證明這個說法是不正確的:
[root@TestServer haha]# ll
total 12
-rw-r——r—— 1 root root 34 Aug 19 20:43 a
-rw-r——r—— 1 root root 34 Aug 19 20:45 b
drwxr-xr-x 2 root root 4096 Aug 19 20:54 c_folder
[root@TestServer haha]# ll c_folder/
total 0
[root@TestServer haha]# ls| xargs cp
[root@TestServer haha]# ll
total 12
-rw-r——r—— 1 root root 34 Aug 19 20:43 a
-rw-r——r—— 1 root root 34 Aug 19 20:45 b
drwxr-xr-x 2 root root 4096 Aug 19 20:54 c_folder
[root@TestServer haha]# ll c_folder/
total 8
-rw-r——r—— 1 root root 34 Aug 19 20:54 a
-rw-r——r—— 1 root root 34 Aug 19 20:54 b
[root@TestServer haha]#
從這個試驗可以看到,xargs確實是將a b c_folder三個引數同時傳給了cp命令,不然不可能出現這樣的結果。
附rm命令:
名稱:rm
使用許可權:所有使用者
使用方式:rm [options] name……
說明:刪除檔案及目錄。
引數:?
-i 刪除前逐一詢問確認。
-f 即使原檔案屬性設為唯讀,亦直接刪除,無需逐一確認。
-r 將目錄及以下之檔案亦逐一刪除。
範例:
刪除所有C語言程式檔;刪除前逐一詢問確認 :
rm -i *.c
將 Finished 子目錄及子目錄中所有檔案刪除 :
rm -r Finished
come from:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/90618/viewspace-630820/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- /var/spool/clientmqueue 下生成太多檔案處理clientMQ
- Linux下/var/spool/clientmqueue空間不足的解決LinuxclientMQ
- 【Linux】/var/spool/clientmqueue 佔滿根目錄LinuxclientMQ
- /var/spool/clientmqueue/目錄下存在大量檔案的原因及解決方法clientMQ
- Linux 中 /var/spool/postfix/maildropLinuxAI
- Linux教程-系統管理-/etc下的檔案詳解(轉)Linux
- 去掉linux中"You have new mail in /var/spool/mail/root"的提示LinuxAI
- You have new mail in /var/spool/mail/rootAI
- 在Linux下建立大檔案Linux
- 系列教程--Linux基礎--05--Linux 檔案管理Linux
- nagios提示linux主機磁碟空間不足,清空/var/spool/mail/rootiOSLinuxAI
- LINUX下查詢大檔案及大的資料夾Linux
- 如何讓sqlplus spool輸出的檔案成excel檔案SQLExcel
- Linux 基礎教程 38-檔案下載Linux
- linux下使用split 來分割大檔案Linux
- Linux下用less瀏覽大檔案Linux
- Linux 下的檔案管理&管理系統中的輸出輸入Linux
- day58:Linux:BashShell&linux檔案管理&linux檔案下載上傳Linux
- /var/spool/postfix/maildrop filling up inodes.AI
- 8.var目錄下的檔案和目錄詳解
- git大檔案管理Git
- 檔案管理[Linux]Linux
- Linux檔案管理Linux
- 手把手教你Linux下的檔案管理(一)薦Linux
- 【SQL*Plus】SPOOL到檔案且在螢幕上列印SPOOL輸出資訊SQL
- linux下的syslog和/var/logLinux
- 新手教程:如何在 Linux 下解壓 Zip 檔案Linux
- 函式FUN_GET_SPOOL_STRING_LHR的內容--spool匯出csv檔案格式函式
- Oracle Spool經典教程Oracle
- LINUX下的檔案加密Linux加密
- 【Linux入門教程】1 簡介、檔案管理、目錄Linux
- 給/var檔案系統減肥
- Java™ 教程(管理原始檔和類檔案)Java
- 快速找出Linux下大於100M的檔案Linux
- linux 下查詢大於100M的檔案Linux
- Linux下的檔案及檔案字尾名Linux
- Linux系統下使用split命令分割大檔案.Linux
- ADNI的fMRI檔案下載教程