4 votos

PAGE_FAULT_IN_NONPAGED_AREA al arrancar Windows 10 desde una unidad de red iSCSI

Estoy tratando de configurar Windows 10 para el arranque sin disco a través de iSCSI, como se describe, por ejemplo, aquí o aquí .

Puedo ejecutar el instalador de Windows 10 para instalar Windows en la unidad iSCSI de destino. Sin embargo, en el primer arranque desde la unidad, obtengo una pantalla azul de la muerte con el código de error PAGE_FAULT_IN_NONPAGED_AREA . Desafortunadamente, no se produce ningún volcado de datos (¿quizás porque el cargador de arranque nunca llegó al punto en que pudiera escribir en la unidad?)

¿Cómo puedo diagnosticar y solucionar esto?

7voto

Kenton Varda Puntos 111

Esto parece ocurrir cuando el archivo de página del sistema se encuentra en el dispositivo iSCSI. Mientras que la localización del archivo de página en iSCSI funcionaba bien en Windows 7, parece estar roto en Windows 10. Desafortunadamente, Windows establece por defecto un archivo de página en el disco primario, por lo que cuando el disco primario es iSCSI, se rompe fuera de la caja.

(Tenga en cuenta que el código de parada PAGE_FAULT_IN_NONPAGED_AREA no necesariamente se relacionan con el archivo de página del sistema en general, a pesar de contener la palabra "página". Este código de parada es más bien la versión del kernel de NT de "Segmentation Fault", un acceso a memoria no válido en general. Pero, en mi caso concreto, casualmente resultó estar relacionado con el archivo de página).

Pude resolver el problema desactivando por completo el archivo de la página. (También funciona localizar el archivo de página en un disco local, si existe uno, pero esto es más fácil de configurar después de conseguir que el SO funcione sin archivo de página).

Desactivación del archivo de páginas fuera de línea

Como tu máquina no es de arranque, no puedes desactivar el archivo de página a través de la UI. Por suerte, es fácil desactivar el archivo de página a través del registro. Para ello, localice la siguiente clave del registro y establezca su valor como vacío:

HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Memory Management\PagingFiles

Si su registro contiene ControlSet002 y/o CurrentControlSet además de ControlSet001 Asegúrate de hacer los mismos cambios en ellos.

Editar el registro fuera de línea

Pero, ¿cómo podemos editar el registro sin arrancar? Hay varios enfoques. Puedes montar temporalmente el volumen iSCSI desde una máquina Windows existente y en funcionamiento, o desde un entorno de preinstalación de Windows (WinPE) que hayas arrancado desde USB o incluso desde PXE. Existen muchas guías que describen estas opciones.

Para editar un registro fuera de línea (es decir, editar un registro distinto al del sistema que está ejecutando regedit):

  1. Ejecutar regedit ("Editor del Registro") normalmente.
  2. Haga clic en HKEY_LOCAL_MACHINE .
  3. Vaya a "Archivo > Cargar colmena...".
  4. Busque la instalación de Windows sin conexión, y elija el archivo Windows\System32\config\SYSTEM .
  5. Cuando se le pida, escriba cualquier nombre arbitrario, como "OFFLINE_SYSTEM".

El archivo de registro fuera de línea aparecerá en el árbol bajo HKEY_LOCAL_MACHINE con el nombre que hayas elegido. Las modificaciones que hagas en las claves dentro de él normalmente se guardarán automáticamente, aunque se aconseja que descargues explícitamente la colmena fuera de línea antes de cerrar regedit para estar seguro (ver el comentario de Harry Johnston más abajo). Esta es una interfaz de usuario muy extraña, pero aparentemente es así como se hace.

0 votos

Para asegurarse de que los cambios se guardan, tiene que descargar explícitamente la colmena cuando haya terminado. (A veces funciona sin hacer esto, pero no siempre).

0 votos

¡Gracias, @HarryJohnston! He actualizado mi respuesta.

0voto

jmg Puntos 4146

Cabe mencionar que el archivo de la página funciona sin problemas en Windows 10 hasta la compilación 1703. Sin embargo, la actualización a una versión más nueva o la instalación limpia de versiones más nuevas fallan por defecto, como se ha descrito anteriormente.

La sugerencia de @KentonVarda de desactivar el archivo de la página es válida, pero fui de otra manera que la edición del registro sin conexión.

He conseguido solucionar este problema instalando primero Windows en una unidad SSD local. Luego lo he arrancado, he desactivado la memoria virtual y he utilizado la herramienta de SysInternals llamada Disk2VHD (disponible en el sitio de Microsoft https://docs.microsoft.com/en-us/sysinternals/downloads/disk2vhd ) para crear un archivo VHDX del sistema en vivo mientras se trabaja en él. Luego usé el VHDX resultante en el objetivo iSCSI y voilá, arranca vía iSCSI sin problemas.

La única solución para tener un archivo de página que funcione en una máquina arrancada por iSCSI que conozco actualmente es tener un disco físico local para el único propósito del archivo de página.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: