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再帰コンポーネントの簡単な使用例

序文多くの学生は既に再帰に精通していると思います。アルゴリズムの問​​題を解決するために再帰がよく使...

CSS 属性値正規マッチングセレクターの使い方 (ヒント)

属性値の正規一致セレクターには 3 つの種類があります。 [属性^="値"] [...

VUEはG2チャートを使用した実装を導入します

目次G2チャートについて使用テンプレートで使用される完全なコード (棒グラフ)世界地図を追加するG2...

より人気がありクリエイティブなダーク背景のウェブデザインの例

暗い背景スタイルのページ デザインは非常に人気があり、シックでエレガント、そして非常にクリエイティブ...

InnoDB ロック (レコード、ギャップ、Next-Key ロック) の詳細な説明

レコード ロックは、単一のインデックス レコードをロックします。レコード ロックは常にインデックスを...

Reactフック入門チュートリアル

ステートフック例: 'react' から useState をインポートします。 関...

MySQL の int(n) の後の n はどういう意味ですか?

int(1) の長さ 1 は、許可されたストレージ幅を表していないことはすでにご存知かもしれません...

MySQL ログの設定と表示方法

MySQL には次のログがあります。エラーログ: -log-errクエリログ: -logスロークエリ...

Vueはプログレスバーの変更効果を実現します

この記事ではVueを使ってプログレスバーの変更を簡単に実装してみましたので参考にしてください。具体的...

Apache の一般的な仮想ホスト設定方法の分析

1. Apacheサーバーのインストールと設定yum インストール httpd -y systemc...

CSS スタイルの競合を解決するいくつかの方法 (要約)

1. セレクターを調整するコンビネータを使用すると、セレクターの説明をより正確に記述できます (C...

Angularルーティングアニメーションと高度なアニメーション機能の詳細な説明

目次1. ルーティングアニメーション2. グループクエリとスタガー1. ルーティングアニメーションル...

Linux で Sudo を使用して権限を委譲する

sudo 権限委譲の概要su スイッチ ID: su –l ユーザー名 –c 'コマンド&#...

DockerはホストのMysql操作に接続します

今日、会社のプロジェクトでは docker を設定する必要があります。Windows に正常にインス...

HTML タグ sup と sub の応用の紹介

HTML タグ: 上付き文字HTML では、<sup> タグは上付き文字のテキストを定義...