Centos7 で crontab + シェル スクリプトによる定期的な自動ファイル削除の問題を解決する

Centos7 で crontab + シェル スクリプトによる定期的な自動ファイル削除の問題を解決する

問題の説明:

最近、rsyncで毎回同期するデータ量が多いが、データベースのbakファイルを保持する必要があるという要望がある。

7日間保存するだけで十分なので、フォルダ内のbakファイルを自動的にクリーンアップする必要があります。

解決:

シェルスクリプトを使用してフォルダー内のタスクを定期的に削除する

1. シェルファイルを作成する

[root@zabbix スクリプト]# vim backup_sql_clean.sh
#!/bin/sh
/data1/backup/KDKDA\$AGKDPAYKT/XNAKSD/FXUIJ -mtime +10 -name "*.bak" -exec rm -rf {} \; を検索します。

パラメータの説明:

/data1/backup/KDKDA\$AGKDPAYKT/XNAKSD/FXUIJ #これはファイルパスです

-mtime +10 #これは保持する日数です。10は10日間を意味します

-name "*.bak" #これは削除するファイルの名前です。ここにサフィックスを追加すると、このタイプのファイルが削除されます

その他はLinuxコマンド

2. シェルファイルの権限を設定する

[root@zabbix スクリプト]# chown 777 backup_sql_clean.sh

3. crontabの定期実行を設定する

crontabコマンドは、定期的に実行される命令を設定するために使用されます。

Crontab 関連コマンドの説明: https://www.jb51.net/article/151069.htm

[root@zabbix /]# crontab -e
0 0 * * 7 /data/script/backup_sql_clean.sh

4. crondプロセスを開始する

crond の概念は crontab と切り離せません。 Crontab は、Unix および Unix 系オペレーティング システムでよく使用されるコマンドで、定期的に実行される命令を設定するために使用されます。

このコマンドは、標準入力デバイスから命令を読み取り、後で読み取って実行できるように「crontab」ファイルに保存します。そして、crond はそのデーモンです。

[root@zabbix /]# systemctl status crond.service #crond ステータスを表示 [root@zabbix /]# systemctl start crond.service #crond サービスを開始 [root@zabbix /]# systemctl restart crond.service #crond サービスを再起動

補充する;

CentOS7でのファイル削除スケジュールの紹介です

1. Linuxシステムに入る

2. 任意のディレクトリに、次のように sh というサフィックスを持つファイルを作成します。

3. 図に示すように、ファイルを編集して開きます。

4. キーボードの「i」キーまたは「insert」キーを押して編集モードに入ります。

入力:

#!/bin/sh
/data/iqmkj/backup/mysql を見つけます -mtime +7 -name "*.sql" -exec rm -rf {} \;

図に示すように:

例:

"/data/iqmkj/backup/mysql": 削除するファイルが保存されているディレクトリ。
「+7」: ファイルを保持する日数。つまり、数日以上経過したファイルは削除されます。
「*.sql」: 拡張子が .sql のファイルを削除します。
その他は固定文字です。

5: 編集したファイルを保存する

キーボードの「esc」キーを押して、現在のウィンドウに「:wq」と入力します。ファイルは正常に保存され、自動的にメイン インターフェイスに戻ります。

6. ファイルを承認する

入力:

chown 777 バックアップ_mysql.sh

認証に失敗した場合は、ファイルを直接選択し、右クリックして権限をすべてチェックするか、「777」に設定してください。

7: Centos7のスケジュールされたタスクを使用してタイマーを作成する

メイン インターフェイスに「crontab -e」と入力して、スケジュールされたタスク編集インターフェイスに入ります。

8. スケジュールされたタスクを設定する

「0 4 * * * /data/iqmkj/backup/mysql/backup_mysql_clean.sh」を挿入します。
例:
ファイル パスは、2 番目の手順で作成されたファイル パスです。

9. スケジュールされたタスクの設定を保存する

キーボードの「esc」キーを押して、現在のウィンドウに「:wq」と入力します。ファイルは正常に保存され、自動的にメイン インターフェイスに戻ります。

10. タイマーを開始する

メイン インターフェイスに「/bin/systemctl start crond.service」と入力します。これですべての設定が完了しました。

例:

