改めて、コマンドプロンプトのrobocopyコマンドでバックアップを行う。

投稿日:

以前、会社では、バックアップ用のソフトを使っていたことがあります。
それも、社内ではなく、お客様用にw

まぁ、それ自体は良いんですが、割とケチ?な会社だったので、使っているのはフリーソフト
確か、商用利用もOKだったはずなので、そういう意味では問題なかったと思うんです。
が、重要なはずのバックアップをフリーソフトに委ねるってのも怖い話なんですよねー。
大体、責任は負いませんよ?って利用許諾とかにかいてあります。

フリーソフトを使って、バックアップに問題があった時に、誰が責任を取るんでしょうね?
だって、フリーソフトの作者に、会社の損害(あったとして)の責任を追及するとか無理な話ですよ。
そういう時のために、お金を払うサポートがあるんだしね。

ということで、フリーソフトだと、開発終了したり、最新OSへの対応がされなかったりすることがあります。
なるべくお金はかけたくない、けど、何かあった時にお客さんに説明できる内容と、責任の所在を会社にしたくないっていう時は多々あると思います。

そんな時のコマンドプロンプト

robocopyというコマンドでバックアップもお手軽に。
Windows7以降なら普通に使えるし、しかも、お客さんへの説明も「OS機能のバグですね・・・」とか言っておけば角が立たないっていうオマケつき。

robocopyって何?

コマンド 内容
C:\A コピー元 Aフォルダの内容をコピーします
D:\B コピー先 Bフォルダにコピー元の内容をコピーします
/R:5 オプション 失敗した時の繰り返し回数(規定は1,000,000)
/W:5 オプション 再試行までの待機時間(規定は30秒)
/MIR オプション ディレクトリのミラー化

こんな感じです。
コピー元コピー先は間違えると、大変なことになるので、テスト用のフォルダを作るなどして、必ず実行前にテストは行ってください
極端な例ですが、コピー先とコピー元を間違えて、コピー元が空フォルダだった場合、本来コピーしたいフォルダの中身が空になります。

次に繰り返し回数の「/R」

これは設定必須です。
エクスプローラ上でコピーとかする時にあるんですが、ファイルが壊れていたりして途中で終了
してしまうことありませんか?
そういった場合や、ファイルが使用中でコピーできない時とかに繰り返しコピーを行う回数です。
規定回数が1,000,000回なので、次に記載する「/W」オプションの規定値30秒と組み合わせると、1個コピーできないファイルがあるだけで、夜のうちにコピーが終わらなくなりますw
5回も試行すれば十分です。

それ以上やっても、駄目なファイルは駄目なので。

待機時間の「/W」

先に書いた「/R」オプションの次の試行までの待機時間です。
好みの問題ですが、5秒程度で問題ないです。

試行回数と合せて、10秒以上コピーできないようなファイルは、コピーできない可能性が高いので。

ミラーリングの「/MIR」

バックアップとしてなら、このオプションでOKです。
同じファイルは上書きしないので、差分バックアップとして使えます。
コピー元で削除したものは、コピー先からも削除されるので、トラブル時のバックアップの戻しとしては有効です。

他にも、ファイルの移動にしたいなら「/MOV」、フォルダごと移動するなら「/MOVE」。
ファイルを消さずにコピーだけしたいなら、「/S /E」。

他にもオプションで細かく設定出来ますが、オプションとしてはこれくらいが使えれば、個人のバックアップとか部署レベルのバックアップなら困らないです。

タスクに登録して自動化

出来上がったコマンドは、「backup.bat」などとして保存。
ショートカットをデスクトップに保存するなり、スタートアップに登録するなり。
タスクに登録すれば、定期的に実行できます。

これ以上の機能が必要なら、システム管理者とかにお願いしましょう。

 







-開発メモ

関連記事

[VB.net]TextBoxで、マウスクリック(1回目)だけ、内容を全選択させる

結構前に書いた記事 日本の中心付近で仕様変更と闘うSE日記[C#]TextBoxで、マウスクリック(1回目)だけ、内容を全選択させるhttp://ht-jp.net/blog/pc/c/c-textb …

[C#]systemcolorを使う

ボタンとかを作成した時に、BackColorとかにデフォルトで設定される色を変更したいけど、何かのアクション以外は、デフォルト職を使いたい。 って時に多分使える。 SystemColorsクラス(Mi …

[ORACLE]oracleのログの場所(リスナーログ、アラートログ)

ぶっちゃけ、ログの場所なんて普段意識してないわwww 存在は知ってるものの、ぶっちゃけ、普段からそんな場所など意識していたことがない。 もちろん、何かあったときは、ファイル検索で見つけりゃいいや~と思 …

[Xcode]Assets.xcassetsへ登録した画像が、MediaLibraryに表示されない問題の解決方法。

再起動。 以上。   Xcodeを触り始めて、3日目。 この部分よなぁ・・・ AutoLayout機能でこの中に自動で収まるとはいえ、すべてのオブジェクトがAutoLayoutの対象ではない …

[C#]リストをカンマ区切りの文字列で出力する

リストの項目をカンマ区切りで出力したい 卵が先か鶏が先か~って話じゃないんですが、リストで出力した内容をカンマ区切りのデータにする必要が出てきたので、調べました。 List<string> …


カテゴリー