¿Cómo reparar el error 'Ejecutar scripts está deshabilitado en este sistema' en Powershell?

Powershell es un marco de automatización y gestión de tareas que ha sido desarrollado y publicado por Microsoft. Consiste en un shell de línea de comandos y un lenguaje asociado. Los usuarios pueden ejecutar numerosos cmdlets en el programa. Sin embargo, recientemente, se han recibido muchos informes en los que los usuarios no pueden ejecutar un script y el error " Ejecutar script está deshabilitado en este sistema " o el error "la ejecución de scripts está deshabilitado en este sistema " aparece en el Powershell .

El error "Ejecutar scripts está deshabilitado en esta computadora"

En este artículo, discutiremos la razón por la cual este error podría activarse y algunas soluciones viables para solucionarlo permanentemente. Asegúrese de seguir los pasos con cuidado y precisión para evitar conflictos.

¿Qué causa el error "La ejecución de scripts está deshabilitada en este sistema"?

Después de recibir numerosos informes de múltiples usuarios, decidimos investigar el asunto y nuestra investigación sugiere que el error se debe al siguiente problema.

  • Scripts deshabilitados: cada script que ejecute en Powershell debe tener cierto nivel de verificación de fuentes confiables para que funcione. Sin embargo, en algunos casos, incluso si el script tiene verificación, aún se detiene su ejecución debido a un acceso restringido. La cuestión es que Windows tiene una "Política de ejecución" que el script debe omitir para que se ejecute. Si la Política de ejecución está configurada como "Restringida", no se puede ejecutar ningún script en la computadora.

Ahora que tiene una comprensión básica de la naturaleza del problema, avanzaremos hacia las soluciones.

Solución 1: agregar código

Si desea ejecutar un script en particular en su computadora sin pasar por la molestia de cambiar la política de ejecución, siempre puede agregar un código al comando que otorgará acceso al script a través de la política. Para eso:

  1. Presione " Windows " + " R " para abrir la solicitud de ejecución.
  2. Escriba " Powershell " y presione " Shift " + " Ctrl " + " Enter " simultáneamente para otorgar acceso administrativo.

    Escribiendo "Powershell" y presionando "Shift" + "Alt" + "Enter"
  3. Escriba el comando para ejecutar un script en particular como el siguiente comando.
     c: \> powershell -ExecutionPolicy ByPass -File script.ps1 
  4. Presione " Enter " y verifique si el problema persiste.

Solución 2: cambiar la política de ejecución

Dado que la política de ejecución proporciona acceso a Powershell para ejecutar un script en particular, si está configurado como restringido, bloqueará la ejecución de todos los scripts. Existen diferentes modos en los que puede establecer la política según su situación. Esos modos son:

  • Restringido: este modo no permite ejecutar ningún script en la computadora.
  • AllSigned: al elegir este modo, solo las políticas firmadas por un editor de confianza se pueden ejecutar en la computadora.
  • RemoteSigned: todos los scripts descargados deben estar firmados por un editor de confianza.
  • Sin restricciones: no hay ninguna restricción en ningún script.

Ahora que conoce los niveles a los que se puede establecer la política de ejecución, puede elegir fácilmente el mejor para usted según sus requisitos. Para cambiar la política de ejecución:

  1. Presione " Windows " + " R " para abrir la solicitud de ejecución.
  2. Escriba "Powershell" y presione " Shift " + " Ctrl " + " Enter " simultáneamente para otorgar acceso administrativo.

    Escribiendo "Powershell" y presionando "Shift" + "Alt" + "Enter"
  3. Escriba el siguiente comando y presione "Enter" para ejecutarlo.
     Set-ExecutionPolicy Remotesigned 

    Nota: La palabra " RemoteSigned " se reemplazará con el nivel de seguridad que desee, como se indicó anteriormente.

  4. Presione " Y " para indicar Sí y esto cambiará la Política de grupo al Nivel deseado.

    Cambiar la política de grupo
  5. Verifique si el problema persiste.

Artículos De Interés