導航:首頁 > 文件類型 > linux刪除日誌文件

linux刪除日誌文件

發布時間:2023-03-26 15:25:11

1. linux定時清理nohup命令下產生的日誌

         nohup命令 將程序以忽略掛起信號的方式運行起來,被運行的程序的輸出信息將不會顯示到終端。一般用於將程序的輸出、報錯信息重定向到一個指定路徑的指定文件

語法 :nohup [command] [args] [&]    

nohup命令 最後要帶個&作為結束

例:nohup python XXX.py > abc/def/XXX.log 2>&1 &

args: 0 – stdin (standard input),1 – stdout (standard output),2 – stderr (standard error) ;

2>&1是將標准錯誤(2)重定向到標准輸出(&1),標准輸出(&1)再被重定向輸入到文件,即XXX.log中。

nohup命令的缺點:日誌文件文件越來越大,占內存且查看麻煩。因啟棗局為這個日誌文件和程序是共生死的,因為只要程序運行起來,就一直對log文件進行讀寫,直接刪除XXX.log會導致程序也被結束了。

目前想到的一些相關方法如下,並未完全解決問題。

參考: linux下nohup日誌輸出過大問題解決方案

split命令:

參數:-b:值為每一輸出檔案的大小,單位為 byte。

           -C:每一輸出檔中,單行的最大 byte 數。

           -d:使用數字作為後綴。默認這個數字後綴是兩位的,例如00,01,11. -a: 指定位數,例如 -a 4表示後綴是四位的。

           -l:值為每一輸出檔的列數大小。

           PREFIX:代表前導符,可作為切割文件的前導文件。

例如:

可以用split命令把很大的日誌文件分成多個小文件,分割完成後 原文件不變 。不會影響nohup運行的程序。

缺點:split文件分割依賴手動,當程序出故障或調試時,將日誌分割以便查看最新的日誌信息。沒法定時做到定時自動清理。

首先介紹find命令的參數

參考: linux find命令詳解

在這里主要用到的是這幾個參數:

-atime n 查找系統中最後n*24小時訪問的文件

-ctime n  查找系統中最後n*24小時被改變文件狀態的文件

-mtime n  查找系統中最後n*24小時被改變文件數據的文件

+n: n天前; -n: n天之內

find命令還可岩辯以和下一條命令連用(xargs或exec)



註:{}表示find到的東西;{}和 \;之間要有一個空格

我感覺exec不是很好用,怪怪的

cat dev/null

在 Linux 中, null 設備基本上被用來丟棄某個進程不再需要的輸出流,或者作為某個輸入流的空白文件,這些通常可以利用重定向機制來達到。

所以 /dev/null 設備文件是一個特殊的文件,它將清空送到它這里來的所有輸入,而它的輸出則可被視為一個空文件。另外,你可以通過使用 cat 命令顯示 /dev/null 的內容然後重定向輸出到某個文件,以此來達到清空該文件的目的。通過使用cat /dev/null,文件大小為0位元組。

用cat刪除文件:

但是我發現對於nohup的程序的日誌,這樣是無效的。因為nohup的程序持續不斷地在讀寫日誌文件,此時無法重定向,我試了幾次,日誌文件都壓根沒動。

crontab用悄讓於設置定時任務

參考:  linux crontab定時執行shell腳本

crontab命令被用來提交和管理用戶的需要周期性執行的任務,與windows下的計劃任務類似,當安裝完成操作系統後,默認會安裝此服務工具,並且會自動啟動crond進程,crond進程每分鍾會定期檢查是否有要執行的任務,如果有要執行的任務,則自動執行該任務。

語法

crontab(選項)(參數)

選項

-e:編輯該用戶的計時器設置;

-l:列出該用戶的計時器設置;

-r:刪除該用戶的計時器設置;

-u<用戶名稱>:指定要設定計時器的用戶名稱。

參數

crontab文件:指定包含待執行任務的crontab文件。

首先crontab -e,就會進入vi編輯界面。然後直接把新的命令輸進去就行了。

minute hour day month week command /XXX/XXX.log 順序:分 時 日 月 周

minute: 表示分鍾,可以是從0到59之間的任何整數。

hour:表示小時,可以是從0到23之間的任何整數。

day:表示日期,可以是從1到31之間的任何整數。

month:表示月份,可以是從1到12之間的任何整數。

