ビジネスIT機器紹介

Windows について

 

 

TPM 2.0 / CPUチェックを回避してWindows10からWindows11へとアップグレードする方法

 

Microsoftは、TPM 2.0やCPUといった要求スペックを満たしていなくてもWindows10からWindows11へとアップグレードさせる方法を公開しました。

 

通常、TPM 2.0に非対応だったり、サポートされていないCPUを使用したPC環境は、Windows10からWindows11へとアップグレードすることはできません。そういった環境でWindows11へとアップグレードしようとすると、TPM 2.0やCPUのチェックに引っかかって以下のような画面が表示されてインストールが中断します。

 

ただし、非対応環境にWindows11をインストールした場合、Micorosoftは「WindowsUpdateを提供しない」と述べています。

 

本記事の方法でTPM 2.0とCPUチェックは回避できますが、最低でもTPM 1.2以上が必要となります。TPM 1.2以上に対応していない場合、『PC は TPM 2.0 をサポートしている必要があります』と表示されてバイパスできません。

 

もし、TPM 1.2以上に対応していない場合は、クリーンインストールであれば完全にTPMをバイパスしてインストールができます。

 

1.Windows] + [R]キーを押して『regedit』と入力してエンターを押してください。

 

2.レジストリエディターが起動したら、『HKEY_LOCAL_MACHINE\SYSTEM\Setup』を開いて、画面右側を右クリックして、『新規』 → 『キー』を選択

 

3.左側にキーが作成されますので、『MoSetup』と入力してエンター。(すでに『MoSetup』がある場合はこの手順は不要です。新しく作成された『新しいキー #1』を削除してください)

 

4.作成されたキー『MoSetup』の右側で右クリックして、『新規』 → 『DWORD (32 ビット) 値』を選択。

 

5.『AllowUpgradesWithUnsupportedTPMOrCPU』と入力してエンター。

 

6.『AllowUpgradesWithUnsupportedTPMOrCPU』をダブルクリックして、『値のデータ』に『1』と入力して『OK』。

 

これでTPM 2.0とCPUチェックを回避するため手順は完了です。レジストリエディターを閉じてください。あとはISOや『メディア作成ツール』からWindows11のインストールを行えば、TPM 2.0とCPUチェックをバイパスしてWindows11がインストールできます

 

 

 

レジストリーエディターを使わず、システム要件チェックをバイパスするツールを使っても同様にインストールできます

 

下記URLを開きます
https://github.com/AveYo/MediaCreationTool.bat

 

こちらのページ上部の「Code」ボタンをクリックして、選択肢から「Download ZIP」をクリックしてダウンロードしてください。

 

ダウンロードしたファイルを解凍したフォルダの中に「MCT」というフォルダがあり、そのフォルダの中に「Skip_TPM_Check_on_Dynamic_Update_v2.cmd」があります。

 

1.Skip_TPM_Check_on_Dynamic_Update_v2.cmd を右クリックで、管理者実行します。
 WindowsによってPCが保護されましたと出るので、詳細で実行します。

 

2.Windows 11 ディスク イメージ (ISO) をダウンロードします。

 

3.ダウンロードしたISOファイルをダブルクリックし、setup.exeをクリックしてインストールします。
 途中、次の作業が必要ですという画面が出ますが、承諾して、インストールします。

 

 

 

 

非サポートPCにWindows11をクリーンインストールする方法

 

Windows11は要求スペックを満たしていないとインストールができません。しかし、要求スペックを満たしていなくてもちょっとした手順を踏めばインストールができます。
本記事では、CPUが非対応だったりTPM 2.0等のハードウェア要件を満たしていない非サポートPCにWindows11をクリーンインストールする方法をご紹介いたします。

 

まず最初に注意事項です。Microsoftは、非サポートPCにWindows11をインストールした場合、「WindowsUpdateを提供しない」と述べています。

 

なお、本記事の方法はクリーンインストールになります。

 

1.まずはWindows11のISOファイルをダウンロードして、USBメモリにインストールメディアを作成してください。作成したら、以下のテキストをメモ帳等にコピーして『bypass.reg』というファイル名でインストールメディアのルートフォルダに保存してください。

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\Setup\LabConfig]
"BypassTPMCheck"=dword:00000001
"BypassSecureBootCheck"=dword:00000001
"BypassRAMCheck"=dword:00000001
"BypassStorageCheck"=dword:00000001
"BypassCPUCheck"=dword:00000001

 

