Símbolo del sistema como usuario del SISTEMA (Windows 7)


10

¿Cómo puedo obtener un símbolo del sistema como usuario de SYSTEM en Windows 7?

Contexto: estoy probando un script de inicio de computadora, y necesito averiguar el comportamiento de un comando cuando se ejecuta como SYSTEM en lugar de mi cuenta de usuario.

He visto formas de hacer esto con aty psexec, pero esos métodos solo parecen funcionar en Windows XP o Windows Vista.

Estoy usando Windows 7 Pro SP1.


1
SYSTEM es generalmente los servicios de usuario que se ejecutan, no una cuenta interactiva ...
Austin T Francés

1
Tal vez estoy malinterpretando algo. Este es el objetivo: tengo un script que planeo implementar en nuestra organización a través de la Política de grupo. Aunque el script debería estar funcionando, no lo está.
stephenwade 01 de

1
El script se ejecutará como un script de inicio de computadora, que creo que se ejecuta como SYSTEM; por lo tanto, quiero un símbolo del sistema como SYSTEM para probar mi script. ¿Estoy correcto de que los scripts de inicio se ejecuten como SYSTEM? Si es así, ¿cuál es la mejor manera de probar mi script?
stephenwade 01 de

1
Un script de inicio de computadora en la Política de grupo.
stephenwade 01 de

1
I've seen ways to do this with at and psexec, but those methods only appear to work on Windows XP or Windows 7. I'm using Windows 7 Pro SP1. Um ... ఠ_ ಠ
Synetech 01 de

Respuestas:


3

Esto se preguntó en Stack Overflow . La respuesta aceptada usa PsExec (de la suite Systinternals ) como sugirió Scott.

Otra solución consiste en crear un servicio que se ejecute en la cuenta del sistema para ejecutar el intérprete de comandos. Puede hacerlo manualmente o usar un programa que cree los servicios, ejecute la solicitud y luego elimine el servicio automáticamente. Acabo de probarlo y funcionó de maravilla:

Captura de pantalla del Administrador de tareas con CMD ejecutándose como sistema


9

Utilice PsExec de la suite Systinternals de Microsoft . PsExec debe ejecutarse desde un símbolo del sistema administrativo. Use los -i -sinterruptores para iniciar su script / símbolo del sistema.

Ingrese la descripción de la imagen aquí


1
Incluso en un símbolo del sistema del Administrador, recibo el mensaje " Access is denied."
stephenwade

@stephenwade ¿Cómo obtiene el símbolo del sistema del administrador? ¿Hace clic derecho y ejecuta "Ejecutar como administrador"? ¿Dice "Administrador: Símbolo del sistema" en el mosaico cuando tiene la ventana abierta antes de iniciar PsExec? Además, si intenta apuntarlo a un archivo de red para que se ejecute, el token para conectarse al recurso compartido remoto se pierde durante el proceso de elevación.
Scott Chamberlain

Sí, hice clic derecho en Símbolo del sistema en el menú Inicio e hice clic en "Ejecutar como administrador".
stephenwade 01 de

1
Estoy ejecutando psexec desde una carpeta de red vinculada a la unidad H:. ¿Podría ser ese el problema?
stephenwade 01 de

1
@stephenwade sí, cuando eleva, pierde sus unidades de red (porque están vinculadas a la cuenta de usuario y está cambiando las cuentas de usuario), copie localmente y funcionará.
Scott Chamberlain

1

Tendría mucho cuidado al hacer esto. SYSTEM es la cuenta de administrador pero mucho, mucho más peligrosa ya que tiene un mayor nivel de acceso.

En general, su SISTEMA es el servicio de cuenta con el que se ejecuta, no un perfil interactivo. Sin embargo, hay formas de hacer esto.