スケジュールされたタスクを開始します: /bin/systemctl start crond.service
スケジュールされたタスクを停止します: /bin/systemctl stop crond.service
スケジュールされたタスクを再起動します: /bin/systemctl restart crond.service
スケジュールされたタスクのステータスを確認します: /bin/systemctl status crond.service

要約する

上記は、Centos7 で crontab + シェル スクリプトを使用して定期的にファイルを自動的に削除する問題を解決する方法について紹介したものです。お役に立てば幸いです。ご質問がある場合は、メッセージを残してください。すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。

以下もご興味があるかもしれません:
  • CentOS7 で Jenkins+Maven+Git 継続的インテグレーション環境を構築する方法
  • Win10にCentOS7仮想マシンをインストールする
  • CentOS7仮想マシンで固定IPアドレスを設定する方法
  • Centos7 に Nginx 統合 Lua サンプル コードをインストール
  • CentOS7.6 システムで yum を使用して lnmp 環境を構成する方法
  • CentOS7.3 での MySQL 8.0.13 のインストールと設定のチュートリアル
  • Centos7 での Rsync+crontab 定期同期バックアップ
  • Centos7 に php7 をコンパイルしてインストールし、php-fpm モードで Apache に接続する
  • Centos7 に mysql 8.0.13 (rpm) をインストールする詳細なチュートリアル
  • Centos7のホスト名を変更する3つの方法

<<:  Vue ターンテーブル抽選の簡単な実装

>>:  mysql5.7.18 解凍バージョンで mysql サービスを起動します

推薦する

ユーザーはその理由を知る必要がある

証券会社にいた頃、設計業務が忙しくなかったため、商品のマニュアルを書く役割を担ったことがありました。...

MySQL truncate table ステートメントの使用

Truncate table ステートメントは、テーブル内のすべてのデータを削除/切り捨てるために使...

MySQL 単一テーブルクエリの例の詳細な説明

1. データを準備するこのテーブルでは次の操作が実行されます 学生テーブルを作成 ( id int ...

フロントエンド開発に必要な共通ツール機能のまとめ

1. 時刻の書式設定とその他の方法moment.jsライブラリファイルの使用をお勧めします2. テン...

HTML テーブル マークアップ チュートリアル (38): ヘッダーの境界線の色属性 BORDERCOLOR

テーブルを美しくするために、ヘッダーに異なる境界線の色を設定できます。基本的な構文<TH 境界...

CSS3 の transition、transform、translate の違いと機能の簡単な分析

変換して翻訳するTransform は、変換と変形を意味します。他の幅属性や高さ属性と同様に、CSS...

Dockerfileを使用してApacheイメージを作成する方法

目次1. Dockerイメージ2. 既存のイメージに基づいてインスタンスを作成する3. ローカルテン...

mysql インストーラ ウェブ コミュニティ 5.7.21.0.msi インストール グラフィック チュートリアル

この記事の例では、Androidの9グリッド画像を表示するための具体的なコードを参考までに共有してい...

IIS サーバーから apk ファイルをダウンロードする際の 404 エラーの解決策

最近、IIS をサーバーとして使用すると、apk ファイルがサーバーにアップロードされましたが、ダウ...

CentOS7.5 の MySQL8.0.19 のインストールチュートリアルの詳細な手順

1. はじめにこの記事には MySQL インストール部分のスクリーンショットがないので、ある程度の基...

CSS3は、欠けた角の長方形、折り畳まれた角の長方形、欠けた角の境界線を実装しています。

序文数日前、偶然、コーナーの四角形が欠落している機能に遭遇しました。最初に頭に浮かんだのは、必要な場...

ウェブサイト標準の検証方法を通じてFlashページを共有する方法

1. 埋め込みは違法です<embed> タグは Netscape のプライベート タグで...

ページのキャッシュを防ぐソリューション

解決: <head> に次のコードを追加します。コードをコピーコードは次のとおりです。 ...

Dockerイメージが消える問題を解決する

1. 50と93では鏡像が消える [root@h50 /]# df -h ファイルシステムの使用済み...

CSSでnグリッドレイアウトを実装する方法

一般的なアプリケーションシナリオ現在のアプリのインターフェースは基本的に同じであり、グリッドレイアウ...