適用先Windows 10

現象

Windows 10 にアップグレードまたは更新すると、エラー "システム予約パーティションを更新できませんでした"、エラー コード 0xc1900104、またはエラー コード 0x800f0922が発生する可能性があります。 

原因

システム予約パーティション (SRP) がいっぱいになる可能性があります。 システム予約パーティション (SRP) は、Windows のブート情報を格納するハード ドライブ上の小さなパーティションです。 一部のサード パーティのウイルス対策アプリとセキュリティ アプリは SRP に書き込み、それを埋めることができます。

解決方法

注意: これらの手順は複雑であり、いくつかのリスクを伴います。 これは、コマンド ラインを使用した経験を持つ上級ユーザーが行うのに最適です。 これらのコマンドを入力するときにエラーが発生した場合、デバイスが起動しない状態になり、デバイスに保存されているデータが失われる可能性があります。デバイスをアップグレードするには、以下の適切な方法を使用して SRP で 15 MB の領域を解放してから、もう一度アップグレードを試す必要があります。 Windows 10を更新する場合は、13 MB を解放する必要があります。まず、SRP が GPT パーティション スタイルか MBR パーティション スタイルかを判断します。

  1. Windows キーを押しながら R キーを押します。表示された [実行] ウィンドウで、「diskmgmt.msc」と入力し、Enter キーを押します。

  2. SRP を含むディスク (ディスク 0 など) を長押しまたは右クリックし、[プロパティ] を選択します。 プロパティ

  3. [ボリューム] タブを選択します。

  4. パーティション スタイル: 行には、GUID パーティション テーブル (GPT) またはマスター ブート レコード (MBR) が表示されます。

次に、必要な方法を選択します。

  1. cmd を検索します。 結果でコマンド プロンプトを長押しまたは右クリックし、[ 管理者として実行] を選択します。

  2. コマンド プロンプトで、「 mountvol y: /s 」と入力し、Enter キーを押します。 これにより、システム パーティションにアクセスするための Y: ドライブ文字が追加されます。

  3. 「Y: 」と入力して Y ドライブに切り替え、Enter キーを押します。 次に、「 cd EFI\Microsoft\Boot\Fonts」と入力して Fonts フォルダーに移動します。 その後、 del *.* と入力してフォント ファイルを削除します。 続行するかどうかを確認するメッセージが表示される場合があります。 Y キーを押してから Enter キーを押して続行します。

  1. Windows キーを押しながら R キーを押します。表示された [ 実行 ] ウィンドウで、「 diskmgmt.msc 」と入力し、Enter キーを押します。

  2. [システム予約] とマークされたパーティションを選択します。 長押しするか、右クリックします。

  3. [ ドライブ文字とパスの変更] を選択します

  4. [ 追加] を選択します

  5. ドライブ文字に 「Y 」と入力します。

  6. [OK] をタップまたはクリックします。

  7. [スタート] メニューから cmd を検索 します。 検索結果から [コマンド プロンプト] を右クリックし、[ 管理者として実行] を選択します。

  8. コマンド プロンプトで「 Y: 」と入力し、Enter キーを押してそのドライブに切り替えます。 次に、「 cd Boot\Fonts」と入力して Fonts フォルダーに移動します。

  9. 次のように入力し、Enter:takeown /d y /r /f キーを押します。

    注: スペースと "f" の後の期間を含める必要があります。または、コマンドが正しく機能しません。

  10. 次のように入力してドライブにアクセス許可をバックアップし、Enter キーを押します。

    icacls Y:\* /save %systemdrive%\NTFSp.txt /c /t

    注: すべてのファイルが成功として表示され、失敗として表示されていないことを確認します。

  11. whoami と入力して Enter キーを押し、ユーザー名を記録します。 次のコマンドを入力し、Enter:icacls . /grant キーを押します。 whoami>から取得したユーザー名を <する :F /t

    注: ユーザー名と ":F" の間にスペースを入れないか、コマンドが機能しません。

  12. 手順 8 で説明されているように、フォントの場所 (Y:\Boot\Fonts) にまだ配置されていることを確認します。 次に、「 del *.*」と 入力してフォント ファイルを削除します。 続行するかどうかを確認するメッセージが表示される場合があります。 Y キーを押してから、Enter キーを押して続行します。