week:表示星期幾,可以是從0到7之間的任何整數,這里的0或7代表星期日。

/n表示每個n的單位執行一次

command:要執行的命令,可以是系統命令,也可以是自己編寫的腳本文件。

意為每周的1:00執行,且輸出重定向到黑洞目錄。

2. linux日誌清理腳本清理不掉

linux是一個很能自動產生文件的系統,日誌、郵件、備份等。雖然現在硬碟廉價,我們可以有很多硬碟空間供這些文件浪費,讓系統定時清理一些不需要的文件很有一種爽快的事情。不用你去每天惦記著是否需要清理日誌,不用每天收到硬碟空間不足的報警簡訊,想好好休息的話,讓我們把這個事情交給機器定時去執行吧。

二、 分析日誌
查看日誌路徑和日誌命名規則:

要清理這個目錄下面如此命名態返咐規則的日誌。

三、方法
這時我想的肯定是希望能寫一個腳本把這些日誌清除掉,但不是刪除掉。那麼現在需要實現3步:

         1.找到所有項目的log的位置

         2.清除或者刪除log內容

         3.定時執行腳本

刪除和清空日誌命令:

find 對應目錄 -mtime +天數 -name "文件名" -exec rm -rf {} \;

實例命令:

find /opt/soft/log/ -mtime +7 -name "*.log" -exec rm -rf {} \;

說明:

將/opt/soft/log/目錄下所有7天前帶".log"的文件刪除。具體參數說明如下:

find:linux的查找命令,用戶查找指定條件的文件;

/opt/soft/log/:想要進行清理的任意目錄;

-mtime:標准語句寫法;

+7:查找7天前的文件,這里用數字代表天數;

"*.log":希望查找的數據類型,"*.jpg"表示查找擴展名為jpg的所世培有文件,"*"表示查找所有文件,這個可以靈活運帆純用,舉一反三;

-exec:固定寫法;

rm -rf:強制刪除文件,包括目錄;

{} \; :固定寫法,一對大括弧+空格+\+;

清空方法:

find /opt/soft/log/ -mtime +7 -name "*.log" -type f -print -exec truncate -s 0 {} \;    ->將符合這樣一個條件的文件查到出來並賦予它0M的大小。

-type f -print: 將符合的文件列印出來

truncate -s 0 aa.txt:意思是將aa.txt的大小變成0M,即把aa.txt的內容清空了

3. 在Linux下如何清除系統日誌

使用過Windows的人都知道,在使用windows系統的.過程中系統會變得越來越慢。而對於Windows下飽受詬病的各種垃圾文件都需要自己想辦法刪除,不然系統將會變得越來越大,越來越遲鈍!windows怎麼清理垃圾相信大家都知道的,那麼linux下怎麼清理系統垃圾呢?

Linux的文件系統比Windows的要優秀,不會產生碎片,對於長時間運行的伺服器來說尤為重要,而且Linux系統本身也不會像Windows一樣產生大量的垃圾文件。不知道這個說法有沒有可信度!至少我們可以確定的是linux系統的文件系統是比較優秀的!

錯誤

rm -f logfile

原因

應用已經打開文件句柄,直接刪除會造成:

1.應用無法正確釋放日誌文件和寫入

2.顯示磁碟空間未釋放

正確

cat /dev/null > logfile

把一下代碼保存為.sh後綴腳本來運行即可清除Linux系統日誌

#!/bin/sh

cat /dev/null > /var/log/syslog

cat /dev/null > /var/adm/sylog

cat /dev/null > /var/log/wtmp

cat /dev/null > /var/log/maillog

cat /dev/null > /var/log/messages

cat /dev/null > /var/log/openwebmail.log

cat /dev/null > /var/log/maillog

cat /dev/null > /var/log/secure

cat /dev/null > /var/log/httpd/error_log

cat /dev/null > /var/log/httpd/ssl_error_log

cat /dev/null > /var/log/httpd/ssl_request_log

cat /dev/null > /var/log/httpd/ssl_access_log

另外清理linux系統垃圾還有以下命令

sudo apt-get autoclean 清理舊版本的軟體緩存

sudo apt-get clean 清理所有軟體緩存

sudo apt-get autoremove 刪除系統不再使用的孤立軟體

4. linux哪些日誌文件可以刪除