2.次にインストールメディアからブート(起動)してください。

 

3.最初のこの画面で[SHIFT] + [F10]キーを押してください

 

4.コマンドプロンプトが起動しますので、『regedit』と入力

 

5.レジストリエディターが起動しますので、『ファイル』 → 『インポート』を選択

 

6.インストールメディア(USBメモリ)を選択して『開く』

 

7.最初に作成した『bypass.reg』を選択して『開く』

 

8.「D:\bypass.reg に含まれるキーと値が、レジストリに正常に追加されました。」と表示されたら『OK』をクリック。

 

9.これで非サポートPCにもWindows11がインストールできるようになりました。ここまで完了したらレジストリエディターとコマンドプロンプトを閉じてください

 

10.最初の画面に戻ってきたら、『次へ』を選択して

 

『今すぐインストール』 → プロダクトキーがあれば入力して(Windows7以降のプロダクトキーがあればライセンス認証できます)、後から認証する場合は『プロダクト キーがありません』を選択すれば、インストールが進みます。
Windows11は、Windows10と同様にWindows7のプロダクトキーでもライセンスの認証ができます。

 

 

 

 

PCメーカー各社のWindows 11対応状況について紹介します

 

ASUS JAPAN
 ASUSJAPANは、特設サイトでWindows11対応予定製品を公開している他、「ZenBook」や「VivoBook」シリーズから、ゲーミングPCの「ROG」「TUFGaming」シリーズ、「ExpertBook」や「ExpertCenter」といったビジネス向けモデル、オールインワインデスクトップPCの「AiO」シリーズや小型の「MiniPC」、ワークステーションなど100点以上の製品をアップグレードできると発表している。

 

エムエスアイコンピュータージャパン(MSI)
 エムエスアイコンピュータージャパン(MSI)は、ゲーミングPCの「StealthGS」「Raider GE」「Leopard GP」「Pulse」「Leopard」「Katana/SwordGF」「Aegis」「Trident」「Infinite」シリーズ、クリエイター向けの「Creator」「Prestige」シリーズ、ビジネス&ライトクリエイター向けの「Summit」「Prestige」「Modern」シリーズなどで対応モデルを発表済みだ。

 

LGエレクトロニクス
 LGエレクトロニクスは、これまで発売された「LG gram」や「LGUltraPC」シリーズなどのアップグレード対象モデルを一覧で公開している。
 LGエレクトロニクスのWindows11対応ページ

 

日本HP
 日本HPは日本語の対応ページこそ公開中だが、対応モデルの詳細は英語版のプレスリリースで公開されている。その中には、「Spectre」「ENVY」「Pavilion」シリーズの他、「OMEN16」「VictusbyHP16」といったゲーミングPC、「DragonflyG2」を含む「Elite」「Pro」といったビジネス向けモデル、ワークステーションの「ZBookStudioG8」などが挙げられている。

 

デル・テクノロジーズ
 デル・テクノロジーズは、7月21日時点でワークステーション「Precision」シリーズやゲーミングPC「Alienware」「DellG」シリーズを始めとして、「Inspiron」「XPS」「Vostro」「Latitude」「OptiPlex」シリーズなどでアップグレードテストを行い、クリアした製品を掲載中だ。また、Windows11をプリインストールしたモデルの販売も予定している。

 

日本エイサー
 日本エイサーは、7月時点でノートPC「Swift」シリーズの他、デスクトップPC「AspireX」など現在販売しているモデルのWindows11対応状況を発表。販売が終了した製品も含めて数多くのモデルが要件を満たしている。さらに、法人向けモデルのページも公開中で、正式版のリリースまでに随時更新される予定だ。

 

日本マイクロソフト
 日本マイクロソフトの「Surface」シリーズについては公式発表こそないものの、米IDGが運営する「PCWorld」(6月25日掲載)によれば、2017年11月の「SurfaceBook2」(Core i5-7300Uを除く第8世代Intel CPU搭載モデル)の他、「SurfacePro6」など2018年10月以降に発売された製品が対象となっているという。

 