アクセス許可の復元

  1. 次のコマンドを入力し、Enter キーを押します。

    icacls Y:\ /restore %systemdrive%\NTFSp.txt /c /t

  2. 処理中に一部のファイルが失敗したことを示すメッセージが表示される場合があります。これは、バックアップ後にこれらのファイルが削除されるため、正常です。

  3. 成功したファイルの量が none の場合、コマンドが正しく実行されませんでした。続行する前に、いくつかのファイルが正常に処理されている必要があります。

  4. 次のように入力して ACL をシステムに戻し、Enter キーを押します。

  5. icacls . /grant system:f /t

  6. 次のコマンドを入力して Enter キーを押して、ドライブの所有者を System に戻します。

    icacls Y: /setowner "SYSTEM" /t /c

  7. [ディスクの管理] と [データの更新] に戻るして、SRP の空き領域の割合が高いかどうかを確認します。 その場合は、この時点でドライブ文字を削除できます。

  8. システム予約パーティションを右クリックします。

  9. [ ドライブ文字とパスの変更] を選択します

  10. [Y: ドライブ] を選択します。

  11. [ 削除] を選択します

  12. [OK] をクリックします。

  1. cmd を検索 します。 結果で コマンド プロンプト を長押しまたは右クリックし、[ Administrato r として実行] を選択します。

  2. コマンド プロンプトで、「 mountvol y: /s 」と入力し、Enter キーを押します。 これにより、システム パーティションにアクセスするために Y: ドライブ文字が追加されます。

  3. 「taskkill /im explorer.exe /f」と入力し、Enter キーを押します。 次に、「explorer.exe」と入力し、Enter キーを押して、管理 モードでエクスプローラーを再起動します。手記: このモードでは、一部のアプリ (OneNote など) は実行されません。

  4. エクスプローラーを開き、アドレス バーに Y:\EFI\Microsoft\Boot\ を配置し、Enter キーを押します。

  5. 削除する言語フォルダーを選択し、完全に削除します。 これらは、ハイフンで分割された 4 文字のセットで示されます。 たとえば、en-US は米国英語を意味します。de-DE はドイツ語を意味します。

  6. 省略可能: Y:\EFI\Microsoft\Boot\Fonts で未使用のフォント ファイルを削除します。

  7. ファイルを削除した後、デバイスを再起動します。 これにより、ドライブ文字が削除され、explorer.exe 通常モードに戻ります。

これにより、SRP の使用可能な領域が永続的に増加しますが、小さくなります。  

  1. 言語フォルダーを削除する

    1. Windows キーを押しながら R キーを押します。 表示された [ 実行 ] ウィンドウで、「 diskmgmt.msc 」と入力し、Enter キーを押します。

    2. [システム予約] とマークされたパーティションを選択します。 長押しするか、右クリックします。

    3. [ ドライブ文字とパスの変更] を選択します

    4. [ 追加] を選択します

    5. ドライブ文字に 「Y 」と入力します。

    6. [OK] をタップまたはクリックします。

    7. [スタート] メニューから cmd を検索します。 検索結果から [コマンド プロンプト ] を右クリックし、[ 管理者として実行] を選択します。

    8. コマンド プロンプトで「 Y: 」と入力し、Enter キーを押してそのドライブに切り替えます。

    9. 次のように入力し、Enter キーを押します。

      takeown /d y /r /f .

      手記: スペースと "f" の後の期間を含める必要があります。または、コマンドが正しく機能しません。

    10. 次のように入力してドライブにアクセス許可をバックアップし、Enter キーを押します。

      icacls Y:\* /save %systemdrive%\NTFSp.txt /c /t

      手記: すべてのファイルが成功として表示され、失敗として表示されていないことを確認します。

    11. whoami と入力して Enter キーを押し、ユーザー名を記録します。 次のコマンドを入力し、Enter:icacls . /grant キーを押します。whoami>:F /tNote から取得したユーザー名 <: ユーザー名と ":F" の間にスペースを入れないか、コマンドが機能しません。

    12. エクスプローラーで SRP ドライブを開き、Boot フォルダーにアクセスし、削除する言語フォルダーを選択し、完全に削除します。 これらは、ハイフンで分割された 4 文字のセットで示されます。 たとえば、en-US は米国英語を意味します。de-DE はドイツ語を意味します。

  2. NTFS ログを切り捨てる

    1. 最初に NTFS ログのサイズを確認します。 コマンド プロンプトで次のように入力し、Enter:chkdsk /L Y キーを押します。

      • サイズが 5000 KB 未満の場合は、ファイルを切り捨てる必要はありません。

    2. ファイルを切り捨てるには、次のように入力し、Enter:chkdsk /L:5000 /X /F キーを押します。

    3. [ディスクの管理] ウィンドウに戻るします。 [アクション] メニューをタップまたはクリックし、[最新の情報に更新] を選択します。 SRP の空き領域の割合が高いかどうかを確認します。 その場合は、 システム予約パーティション を長押しするか右クリックし、[ ドライブ文字とパスの変更] を選択します。 [Y: ] を選択し、[削除] を選択します

  3. NTFS ログを切り捨てても SRP の空き領域が増えない場合は、USN ジャーナルのサイズを変更します。

    1. コマンド プロンプトで次のように入力し、Enter:fsutil usn queryjournal Y キーを押します。

      • これにより、サイズが 16 進値で表示されます。 値を 10 進数に変換し、1048576で除算すると、結果は MB 単位になります。 (16 進数から 10 進数に変換するには:Windows で電卓を開き、[表示] メニューを選択し、[プログラマ] を選択します。 [16 進] を選択し、[16 進] の値を入力して、[12 月] を選択します)

      • ジャーナルが 30 MB 以上の場合は、引き続き切り捨てます。

    2. 次のコマンドを入力し、Enter:fsutil usn deletejournal /D /N Y キーを押して、ジャーナルを削除します。

    3. 新しいログ サイズ値:fsutil usn createjournal m=1500 a=1 Y でジャーナルを再作成します

  4. アクセス許可の復元

    1. 次のコマンドを入力し、Enter キーを押します。

      icacls Y:\ /restore %systemdrive%\NTFSp.txt /c /t

      • 処理中に一部のファイルが失敗したことを示すメッセージが表示される場合があります。これは、バックアップ後にこれらのファイルが削除されるため、正常です。

      • 成功したファイルの量が none の場合、コマンドが正しく実行されませんでした。続行する前に、いくつかのファイルが正常に処理されている必要があります。

    2. 次のように入力して ACL をシステムに戻し、Enter キーを押します。

      icacls . /grant system:f /t

    3. 次のコマンドを入力して Enter キーを押して、ドライブの所有者を System に戻します。

      icacls Y: /setowner "SYSTEM" /t /c

    4. [ディスクの管理] と [データの更新] に戻るして、SRP の空き領域の割合が高いかどうかを確認します。 その場合は、この時点でドライブ文字を削除できます。

    5. システム予約パーティションを右クリックします。

    6. [ ドライブ文字とパスの変更] を選択します

    7. [Y: ドライブ] を選択します。

    8. [ 削除] を選択します

    9. [OK] をクリックします。