刪除對你來說不重要的數據文本文件,系統日誌文件以及一些緩存文件,只要版不刪除系統配置權文件和重要的資料庫文件都可以。
用 + sort 找一下,看看有沒有log文件太大的~ -sh /* | sort -nr
/tmp 下的文件, 一般都可以刪除.
用命令看下文件或目錄的大小,根據它們對於自己的重要性來絕對是夠刪除。

5. linux使用tail查看日誌後自動刪除文件

使用crontab命令生成定時任務,每天shell腳本可以自動進行日誌清理。
為了避免手工刪除日誌核脊喊,考慮通過寫shell腳本來刪除30天以前的日誌文件,然後使用crontab命令生成定時任務,在每天早上0點1分調用上面的shell腳本進行日誌清理。
Linux是一種自由和野信開放源代碼的類UNIX操作系統。該改野操作系統的內核由林納斯·托瓦茲在1991年10月5日首次發布。

6. linux刪除日誌文件的命令

例: vi /var/log/messages :set nu 查看文件中的你要刪除的時間段在幾行之間 如果是100-200行,則將游標放在第100行,按100dd即可刪除。 還有其他方法。看你的具體需求。

7. 入侵Linux系統後日誌文件及入侵後日誌如何清除

現在可以在網上公開獲得的日誌清除程序代碼很粗糙,我曾經看到過最誇張的清日誌的代碼像這樣:
rm -rf /var/log/lastlog ; rm -rf /var/log/telnetd ; rm -rf /var/run/utmp ; rm -rf /var/log/secure ; rm -rf /root/.ksh_history ; rm -rf /root/.bash_history ; rm -rf /root/.bash_logut ; rm -rf /var/log/wtmp ; rm -rf /etc/wtmp ; rm -rf /var/run/utmp ; rm -rf /etc/utmp ; rm -rf /var/log ; rm -rf /var/adm ; rm -rf /var/apache/log ; rm -rf /var/apache/logs ; rm -rf /usr/local/apache/log ; rm -rf /usr/local/apache/logs ; rm -rf /var/log/acct ; rm -rf /var/log/xferlog ; rm -rf /var/log/messages ; rm -rf /var/log/proftpd/xferlog.legacy ; rm -rf /var/log/proftpd.access_log ; rm -rf /var/log/proftpd.xferlog ; rm -rf /var/log/httpd/error_log ; rm -rf /var/log/httpd/access_log ; rm -rf /etc/httpd/logs/access_log ; rm -rf /etc/httpd/logs/error_log ;rm -rf /var/log/news/suck.notice ; rm -rf /var/spool/tmp ; rm -rf /var/spool/errors ; rm -rf /var/spool/logs ; rm -rf /var/spool/locks ; rm -rf /usr/local/www/logs/thttpd_log ; rm -rf /var/log/thttpd_log ; rm -rf /var/log/ncftpd/misclog.txt ; rm -rf /var/log/ncftpd.errs ; rm -rf /var/log/auth ; rm -rf /root/.bash_history ; touch /root/.bash_history ; history Cr
整個一rm集合,要是伺服器跑了很長時間,積累了很多日誌。你這樣一刪除,的,你幫他省事了,他也省事,一眼就看出有人進來了。
先不說其他,用rm刪除就不可取,正確的刪除文件做法是用shred
shred -n 31337 -z -u file_to_delete
這樣多次擦除才夠安全。

閱讀全文

與linux刪除日誌文件相關的資料

熱點內容
word文件夾前面有個符號 瀏覽:350
把word轉換成語音 瀏覽:220
linuxfile文件 瀏覽:454
如何用網路打普通電話 瀏覽:463
linux進程打開的文件 瀏覽:134
新購u盤無法儲存文件 瀏覽:553
5s要不要升級ios93 瀏覽:926
小米手機助手怎麼關閉自動升級 瀏覽:24
外星人能不能升級到win10系統盤 瀏覽:652
加入java信任站點 瀏覽:486
好用的急救知識app 瀏覽:524
什麼是網路適配器驅動文件名 瀏覽:717
吉林文件箱多少錢 瀏覽:113
ae模板版本 瀏覽:204
手機qq步數功能在哪裡 瀏覽:721
c程序設計04737 瀏覽:403
女孩什麼年齡學編程 瀏覽:976
安慶如何做網路營銷推廣 瀏覽:620
什麼是數據標准化 瀏覽:708
aecc三維功能實例視頻教程 瀏覽:719

友情鏈接