レノボ・ジャパン
 レノボ・ジャパンでは、特設サイトで対応製品を公開している。同社が実施する各種セールの対象製品もラインアップされており、商品ページに掲載されたクーポンコードを使用すると、割引き価格を適用できる。買い換えを考えている場合でも、タイミングによっては比較的安価に対応モデルを購入可能だ。

 

レノボがWindows11無償アップグレード対応の現行モデルを公開

 

 

 

Windowsの「robocopy」コマンドでフォルダをバックアップ/同期させる

 

Windowsでファイルをバックアップするには、2つのフォルダの内容を同期させるrobocopyコマンドが利用できる。
robocopyではフォルダの同期機能をはじめ、さまざまなオプションを指定してのコピーができる。
2つのフォルダの内容を完全に同期させるには/mirオプションを利用する。

 

robocopyコマンドとは
2つのフォルダの内容を同期させ、ファイルやフォルダの内容を同じ状態に保つ機能は、ファイルサーバのバックアップや個人的なデータのバックアップ、リモートオフィス同士でのデータの同期など、システム管理のさまざまな場面で利用される。

 

 このような用途に利用できるコマンドとして、copyやxcopyコマンドがある。

 

 フォルダの同期に利用できるツールとしては、この他にも「robocopy.exe」というコマンドラインツールがある。

 

 robocopyは、もともとはリモートのファイルサーバ同士でファイルやフォルダ、ユーザープロファイルデータなどを同期させるために作られたコマンドである。
 その名前は「RobustFileCopy」の略であり、堅固(robust)で確実なファイルコピーという意味を持つ。具体的な機能の例を以下に記す。

 

・エラー時の再試行回数の制限や待ち時間の指定
・ネットワーク切断時のコピーの中断と再開
・属性やセキュリティ設定のコピー
・ファイルサイズや変更時刻などを限定してのコピー
・コピー先にある余分なファイルの削除
・256文字を超える長いパス名の処理
・動作ログの記録
・作業内容やオプション設定などをジョブとして保存

 

 

 

例として、下記コマンドをメモ帳などに記載して拡張子batファイルとして保存し、起動すると実行できる。
この例は C:\Users\user\Documents フォルダの内容を d:\backup フォルダにミラーラングするものである。

 

ROBOCOPY "C:\Users\user\Documents" "d:\backup" /MIR/XO/XA:SH/NP/NDL  /R:0 /W:0 /FFT

 

オプションの意味
【/MIR】 ミラーリングコピーする (/Eと/PURGEを指定したのと同じになります)
【/XO】 改変がないファイルを除外します。
【/XA:属性】 属性の部分に除外したい属性のファイルを指定する。
(システムファイルなら【/XA:S】としますが、【/XA:SH】のように複数指定も可です)
【/NP】 進捗を表示しない。
【/NDL】 フォルダ名をログに出力しない。
【/R:n】 コピーに失敗したときにリトライする回数で、n の部分が任意の回数となります。
【/W:n】リトライの間の待ち時間(秒数)で、n の部分が任意の秒数となります。(デフォルトは30秒)
/FFT FAT ファイル時間 (2秒の粒度) を想定します。

 

robocopyのヘルプを参照するには

 

robocopyコマンドの使い方やオプションは、コマンドプロンプトで「robocopy /?」を実行すると表示される。

c:\>robocopy /?

 

-------------------------------------------------------------------------------
  ROBOCOPY    ::    Windows の堅牢性の高いファイル コピー
-------------------------------------------------------------------------------

 

 開始: 2020年8月1日 16:27:34
             使用法:: ROBOCOPY コピー元 コピー先 [ファイル [ファイル]...]
                      [オプション]

 