これにより、SRP の使用可能な領域が大きくなりますが、一時的に増加します。

  1. NTFS 形式の外部ドライブがあり、少なくとも 250 MB の空き領域があることを確認します。

  2. Windows キーを押しながら R キーを押します。表示された [実行] ウィンドウで、「diskmgmt.msc」と入力し、Enter キーを押します。

  3. [回復パーティション] を選択します。 長押しするか、右クリックします。

  4. [ドライブ文字とパスの変更] を選択します。

  5. [追加] を選択します。

  6. ドライブ文字に「Y」と入力します。

  7. [OK] をタップまたはクリックします。

  8. スタート画面から右からスワイプし、[検索] チャームを選択するか、入力を開始して cmd を検索します。 検索結果からコマンド プロンプトを長押しまたは右クリックし、[管理者として実行] を選択します。

  9. コマンド プロンプトで「Y: 」と入力し、Enter キーを押してそのドライブに切り替えます。

  10. 次のように入力し、Enter キーを押します: takeown /d y /r /f .メモ スペースと "f" の後の期間を含める必要があります。または、コマンドが正しく機能しません。

  11. whoami と入力して Enter キーを押し、ユーザー名を記録します。 次のコマンドを入力し、Enter: キーを押します icacls . /grant <username from whoami>:F /t 注: ユーザー名と ":F" の間にスペースを入れないか、コマンドが機能しません。

  12. そのコマンドが完了したら、次のように入力するか貼り付けて、Enter キーを押します。

    attrib -s -r -h Y:\Recovery\WindowsRE\winre.wim

  13. エクスプローラーを開き、使用している外付けドライブのドライブ文字を書き留めます (残りの手順では、F: の例を使用します。これらの手順で F: が表示されている場合は、外部ドライブのドライブ文字を意味します)。

  14. コマンド プロンプトで、次のように入力し、Enter キーを押します。

    mkdir F:\Recovery\WindowsRE

  15. 次に、次のように入力し、Enter キーを押します。

    xcopy Y:\Recovery\WindowsRE\winre.wim F:\Recovery\WindowsRE\winre.wim /h

  16. 次のコマンドを入力し、Enter キーを押して、新しいパスをマップします。

    C:\Windows\System32\Reagentc /SetREImage /Path F:\Recovery\WindowsRE /Target C:\Windows

  17. コピーが正常に行われたのを確認したら、次のように入力して Enter キーを押します。

    del Y:\Recovery\WindowsRE\winre.wim /F

  18. [ディスクの管理] ウィンドウに戻るします。 [アクション] メニューをタップまたはクリックし、[最新の情報に更新] を選択します。 SRP の空き領域の割合が高いかどうかを確認します。 その場合は、アップグレードを続行します。

  19. アップグレードが完了したら、wim ファイルを回復パーティションに戻し、場所を再マップします。

    1. コマンド プロンプトで、次のように入力し、Enter キーを押します。

      xcopy F:\Recovery\WindowsRE\winre.wim Y:\Recovery\WindowsRE\winre.wim /h

    2. 元のパスに再マップします。 次のように入力し、Enter キーを押します。

      C:\Windows\System32\Reagentc /SetREImage /Path Y:\Recovery\WindowsRE /Target C:\Windows

  20. [ディスクの管理] ウィンドウに戻るします。 回復パーティションを長押しまたは右クリックし、[ドライブ文字とパスの変更] を選択します。 [Y: ] を選択し、[削除] を選択します。

ヘルプを表示

その他のオプションが必要ですか?

サブスクリプションの特典の参照、トレーニング コースの閲覧、デバイスのセキュリティ保護方法などについて説明します。