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

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

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

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 正確な計算

推薦する

3Dカルーセル効果を実現するjs

この記事では、3Dカルーセル効果をjsで実装するための具体的なコードを参考までに共有します。具体的な...

MySQLインデックスの基本構文

インデックスはソートされたデータ構造です。 where 条件での検索や order by 条件での並...

完全なショッピングカートを実装するためのミニプログラム

ミニプログラムは、参考までに完全なショッピングカート[すべて選択/選択解除して金額を計算/加算と減算...

count(1)、count(*)、count(列名)の実行の違いの詳細な説明

実施効果: 1. count(1) と count(*)テーブル内のデータ量が多い場合、テーブルを分...

Vue の動的メニュー、動的ルートの読み込みと更新の落とし穴

目次必要:アイデア:レッスン:テキストを共有する:要約する必要:インターフェイスからサブメニュー デ...

vue3 コンポーネント通信方法の概要と例

vue3コンポーネントの通信モードは次のとおりです。小道具$放出$expose / 参照$属性vモデ...

MySQL 8.0.25 のインストールと設定方法のグラフィックチュートリアル

MySQL 8.0.25の最新のダウンロードとインストールのチュートリアルは参考になります。具体的な...

大規模な Vue.js プロジェクトの構築と維持のための 10 のベスト プラクティス

目次1. スロットを使用してコンポーネントを理解しやすくし、より強力にする2. Vuexストアを正し...

HTML に CSS を導入するいくつかの方法の紹介

目次1. HTMLタグ要素にCSSスタイルを直接埋め込む2. HTMLのheadセクションにおけるス...

base target="" はフレームを開くためのベースリンクのターゲットを指定します

<base target=_blank> は、基本リンクのターゲット フレームを新しいペ...

PostgreSQL正規表現の一般的な機能の概要

PostgreSQL正規表現の一般的な機能の概要正規表現は、複雑なデータ処理を必要とするプログラムに...

Docker Swarm サービス オーケストレーション コマンドの詳細な説明

1. はじめにDocker には、タスクを構成する複数の Docker コンテナをオーケストレーショ...

docker を使用して Spring Boot をデプロイし、Skywalking に接続する方法

目次1. 概要1. スカイウォーキング入門2. スカイウォーキング建築3. スカイウォーキングはどの...

MySQLオンラインログライブラリの移行例

最近の事例をお話ししましょう。オンライン Alibaba Cloud RDS 上のゲーム ログ ライ...