コピー元 :: コピー元ディレクトリ (ドライブ:\パスまたは \\サーバー\共有\パス)。
コピー先 :: コピー先ディレクトリ (ドライブ:\パスまたは \\サーバー\共有\パス)。
ファイル :: コピーするファイル (名前/ワイルドカード: 既定値は「*.*」です)
::
:: コピー オプション:
::
/S :: サブディレクトリをコピーしますが、空のディレクトリはコピーしません。
/E :: 空のディレクトリを含むサブディレクトリをコピーします。
/LEV:n :: コピー元ディレクトリ ツリーの上位 n レベルのみをコピーします。
/Z :: 再起動可能モードでファイルをコピーします。
/B :: バックアップ モードでファイルをコピーします。
/ZB :: 再起動可能モードを使用します。アクセスが拒否された場合、バックアップ モードを使用します。
/J :: バッファーなし I/O を使用してコピーします (大きなファイルで推奨)。
/EFSRAW :: 暗号化されたすべてのファイルを EFS RAW モードでコピーします。
/COPY:コピーフラグ :: ファイルにコピーする情報(既定値は/COPY:DAT)。
(copyflags : D=データ、A=属性、T=タイムスタンプ、X=代替データ ストリームをスキップ)。
(S= セキュリティ =NTFS ACL、O= 所有者情報、U= 監査情報)。
/SEC :: セキュリティと共にファイルをコピーします (/COPY:DATS と同等)。
/COPYALL :: ファイル情報をすべてコピーします (/COPY:DATSOU と同等)。
/NOCOPY :: ファイル情報をコピーしません (/PURGE と共に使用すると便利)。
/SECFIX :: スキップしたファイルも含むすべてのファイルのファイル セキュリティを修正します。
/TIMFIX :: スキップしたファイルも含むすべてのファイルのファイル時刻を修正します。
/PURGE :: 既にコピー元に存在しないコピー先のファイル/ディレクトリを削除します。
/MIR :: ディレクトリ ツリーをミラー化します(/Eおよび/PURGE と同等)。
/MOV :: ファイルを移動します (コピー後にコピー元から削除)。
/MOVE ::ファイルとディレクトリを移動します (コピー後にコピー元から削除)。
/A+:[RASHCNET] :: コピーされたファイルに指定の属性を追加します。
/A-:[RASHCNET] :: コピーされたファイルから指定の属性を削除します。
/CREATE :: ディレクトリ ツリーと長さ 0 のファイルのみを作成します。
/FAT :: 8.3 FAT ファイル名のみを使用してコピー先ファイルを作成します。
/256 :: 256 文字を超える非常に長いパスのサポートをオフにします。
/MON:n :: コピー元を監視し、n 回を超える変更があった場合に再度実行します。
/MOT:m :: コピー元を監視し、m 分後に変更があった場合に再度実行します。
/RH:hhmm-hhmm :: 実行時間 - 新しいコピーを開始できる時刻です。
/PF :: 実行時間をファイルごと (パスごとではない) に確認します。
/IPG:n :: 低速回線で帯域幅を解放するためのパケット間ギャップ(ミリ秒)。
/SJ :: 接合のターゲットとしてではなく接合として Junctions をコピーします。
/SL::リンクのターゲットとしてではなくリンクとしてシンボリック リンクをコピーします。
/MT[:n] :: n個のスレッドのマルチスレッド コピーを実行します (既定値 8)。
  n は 1 から 128 までの値である必要があります。
 このオプションは、/IPG および /EFSRAW オプションと互換性がありません。
  パフォーマンス向上のため、/LOG オプションを使用して出力をリダイレクトします。
/DCOPY:コピーフラグ :: ディレクトリにコピーする情報 (既定値は /DCOPY:DA)。
 (copyflags : D=データ、A=属性、T=タイムスタンプ、E=EA、X=代替データ ストリームをスキップ)。
/NODCOPY :: ディレクトリ情報をコピーしません (既定では /DCOPY:DA が実行されます)。
/NOOFFLOAD :: Windows のオフロードをコピーするメカニズムを使用せずに、ファイルをコピーします。
/COMPRESS :: ファイル転送中にネットワーク圧縮を要求します (適用可能な場合)。
::
:: ファイル選択オプション:
::
/A :: アーカイブ属性が設定されているファイルのみをコピーします。
/M :: アーカイブ属性のあるファイルのみをコピーし、リセットします。
/IA:[RASHCNETO] :: 指定されたいずれかの属性が設定されているファイルのみを含みます。
/XA:[RASHCNETO] :: 指定されたいずれかの属性が設定されているファイルを除外します。
/XF file [ファイル]... ::
  指定された名前/パス/ワイルドカードに一致するファイルを除外します。
