5年使用したLinkStation(Buffalo)で、ついにDiskエラーが出るようになりました。
しばらくすると、異常終了でバックアップも取得できない状況に・・
Disk交換かそっくり入替かの二択で迷いましたが、思い切って新型のLinkStationを購入しました。
いままでと同様、Linux搭載のモデル(RAID1)を購入、Windows搭載機と比べ価格がとても安いので助かります。
データの引越しはお馴染みのRobocopyで。
今回、Robocopyでの引越し元、引越し先がともにLinux搭載NAS同士ということもあり、初めてだったため、備忘録として手順を残したいと思います。
[quads id=1]
LinkStation上の共有フォルダをRobocopyで引越しする手順
Windowsのパソコン、もしくはサーバーからRobocopyコマンドを実行する必要があります。
1. コマンドプロンプトを起動
2. net useコマンドを使用してコピー元/コピー先両方のLinkstationにある共有フォルダにセッションを張ります。
(あらかじめ引越し先の共有フォルダが用意されている前提)
構文
使用例
使用例では、fileServer01のshareという共有フォルダに対してユーザー名「admin」、パスワード「01234」を使用してセッションを張っています。
3. robocopyを実行します。ただし一回目は必ず「L」オプション付きで
構文
使用例
/L
リスト出力のみで、コピーや削除は実際には行われません。
実際にコマンドを実行したら、どのような結果が得られるのかをシュミレーションするためのものです。
これ、非常に重要なので、初回は必ず/Lを入れることをお勧めします。
なぜなら、コピー元とコピー先を逆に指定してしまい、データが消えてしまうこともあるから。
/Mir
コピー先がコピー元と全く同一の状態になります。(同期)
コピー元がもし空っぽだったら、コピー先も空っぽになります。
(コピー先にそれまで置いてあったものは消えてなくなります・・・)
/FFT
FATの場合(Linux搭載型LinkStationが該当します)、ファイルの時刻が2秒の精度でしか記録できないため、2秒以内の誤差なら一致していることにします。
/XO
古いファイルはコピーしません。
コピー元のサイズが巨大な場合(500GBを超えるとか)、引越しを2回に分けて行うことが多いです。
1回目に全データをとりあえず移動しておき、切替直前に差分のみ引越しをします。
その場合にこのオプションを指定しておけば差分だけ取得するので短時間で終わることができます。
/XA:SH
指定された属性のファイルを除外します。
「S」はシステムファイル、「H」は隠しファイルを指します。
/XF
特定のファイルを除外
ワイルドカード(*)も指定可能。
/XD
特定のフォルダを除外
LinkStationには「ゴミ箱」機能があるため、
この機能を有効にしていた場合、削除したファイルやフォルダが"trashbox"に格納されます。
ごみ箱なので引越しの時は不要となりますので、/XD "trashbox"を指定します。
/COPY:DT
ファイルをコピーする際に一緒にコピーする情報を指定します。
「D」ファイルデータ
「T」タイムスタンプ
Linax搭載型のLinkStationの場合、「O」所有者情報、「S」セキュリティー情報、を指定するとエラーになることがあります。
/DCOPY:T
ディレクトリをコピーする際に一緒にコピーする情報を指定します。
「T」タイムスタンプ
/R:0
コピーに失敗した際に再試行を行う回数を指定します。
僕の場合はいつも「0」回を指定しています。
/LOG:
実行結果をログファイルに出力します。
既にファイルが存在していた場合、追記ではなく上書きされます。
上書きされたくない場合は、「/LOG+:」と指定してください。
最後に
Robocopyもバージョンによって使用できるオプションなどが異なるので注意が必要です。
僕が実行したバージョンはは5.1.10.1027。記事を書いている時点での最新版が10.0.1393.0のため、だいぶ古いバージョンということになりますね。
あと一つ注意点を上げると、データの引越しを行う上で気を付けることは、データの不整合が起きないようにすること。あらじめRobocopyを行う際にコピー元のフォルダを読取り専用にしておけば不整合が起きずに済みます。