2 つの Linux サーバー間の自動ファイル同期

2 つの Linux サーバー間の自動ファイル同期

サーバーB(172.17.166.11)の電源がオンまたは再起動されると、サーバーA(172.17.166.10)の指定されたディレクトリ内のすべてのファイルが自動的に取得されます。

1. サーバーBとサーバーAの間に相互信頼関係を構築する

(1) Server Bでssh-keygen -t rsaを実行し、Enterキーを押します。 (2) Server Bでssh-copy-id -i 172.17.166.10を実行し、Enterキーを押してServer Aのパス​​ワードを入力します。 (3) Server Bでssh 172.17.166.10を実行し、パスワードなしでServer Aにログインできるかどうかを確認します。

2. サーバーB

次のディレクトリ構造を作成します

[root@w-11 home]# ツリーシェル
シェル
├── logs ----ディレクトリ └── pull_170.sh ----スクリプト

スクリプトは次のとおりです。

#!/bin/bash
#引く_
#著者:whz
#日付:20200805
#存在しない変数はスクリプトの実行を終了します set -o nounset
# 実行エラーによりスクリプトの実行が終了します。set -o errexit
# 制限パスを定義する
PATH="/bin:/usr/bin:/sbin:/usr/sbin"
# adirname - 指定されたファイルの絶対ディレクトリ名を返す
adirname() { odir=`pwd`; cd `dirname $1`; pwd; cd "${odir}"; }
MYNAM=`ベース名 "$0"`
MYDIR=`ディレクトリ名 "$0"`
MYLOG_PATH="${MYDIR}/logs"
MYLOG="${MYLOG_PATH}/${MYNAM}_`日付 +%F`.log"
echo "`which rsync` -avtW --progress --delete [email protected]:/home/iis/ /home/iis/" >> ${MYLOG}
`which rsync` -avtW --progress --delete [email protected]:/home/iis/ /home/iis/ >> ${MYLOG}
終了 0

3. サーバーBのCrontabプラン

crontab -e
@reboot /home/shell/pull_10.sh

これで完了です。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Linuxはscpコマンドを使用してファイルをローカルコンピュータにコピーし、ローカルファイルをリモートサーバーにコピーします。
  • Linux サーバーでフォルダー、ファイル、解凍コマンドを削除する方法
  • Samba を使用して Linux サーバー上で共有ファイル サービスを構築する方法
  • Linux サーバーと Windows システム間でファイルをアップロードおよびダウンロードする方法
  • PythonはLinuxサーバー上のファイルを読み取る
  • Linuxサーバー間のリアルタイムファイル同期の実現
  • SSH経由でLinuxサーバーにファイルやフォルダをアップロードする方法
  • Linux ローカルとサーバー間でファイルを転送し、Linux サーバー上でファイルをアップロードおよびダウンロードするためのコマンドを記述する方法

<<:  画像拡大鏡効果のJSバージョン

>>:  Zabbixは複数のmysqlプロセスの監視を実装します

推薦する

Vue パッケージサイズの最適化の実装 (1.72M から 94K)

1. 背景最近、独立した開発者がUIデザインを行うのを支援するために、uideaというWebサイト...

集める価値のある 15 個の JavaScript 関数

目次1. 数字を逆にする2. 配列内の最大のn個の数値を取得する3. 階乗を計算する4. 現在の動作...

Linux システム修復モード (シングル ユーザー モード)

目次序文1. シングルユーザーモードでの一般的なバグ修正2. シングルユーザーモードでシステムパスワ...

Vue 開発プロジェクトで Font Awesome 5 を使用する方法

目次依存関係をインストールする構成使用1.アイコン検索ページに入る2. 使用したいアイコンの英語名を...

JavaScript 組み込みの日付と時刻の書式設定のサンプル コード

1. 基礎知識(日付オブジェクトのメソッド) 😜 getFullYear() は年を表す4桁の数字を...

MySQL の従来のソート、カスタム ソート、中国語のピンイン文字によるソート

MySQL の通常のソート、カスタム ソート、中国語のピンイン文字によるソート。実際の SQL を記...

MySQL Innodbの主な機能挿入バッファ

目次挿入バッファとは何ですか?挿入バッファのトリガー条件は何ですか?なぜ一意のインデックスにできない...

docker-compose を使用して MySQL を実行する方法

ディレクトリ構造 。 │ .env │ docker-compose.yml │ └─mysql ├...

MySQLはイベントを使用してスケジュールされたタスクを完了します

イベントでは、SQL コードを 1 回または一定の間隔で実行することを指定できます。通常、複雑な S...

Jira リバース プロキシを実装するための nginx について

概要: nginx リバース プロキシ jira を構成し、https を実装します。Tomcat ...

Mysql で group_concat の長さ制限を変更する方法

MySQL には、「group_concat」という関数があります。通常の使用では問題がないかもしれ...

CentOS8 で MySQL 8.0 をインストールしてデプロイする方法

MySQL 8 の公式バージョン 8.0.11 がリリースされました。公式発表によると、MySQL ...

MySQL クエリ フィールド タイプが json の場合の 2 つのクエリ メソッド

テーブル構造は次のとおりです。 id varchar(32) 情報JSONデータ: id = 1 i...

CSS flex 複数列レイアウト

基本的な3列レイアウト 。容器{ ディスプレイ: フレックス; 幅: 500ピクセル; 高さ: 20...

IE6 の歪み問題

質問: <form...> の下の <input type="hidde...