/XD dir [ディレクトリ]... ::
指定された名前/パスに一致するディレクトリを除外します。
/XC :: 変更されたファイルを除外します。
/XN :: 新しいファイルを除外します。
/XO :: 古いファイルを除外します。
/XX :: コピー先にだけ存在するファイルとディレクトリを除外します。
/XL :: コピー元にだけ存在するファイルとディレクトリを除外します。
/IS :: 同一ファイルを含みます。
/IT :: 異常なファイルを含めます。
/MAX:n :: 最大ファイル サイズ - n バイトより大きいファイルを除外します。
/MIN:n :: 最小ファイル サイズ - n バイトより小さいファイルを除外します。
/MAXAGE:n :: 最長ファイル有効期間 - n 日より古いファイルを除外します。
/MINAGE:n :: 最短ファイル有効期間 - n 日より新しいファイルを除外します。
/MAXLAD:n :: 最大最終アクセス日 - n で指定する値以後に使用していないファイルを除外します。
/MINLAD:n :: 最小最終アクセス日 - n で指定する値以後に使用されたファイルを除外します。
 (n < 1900 の場合、n = n 日です。それ以外は、n = YYYYMMDDの日付です)。
/FFT :: FAT ファイル時間 (2 秒の粒度) を想定します。
/DST :: 1 時間の DST 時間差を補正します。
/XJ:: シンボリック リンク (ファイルとディレクトリの両方) と接合ポイントを除外します。
/XJD:: ディレクトリのシンボリック リンクと接合ポイントを除外します。
/XJF :: ファイルのシンボリック リンクを除外します。
/IM :: 変更されたファイルを含めます (変更日時が異なる)。
::
:: 再試行オプション:
::
/R:n :: 失敗したコピーに対する再試行数: 既定値は 1,000,000。
/W:n :: 再試行と再試行の間の待機時間: 既定値は、30 秒です。
/REG :: /既定の設定としてレジストリに R:n と /W:n を保存します。
/TBD :: 共有名が定義されるのを待ちます (再試行エラー 67)。
/LFSM :: 空き領域不足モードで動作し、コピーの一時停止と再開を有効にします (「注釈」を参照)。
/LFSM:n[KMG] :: 下限サイズを n [K:kilo,M:mega,G:giga] バイトで指定した /LFSM。
::
:: ログ オプション:
::
/L :: リストのみ - いずれのファイルにも、コピー、タイムスタンプの追加、または削除を実施しません。
/X :: 選択されたファイルのみではなく、余分なファイルをすべて報告します。
/V :: スキップされたファイルを示す詳細出力を作成します。
/TS :: 出力にコピー元ファイルのタイム スタンプを含めます。
/FP :: 出力にファイルの完全なパス名を含めます。
/BYTES :: サイズをバイトで出力します。
/NS :: サイズなし-ファイル サイズをログに記録しません。
/NC :: クラスなし - ファイル クラスをログに記録しません。
/NFL ::ファイル リストなし-ファイル名をログに記録しません。
/NDL :: ディレクトリなし-ディレクトリ名をログに記録しません。
/NP ::進行状況なし- コピーの完了率を表示しません。
/ETA ::コピーするファイルの推定完了時刻を表示します。
/LOG:ファイル:: ログ ファイルに状態を出力します(既存のログを上書きします)。
/LOG+:ファイル :: ログ ファイルに状態を出力します(既存のログ ファイルに追加します)。
/UNILOG:ファイル :: ログ ファイルに UNICODE で状態を出力します (既存のログを上書きします)。
/UNILOG+:ファイル :: ログ ファイルに UNICODE で状態を出力します (既存のログに追加します)。
/TEE :: コンソール ウィンドウとログ ファイルに出力します。
/NJH :: ジョブ ヘッダーがありません。
/NJS :: ジョブ要約がありません。
/UNICODE :: 状態を UNICODE で出力します。
::
:: ジョブ オプション:
::
/JOB:ジョブ名 :: 名前の付いたジョブ ファイルからパラメーターを取得します。
/SAVE:ジョブ名 :: 名前の付いたジョブ ファイルにパラメーターを保存します。
/QUIT :: コマンド ラインの処理後に終了します (パラメーターの表示のため)。
/NOSD :: コピー元ディレクトリを指定しません。
/NODD :: コピー先ディレクトリを指定しません。
/IF :: 後続のファイルを含みます。
::
:: 注釈 :
::
ボリュームのルート ディレクトリに対して /PURGE または /MIR を使用すると、これまでは、
robocopy は要求された操作をシステム ボリューム情報ディレクトリ内のファイル
にも適用していました。この動作は変更されました。
どちらかを指定すると、robocopy はその名前を持つファイルまたはディレクトリを
(コピー セッションの最上位レベルのソースと宛先ディレクトリで) スキップします。

 

