バックアップ、フルバックアップ

xcopyコマンドによるバックアップ


time /t
FOR /F "tokens=1-3 delims=/ " %%a in ('date /t') do SET DT=%%a%%b%%c
MD F:\BAK\%DT%
XCOPY "C:\Documents and Settings\sinta" F:\BAK\%DT% /E /C /Q /H /Y /I
time /t
pause

---説明---
各ユーザのデスクトップのデータ、メール、マイドキュメントは通常、 C:\Documents and Settingsフォルダにあるユーザフォルダに格納されている。(XP,2000の場合)
つまりこのフォルダ配下をコピーする事によりバックアップとなる。

1行目は消しても良い。
2行目は日付を文字列にして変数へ格納。
3行目はFドライブに日付でディレクトリ作成。
4行目でそのディレクトリに全てコピー。
5行目は消しても良い。
6行目は確認用。消しても良い。

  • メモ帳などで作製し拡張子をbatに変更。(ex bakup.bat)
  • 3、4行目の F: はバックアップ先のドライブ指定。各自変更。可能な限り別の物理ドライブを指定する。
  • 共有違反でコピーされてないファイルが出てくる為バックアップ中は基本的に該当ユーザでのLOGINは不可。
  • 実行はOS起動後、別のユーザでLOGINして先のBATファイルを実行するかタスク等で実行。
  • VISTAの場合は Documents And Settings フォルダが違うので変更。
  • [マイドキュメント]のみ対象にしたい時は4行目を C:\Documents and Settings\sinta\My Documents の様ににする。(2K,XPの場合)

  • http://homepage1.nifty.com/jak/batch/time.html このサイトを参考にすれば指定した時間帯のみ実行できるように改造出来る。
     自分は20:00-00:00の間に電源を落としたときだけ起動するようにしている。
     昼間に再起動した時などバッチファイルを起動させない為。
  • シャットダウン時に自動実行する方法はココ (ファイル名を指定して実行で gpedit.mscで起動。スクリプト名にバッチファイルを指定する)
     ただし、NTUSER.DATは一度でもログインするとOSの管理下に入っているようでコピーできないが特に問題はない。

    戻る