Linux下,如何自動對日誌進行壓縮備份?

新夢想it教育 發佈 2022-08-16T11:57:53.974513+00:00

背景  系統中安裝了前置機服務,該服務由銀行提供。前置機日誌列印的非常詳細,同時並未進行壓縮處理。這導致的直接後果就是,每天會有5G左右的日誌產生。過不了多久就需要手動壓縮備份一次。  當今天系統再次報警磁碟不足時,決定徹底解決該問題。

背景

  系統中安裝了前置機服務,該服務由銀行提供。前置機日誌列印的非常詳細,同時並未進行壓縮處理。這導致的直接後果就是,每天會有5G左右的日誌產生。過不了多久就需要手動壓縮備份一次。

  當今天系統再次報警磁碟不足時,決定徹底解決該問題。解決的方案也很簡單,基於Linux寫一個簡單的腳本,對日誌進行定時壓縮備份。大家如果在實踐中遇到類似的問題,可以直接基於下面的腳本進行修改、豐富使用。

  具體操作

  執行腳本編寫

  首先,創建一個執行日誌壓縮、備份和刪除的腳本,命名backup.sh,並賦予可執行權限,腳本內容如下:

  #!/bin/bash

  cd /log/

  echo '開始壓縮...'

  tar -czvf /log/bak/trade.log.`date -d yesterday +%F`.tar.gz trade.log.`date -d yesterday +%F`

  echo '壓縮完畢...,執行刪除'

  rm -rf trade.log.`date -d yesterday +%F`

  echo '刪除完畢.'

  在上述腳本中,先通過cd?命令進入目標目錄,在執行命令中會通過echo列印一些日誌信息,這個主要用於進行調試。

  執行tar -czvf命令,進行日誌的壓縮。命令後面第一個參數為壓縮之後的文件的名稱及存儲路徑,這裡放到bak目錄下,第二個參數為待壓縮的日誌。

  我們重點來介紹一下文件名稱中date -d yesterday +%F?的含義。在Linux中,date +"%F"能輸出系統的當前日期:

  $ date +"%F"

  2022-08-09

  命令中,date命令是輸入日期,後面部分用于格式化。

  但這都是列印出系統的當前時間,如果要獲取相對當前時間的某個時間,需要通過-d參數來實現。

  $ date -d yesterday +%F

  2022-08-08

  這裡就獲得了前一天的日期了。當然,也可以輸出後一天的時間,比如:

  $ date -d"yesterday" +"%F %H:%M:%S"

  2022-08-08 21:36:15

  在理解了如何獲取系統日期之後,上面的腳本就比較好理解了。

  先通過執行tar -czvf?命令,進行日誌的壓縮,壓縮文件直接存放在bak目錄,壓縮完畢之後,通過rm -rf命令對日誌進行刪除。

  在完成上述編輯之後,可以直接執行該腳本,驗證一下是否正確,然後就可以通過定時任務來進行配置了。

  定時任務執行

  在完成了腳本的編寫並賦予可執行權限之後,就需要基於crontab來進行定時任務的配置。

  執行crontab -e打開定時任務文件編輯界面,輸入如下信息:

  30 2 * * * /log/backup.sh

  上面的指令是在說:每天2點30分執行/log/backup.sh腳本。編輯完成,保持退出。那麼在每天凌晨2點30分,便會進行腳本的執行。

  這裡再拓展一下,上述crontab中對應的表達式含義如下:

  minute hour day month week command 順序:分 時 日 月 周 命令

  根據需要,你可以調整定時任務的執行時間點或周期。

  關於crontab這裡再補充一下它的常見指令,方便大家使用:

  crontab -e // 編輯

  crontab -l // 查看

  service crond status

  service crond start// 啟動服務

  service crond stop// 關閉服務

  service crond restart// 重啟服務

  service crond reload // 重新載入配置

  cd /var/spool/mail/用戶文件 查看執行情況

  小結

  至此,關於Linux下自動日誌壓縮備份腳本已經完成。雖然非常簡單,但卻可以極大地釋放人力資源,再也不用手動清理了。當然,在實踐中,場景不同使用的腳本可能更會更複雜,但基本原理是一致的,大家可根據具體情況來豐富腳本的功能。

關鍵字:

美髮師強調:一定要好好養護頭皮!

2021-11-08T07:57:48.336662+00:00

【根本是頭皮保養品的洗髮精】

前陣子洗髮後總看到浴室的落水口有一大撮頭髮,

還有地板磁磚也是,覺得地面更髒亂,覺得很心煩,

就忍痛把留了多年的長髮給剪了✂


剪髮時美髮師跟我強調,要我好好養護頭皮,

隨著生活作息、飲食習慣變遷,加上壓力,

很多人都有不同的頭皮問題及受損髮困擾!
 
挑對洗髮精,搭配適當的頭皮按摩真的很重要
不好的頭皮就跟貧瘠的土地一樣,再好的生髮夜都沒有作用😱
所以“養髮關鍵就在頭皮”尤其洗髮精更是關鍵‼
【因為每天洗頭時都要使用的產品,不能輕視它的重要性!】

 


 
專為虛弱髮設計,重點在「頭皮營養」滋養、茂盛
針對補充頭皮營養洗髮精,但無藥性配方!
這瓶洗髮精的成分可以說媲美做成臉部保養品了👍
真的是給頭皮最極致的呵護!
 
使用一段時間的Magicom乳鐵蛋白專業養護洗髮精

真的很有感,排水孔的頭髮都快沒了~


綠色按壓式包裝很有質感, 洗頭時按壓一至兩下,

輕輕搓揉就起泡,有別於市面上的洗髮精,

一洗就能感受泡沫的細緻真的很不一樣,泡沬非常的細緻~

而且頭髮打濕後,在手中搓揉一下,抹上頭髮上也是很快就起泡,

清洗後髮絲就有滋潤感,可以不用使用護髮!

 


過去使用洗髮精我都會洗兩次,洗第二次才會起泡,

但乳鐵蛋白洗髮精使用第一次時就會有很多泡泡,用量很省耶!

一瓶有700ml用了兩個多月還有2/3瓶好像用不完XD
雖然乳鐵蛋白洗髮精價錢不是很漂亮,但轉個念想,

買再多便宜的都沒有效果,會比較好嗎?
 
【不含矽靈,但洗完的髮絲卻擁有滋潤感!】
洗髮完成吹乾的頭髮也不扁塌,蓬鬆健康
超適合像我這種細軟髮、稀疏髮量少、中東大油髮和扁塌瀏海
所以我覺得很好用很推唷❤️

 

商品資訊

 

━━ \專為虛弱髮設計/ ━━

無藥性配方X市面最高含量

《Magicom乳鐵蛋白專業養護洗髮乳》

✔不含矽靈、皂鹼  ✔全家適用

✔天然潔淨成分  ✔敏弱OK 

「乳鐵蛋白」就是戰勝弱髪的關鍵,

  我們要重新定義你的頭皮! 

https://www.cashin.tw/product/000000000034640