変更されたファイルの分類は、コピー元とコピー先両方の
ファイル システムが変更タイムスタンプ(NTFSなど)をサポートしていて、
コピー元とコピー先のファイルの変更日時が異なり、しかし
それ以外は同じ場合に適用されます。これらのファイルは既定ではコピーされません。/IM を指定して、
それらを含めます。

 

/DCOPY:E フラグは、拡張属性コピーをディレクトリに対して試行することを要求します。現時点では robocopy が継続されます
   (ディレクトリの EA をコピーできなかった場合)。このフラグは/COPYALL 内。
/LFSM を使用することで、robocopy に '空き領域不足モード'での動作を要求します。
そのモードでは、次の場合にrobocopy が一時停止します。すなわち、ファイルのコピーによって
コピー先ボリュームの空き領域が '下限' 値を下回る場合です。この値は
フラグの LFSM:n[KMG] 形式によって明示的に指定できます。
/LFSM が明示的な下限値なしで指定されている場合、下限は
コピー先ボリュームのサイズの 10% に設定されます。
空き領域不足モードは、/MT、/EFSRAW、/B、および/ZB と互換性がありません。

 

robocopyの基本的な使い方
robocopyでは、copyやxcopyコマンドのように、引数としてコピー元とコピー先、オプションなどを指定する。

 

コピー元もコピー先もフォルダであり(ファイル名やワイルドカードは指定不可)、指定されたフォルダ間で、その中にあるファイルがコピーされる。コピー先として指定されているフォルダが存在しない場合は、フォルダが新規作成され、その中へコピーされる。

 

コピー元やコピー先には、ローカルのフォルダだけでなく(例:c:\srcfolder)、UNCによるリモートのサーバ上の共有フォルダも指定できる(例:\\server1\drivec\destfolder)。

 

 ただしデフォルトではサブフォルダはコピーされず、さらに次の種類のファイルだけが上書きでコピーされる。

 

コピー先に存在しないファイル
名前が同じでも、更新日付が異なるファイル(新しいファイルだけではなく、コピー元の方が古くてもコピー対象となる)
名前と日付が同じでも、サイズが異なるファイル

xcopyコマンドに/dオプションを付けると更新されたファイルだけをコピーするが(TIPS「xcopyでファイルをバックアップする」参照)、robocopyではコピー元の方が古くてもコピーされるなど、少し挙動が異なる。

 

 どのような種類のファイルをコピーするかは、ファイルの「クラス」に基づいて決まる。クラスとは例えば、日付が新しいか古いか、サイズが異なるか、属性が異なるか、などの状態のことを指す。どのクラスに該当するファイルをコピーするかはオプションで指定できる。

 

特定の拡張子やワイルドカード指定に一致するファイルのみをコピーする
robocopyをオプション指定なしで実行すると、デフォルトでは「*.*」、つまり全てのファイルがコピーの対象となる。
オプションとしてファイルのパターンを指定すると、そのパターンに合うファイルのみがコピーの対象となる。
例えばJPG/JPEG画像ファイルだけをコピーするには、次のようワイルドカード指定を追加する(パターンは複数指定可能)。

 

※2つのフォルダ間でJPG/JPEGファイルをコピーする例
robocopy c:\src d:\dest *.jpg *.jpeg

 

サブフォルダまで含めて再帰的にコピーする
 robocopyに何もオプションを付けないと、指定されたフォルダ中にあるファイルだけがコピーの対象となる。これをサブフォルダも含めて全部コピー(上書き更新)するには「/s」オプションを付ける。ただし/sだけでは、空のフォルダはコピーされない。空フォルダも含めてサブフォルダをコピーするには「/e」(/s/eでも同じ)を付けて実行する。これらのオプション名はxcopyコマンドと同じである。

 