Al leer esto , creo que tenemos un buen enfoque:

  1. Verifique el nombre de la cuenta en la que ha iniciado sesión (haga clic en Inicio.
    Verá el nombre de la cuenta en la que ha iniciado sesión).
  2. Inicie el símbolo del sistema. (Inicio | Ejecutar | cmd | [Entrar])
    en el símbolo del sistema, cree una programación para ejecutar cmd.exe.
    Para crear un horario, escriba la siguiente línea y presione enter.
    a las 10:41 / interactivo "cmd.exe"
    esto creará una programación para ejecutar cmd.exe a las 10:41.
    (Como está probando, verifique la hora en su sistema, intente y agregue dos o tres minutos). Cambie esta hora de acuerdo con su hora local
    Sugerencia: puede verificar si el horario se coloca escribiendo " at "
    y presionando enter después de lo anterior paso.
  3. Espere a la hora establecida para el horario.
    cmd.exe se iniciará a la hora especificada.
  4. Después de que cmd.exe se inicie a la hora programada, presione [CTRL] + [ALT] + [SUPR] e inicie el administrador de tareas.
    Seleccione la pestaña "Proceso", seleccione explorer.exe en la lista de procesos y haga clic en el botón " Finalizar proceso ".
    Recibirá un diálogo de confirmación. Haga clic en "Sí" para finalizar el proceso.
  5. Cierre el administrador de tareas haciendo clic en el botón cerrar (X).
    Cierre la primera ventana de cmd (tenga cuidado de cerrar la primera, no la segunda).
  6. Ahora solo tiene la segunda ventana del símbolo del sistema y un escritorio vacío.
    En el símbolo del sistema, escriba la línea siguiente y presione "Enter"
    cd ..
  7. En el símbolo del sistema, escriba la línea siguiente y presione "Enter"
    explorer.exe.
    Si es la primera vez que lo hace, Windows crea los
    componentes necesarios para que pueda acceder al Sistema (Escritorio, menú de inicio,
    Mi documento)
    cuando haya terminado, tendrá Un nuevo escritorio.
  8. Cierre la ventana del símbolo del sistema. Haga clic en Inicio y verifique su nombre de usuario.
    Ha cambiado a Sistema.
    Ahora eres un usuario superpoderoso. Tenga cuidado de no dañar su PC y eliminar o modificar archivos del sistema si no sabe lo que está haciendo.

La otra opción sería ejecutar su script como servicio.


2
atno funciona en Windows 7.
stephenwade 01 de

1
atse ejecuta en mi máquina con Windows 7. ¿Qué no te funciona?
uSlackr 01 de

3
Aquí hay otra forma (¿más rápida?) De terminar su proceso de explorador en Windows 7: haga clic en Inicio. Mueva el mouse hacia el lado derecho del menú (donde están "Ejecutar" y "Cerrar sesión"). (Ctrl) + (Shift) + (clic derecho); haga clic en "Salir del explorador".
Scott

2
C: \ Windows \ system32> a las 23:56 / interactive "cmd.exe" Advertencia: debido a las mejoras de seguridad, esta tarea se ejecutará en el momento esperado pero no de forma interactiva. Use la utilidad schtasks.exe si se requiere una tarea interactiva ('schtasks /?' Para más detalles). Se agregó un nuevo trabajo con ID de trabajo = 1 blogs.technet.com/b/askds/archive/2008/10/22/…
Dagelf

1

También hay un enfoque un poco más hacky, que consiste básicamente en sustituir cmd.exe en lugar de Utilman.exe en \ Windows \ System32 (que obviamente requeriría una copia de seguridad). Tendría que hacer esto fuera del Windows actualmente en ejecución de antemano (por ejemplo, en Linux o mediante un CD de instalación / recuperación). Aquí sería un script de ejemplo para usar (a través de Windows):

cd "%SystemRoot%\System32"
ren Utilman.exe Utilman.exe.bak
robocopy cmd.exe Utilman.exe /copyall

Después de hacer eso, inicie en Windows normal y presione Windows Key + U, y en lugar de mostrar un conjunto de utilidades para ayudar con la accesibilidad, etc., aparece un símbolo del sistema a nivel de sistema con todas las herramientas disponibles de su sistema .


También es posible hacerlo dentro de Windows, sin discos, incluso sin reiniciarlo. Simplemente vaya a System32, abra las propiedades de UtilMan.exe, tome todos los privilegios y la propiedad, y siga los pasos a continuación.
Jet

Esto es útil si no puede iniciar sesión en un sistema y solo accede a la pantalla de inicio de sesión
Vitas
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.