サーバー間のファイル バックアップ ソリューション、サーバー ファイルを別のサーバーに自動的にバックアップする方法は?

サーバー間のファイル バックアップ ソリューション、サーバー ファイルを別のサーバーに自動的にバックアップする方法は?

多くの組織ではファイル サーバーをバックアップする必要があり、あるサーバーから別のファイル サーバーにファイルを自動的にバックアップすることがよくあります。どうやってそれを達成するのでしょうか?

1. Windowsファイルサーバーを自動的にバックアップする方法

Windows ファイル サーバーを自動的にバックアップする最も簡単な方法は、専用のサーバー ファイル自動バックアップ ソフトウェアをインストールすることです。現在、中国にはサーバー ファイルのバックアップに特化したソフトウェアがいくつかあります。たとえば、「大世智サーバーファイル自動バックアップシステム」(ダウンロードアドレス:http://www.grabsun.com/filebackup.html)があります。サーバーにインストールすると、サーバーのファイルの増分バックアップと完全バックアップを実行できます。つまり、サーバーのフォルダーをサーバーの他のディスクパーティション、外付けモバイルハードドライブ、他のファイルサーバーまたはNASストレージスペースなどに自動的に定期的にバックアップできるため、サーバーファイルのセキュリティが効果的に保護され、サーバーファイルの損失を防ぐことができます。次の図に示すように:


図: Dashizhi サーバーファイル自動バックアップ ソフトウェア

同時に、Dashizhi サーバー ファイル自動バックアップ システムを使用すると、あるサーバー上のすべてのファイルまたはフォルダーと対応するアカウントを別のサーバーに移行することも可能であり、アカウントとファイルのアクセス権限をリセットする手間を省くことができます。以下のように表示されます。


図: サーバーファイルの移行

もちろん、スクリプト コマンドを使用してこれを行うこともできます。詳細は以下の通りです。

一部のプロジェクト ファイルは Windows システムの一時ファイルにアップロードされるため、定期的にバックアップする必要があります。たとえば、次のように、D/information/images フォルダーとその下にあるすべてのファイルを F/Archives フォルダーにコピーします。

1. 新しいtxtファイルを作成し、次の内容を入力します。

パラメータの説明:

  • /e: 空のサブディレクトリを含むすべてのサブディレクトリをコピーします。
  • /I: ターゲット ファイルまたはディレクトリが存在せず、コピーするファイルの数が複数の場合、ターゲットはディレクトリであると見なされます。
  • /d: ターゲットファイルより後のファイル日付を持つファイルのみをコピーします (つまり、変更されたソースファイル)
  • /h: 隠しファイルとシステムファイルの両方をコピーします
  • /r: 読み取り専用ファイルをコピーして上書きする
  • /y: ファイル監査設定をコピーします (既存のファイルを上書きするかどうかの確認は表示されません)

2. テキストファイルを保存した後、ファイル名を「.bat」ファイルに変更します。

3. Win10システムの場合

スタートを右クリック->コンピューターの管理->システムツール->タスクスケジューラ->タスクスケジューラライブラリ->タスクの作成

Win7 システム

アクセサリ --> システムツール --> タスクスケジューラ - タスクの作成

ここで作成するのは、毎朝 9 時に 1 回実行されるものです。作成が完了したら、図 3 を参照してタスクを選択し、オプションの [実行] ボタンをクリックして、実行効果を確認します。

N分ごとに1回トリガーする必要がある場合は、トリガーを次のように設定する必要があります(例として10分ごとに1回を取り上げます)。

2. Linuxファイルサーバーを自動的にバックアップする方法

1. 事前説明:

2 台のサーバー間でスケジュールされた同期を確立する例として、サーバー A の /home/jack パスの内容をサーバー B の /home/test パスにバックアップします。

スケジュールされた同期時間を5分に設定する

2. 構成プロセス:

サーバー(サーバーA):

rsyncをインストールします: yum -y install rsync

ln -s /etc/rsyncd.conf

rsync設定ファイルを書き込みます: vim rsyncd.conf

分析は次のとおりです。

 uid = root #root ユーザー アクセス (ここでは ROOT ユーザーを使用しますが、新しく作成した他のユーザーも使用できます)
  gid = root #root グループユーザーアクセスポート = 871 #ポート 873 経由
  use chroot = yes #chrootを使用できます
  read only = no #読み取りと書き込み max connections = 4 #最大接続数 list = no #ファイルをリストしない list pid file = /var/run/rsyncd.pid #このステップではこのファイルは必要ありません timeout = 900
  ロック ファイル = /var/run/rsyncd.lock #このファイルはこのステップでは存在しない可能性があります ログ ファイル = /var/log/rsyncd.log #このファイルはこのステップでは存在しない可能性があります [backup] #アイテムを解放します (この命名に注意してください) 
   コメント = これはバックアップ用のモジュールです #モジュールの紹介、削除できます パス = /home/jack/ #公開パスはエラーを無視します
   auth users = root #認証ユーザーはrootです
     シークレットファイル = /etc/rsyncd.pass #パスワードファイル

4. ユーザーパスワードファイルを書き込みます: echo "root:111" > /etc/rsyncd.pass

(root: 前の手順で設定したログインユーザー名。111: ファイルのパスワードは任意に設定できますが、次に必要になるので覚えておいてください。この手順で rsyncd.pass ファイルが作成されます)

パスワードファイルの権限を変更します(この手順は非常に重要で、600のみにすることができます):chmod 600 /etc/rsyncd.pass

rsyncdサービスを開始する

サービス rsyncd 開始

プロセスが占有しているポートを確認します: netstat -tunlp

(rsyncd サービスを開始すると、ポート 873 が rsync によって占有されていることが表示されます)

クライアント(サーバーB):

1.yum -y rsyncをインストールします

2. echo "root:123" > /etc/rsyncd/rsyncd.pass

(root: ユーザー名はオプションです。ユーザー名を入力する場合は、サーバー設定の手順 3 で設定したユーザー名と同じにする必要があります。111: パスワードは必須です。サーバー設定の手順 4 で設定したパスワードと同じにする必要があります)

3. chmod 600 /etc/rsyncd.pass

4. バックアップファイルを保存するパスを作成します: mkdir /home/backups

(パスは任意に設定できます)

5. 5分ごとに、サーバーAのバックアップモジュールディレクトリ(/home/jackに設定)内のファイルをローカルディレクトリ(/home/backupsに設定)に同期します。

1> ssh-keygen -t dsa -b 1024

2> id_dsa.pubの内容をマシンBのauthorized_keysファイルに追加します。cat /root/.ssh/id_dsa.pub >> authorized_keys1

3> 定期的に実行する必要があるスクリプト ファイルを作成します。例: rsyncd.sh スクリプト: vi /etc/rsyncd.sh (パスは自分で設定します)。このスクリプトに次の内容を追加します。(各コマンドの意味はドキュメントの最後に説明されています)

rsync -auv --password-file=/etc/rsyncd.pass
[email protected]::backup /home/test/ 

4> スクリプトの実行時間を設定する: crontab –e、次の内容を追加する

*/5 * * * * sh /etc/rsyncd.sh #5分ごとに同期を実行します。

この時点で、同期の設定は基本的に完了です。通常は 5 分ごとに同期が実行されます。

同期コマンドを直接入力して、同期が可能かどうかを確認することもできます。コマンドの形式は次のとおりです。

rsyncコマンドの形式: rsync [オプション] ソースパス ターゲットパス

たとえば、サーバー A のバックアップ モジュールにバックアップするファイルをローカルの /home/test ディレクトリに同期します。

rsync -auv --password-file=/etc/rsyncd.pass
[email protected]::backup /home/test/ 

通常、同期が成功すると上記の情報が表示されます。

以下もご興味があるかもしれません:
  • winrar および ftp コマンドを使用して、ファイルを自動的にバックアップし、指定された ftp サーバーに自動的にアップロードします。
  • Windows で FTP 経由でデータを自動的にサーバーにバックアップし、指定した日数より古いバックアップを削除します。
  • Windows Server 自動バックアップタスク (バッチ処理)

<<:  Windows での MySQL の使用: 自動スケジュールバックアップの実装

>>:  js 正確な計算

推薦する

mysql5.7.22 ダウンロードプロセス図

1. 公式ウェブサイト www.mysql.com にアクセスし、ダウンロードを選択します。 2. ...

Oracle の開閉の 4 つのモード

>1 データベースを起動するcmd コマンド ウィンドウで、「sqlplus」を直接入力して ...

jQueryはシンプルなコメントエリアを実装します

この記事では、参考までに、簡単なコメントエリアを実装するためのjQueryの具体的なコードを紹介しま...

MySQL でグループ化した後、各グループの最大値を取得する詳細な例

MySQL でグループ化した後、各グループの最大値を取得する詳細な例1. テストデータベーステーブル...

知らないかもしれないmysqldumpパラメータ

前回の記事で、mysqldump バックアップ ファイルに記録されるタイムスタンプ データは UTC...

CSSは高さと幅を固定した要素の比例表示効果を実現します

padding-top パーセンテージを使用すると、固定幅と比例した高さの表示を実現できます。現在の...

MySQL でテーブル メタデータ ロックを待機する理由と方法

MySQL が alter table などの DDL 操作を実行すると、テーブル メタデータ ロッ...

MySQL の NULL 値に関する体験談と分析チュートリアルシリーズ

目次1. テストデータ2. ヌル値による不便3. スペース、空の値、null をどのように判断すれば...

Vueリスナーの使用例の詳細な説明

1つ目はjQueryのajaxを使用してリクエストを送信することです ユーザーが登録するときに、リス...

JavaScript配列の一般的なメソッドの詳細な説明

目次元の配列を変更しない方法1. 連結文法:パラメータ:戻り値: 2. 参加する文法:パラメータ:戻...

MySQLの7種類のログの概要

MySQL には次のログ ファイルがあります。 1: 再実行ログ2: ロールバックログ(元に戻すログ...

MySQL v5.7.18 解凍バージョンのインストール詳細チュートリアル

MySQLをダウンロード5.1.1.1 より前のバージョン私のコンピュータは64ビットなので、Win...

Linux Centos でスクリプトを使用して Docker をインストールする方法

Dockerの主な機能は何ですか?現在、Docker には少なくとも次のアプリケーション シナリオが...

Vue3におけるキーの役割と動作原理についての簡単な説明

このキー属性の機能は何ですか?まずは公式の説明を見てみましょう。 kekey 属性は主に、新しいノー...

入力ボックスの値を取得する方法のReactの例

入力ボックスの値を取得する複数の方法最初の方法は、制御されていないコンポーネントの取得です2番目の方...