2つのフォルダを完全に同期させて、ミラーコピーを作る
 /sオプションを使うと、コピー元のファイルやサブフォルダがコピー先へ上書き更新されるが、この場合、もしコピー先に余分なファイル(コピー元にはないファイル)があっても、そのファイルは何もされずに(削除されずに)、そのまま残ることになる。

 

 この挙動を変更して、2つのフォルダの内容をサブフォルダも含めて完全に同期させる(同じ状態にする)には、「/mir」(ミラー)オプションを指定する。

/mirオプションを付けると、コピー元フォルダと同じ状態になるように、コピー先フォルダへファイルがコピーされる。
コピー先に不足するものがあれば新規作成されるし、日付やサイズが相違するファイルがあれば上書き更新される。
さらに、コピー先に余分なファイルやフォルダがあれば、それらは削除される。サブフォルダの内容もコピーされる(/sや/eオプションは不要。実際には、サブフォルダをコピーする/sと、余分なファイルを削除する/purgeを組み合わせたものが/mirオプション)。

/sや/eだけでは、同じコピー先に対して何度もコピーすると、コピー先に不要なファイル(=コピー元にすでに存在しないファイル)がどんどん増えていく可能性がある。だが/mirオプションを付ければ、それを抑止できる。robocopyを単なるバックアップ用途で利用するなら、このオプションが便利だろう。

 

ドライブ間のミラーコピーに注意
/mirオプション(もしくは/purgeオプション)を使う場合、2つのドライブ全体をコピーさせるなら注意が必要である。
例えばG:の内容をすべてH:にコピーするなら、次のようなコマンドを実行するだろう(/zもしくは/zbオプションは、ユーザーのアクセス権がないファイルもバックアップするためのオプション)。

 

※問題のあるドライブ間コピーのコマンド
robocopy g:\ h:\ /mir /zb

 

これを実行すると、H:のルートにある「\SystemVolumeInformation」というフォルダの内容をいったん削除してG:\からコピーしてきたファイルで上書きしようとする。だがこのフォルダには、各ボリュームごとの重要なメタデータ(ボリュームシャドウコピーや復元、重複除去機能などのデータ)が保存されているので、これを削除・上書きすると、ファイルシステム上のデータが壊れるなどの障害が発生することがある。

 

 これを避けるには、ドライブのルートをミラーコピーする場合には、SystemVolumeInformationフォルダを除外するように/xdオプションも指定する。

 

※正しいドライブ間コピーのコマンド
robocopy g:\ h:\ /mir /zb /xd "System Volume Information"

 

ログの保存
 以上の例のように、robocopyを実行すると、デフォルトではコピーしているファイルの状況や転送量、何ファイルコピーしたかなど、詳細なコピーの状況が画面に表示される。「コピー済み」が実際にコピーした数、「Extras」は/mirや/purgeオプションによって削除された数である。

 

 このログはファイルなどに残すこともできるので、タスクスケジューラに登録して自動実行する場合でも、後で実行状況を確認でき、便利である。ログをファイルに残すには「/log」オプションを指定する。

 

robocopyのオプションをジョブとして登録・保存する
robocopyで何度も同じコピー作業を繰り返すつもりなら(バックアップタスクとして登録する場合など)、robocopyで行う作業を「ジョブ」として用意しておくとよいだろう。

 

 「/save」オプションを使うと、robocopy実行時に指定したフォルダやパターン指定、オプション設定などがジョブとして.RCJファイルに保存される。保存された.RCJファイルを「/job」オプションで呼び出すことにより、同じコマンドを再実行できる。

 

/saveオプションを付けると、その左側にあるすべてのパラメーターが指定した.RCJファイルに書き込まれる。.RCJファイルはテキストファイルなので、メモ帳などで開けば、オプション設定を変更できる。

 

 なお/saveオプションだけだと、/saveによる保存後に、指定したパラメーターでrobocopyが1回実行される(コピーが行われる)。コピーさせずに.RCJファイルの作成だけを行いたい場合は、最後に「/quit」オプションを付加すること。

 

※ジョブの定義例
robocopy c:\src d:\dest /mir /save:copyjob /quit

 

※ジョブの実行例
robocopy /job:copyjob