web-dev-qa-db-fra.com

Invite de commandes en tant qu'utilisateur SYSTEM (Windows 7)

Comment puis-je obtenir une invite de commande en tant qu'utilisateur SYSTEM sur Windows 7?

Contexte: Je teste un script de démarrage d'ordinateur et je dois comprendre le comportement d'une commande lorsqu'il est exécuté en tant que SYSTEM plutôt que sous mon compte d'utilisateur.

J'ai déjà vu des moyens de le faire avec at et psexec, mais ces méthodes ne semblent fonctionner que sous Windows XP ou Windows Vista.

J'utilise Windows 7 Pro SP1.

10
stephenwade

C'était demandé lors d'un débordement de pile . La réponse acceptée utilise PsExec (de la suite Systinternals ) comme l'a suggéré Scott .

Une autre solution consiste à créer un service qui s'exécute sous le compte système pour exécuter l'interpréteur de commandes. Vous pouvez le faire manuellement ou utiliser un programme qui crée les services, exécute l'invite, puis supprime automatiquement le service. Je viens d'essayer et cela a fonctionné un régal:

Screenshot of Task Manager with CMD running as System

3
Synetech

Utilisez PsExec de la suite Systinternals de Microsoft . PsExec doit être exécuté à partir d'une invite de commande administrative. Utilisez les commutateurs -i -s pour lancer votre invite de script/de commande.

Enter image description here

9
Scott Chamberlain

Je serais très prudent. SYSTEM est le compte administrateur mais beaucoup, beaucoup plus dangereux car il a un niveau d'accès plus élevé.

En règle générale, votre système correspond aux services de compte exécutés et non à un profil interactif. Il existe des moyens de le faire cependant.

En lisant ceci Je pense que nous avons une bonne approche:

  1. Vérifiez le nom du compte auquel vous êtes connecté (cliquez sur Démarrer. Vous
    verra le nom du compte auquel vous vous êtes connecté.)
  2. Lancer l'invite de commande. (Démarrer | Exécuter | cmd | [Entrée])
    dans la commande Invite, créez une planification pour exécuter cmd.exe.
    Pour créer un horaire, tapez la ligne suivante et appuyez sur enter.
    à 10:41/interactive “cmd.exe”
    Ceci créera une planification pour exécuter cmd.exe à 10:41.
    (Depuis que vous testez, vérifiez l'heure de votre système, essayez d'ajouter deux ou trois minutes.) Changez cette heure en fonction de l'heure locale
    Astuce: vous pouvez vérifier si la planification est placée en tapant “ à
    et en appuyant sur Entrée après l'étape ci-dessus.
  3. Attendez l'heure que vous avez définie pour le programme.
    cmd.exe serait lancé à l'heure spécifiée.
  4. Une fois que cmd.exe a été lancé, appuyez sur [CTRL] + [ALT] + [DEL] et lancez le gestionnaire de tâches.
    Sélectionnez l’onglet "Processus", sélectionnez Explorer.exe dans la liste des processus et cliquez sur le bouton " Terminer le processus ". .
    Vous recevrez un dialogue de confirmation. Cliquez sur “Oui” pour mettre fin au processus.
  5. Fermez le gestionnaire de tâches en cliquant sur le bouton Fermer (X).
    Ferme la première fenêtre cmd (veillez à fermer la première et non la seconde.)
  6. Maintenant, vous avez seulement la deuxième fenêtre Invite de commande et un bureau vide.
    Dans l'invite de commande, tapez la ligne suivante et appuyez sur "Entrée"
    cd ..
  7. Dans l'invite de commande tapez la ligne suivante et appuyez sur "Entrée"
    Explorer.exe
    Si c’est la première fois que vous le faites, Windows crée le nécessaire
    composants permettant d’accéder à System (Desktop, menu Démarrer,
    Mon document)
    Quand ce sera fini, vous aurez un nouveau bureau.
  8. Fermez la fenêtre d'invite de commande. Cliquez sur Démarrer et vérifiez votre nom d'utilisateur.
    Il a changé en Système.
    Vous êtes maintenant un utilisateur super puissant. Veillez à ne pas endommager votre ordinateur et à supprimer ou modifier les fichiers système si vous ne savez pas ce que vous faites.

L'autre option serait d'exécuter votre script en tant que service.

1
Austin T French

Il existe également une approche un peu plus compliquée à cet égard, qui consiste essentiellement à sous-traiter cmd.exe à la place de Utilman.exe dans\Windows\System32 (ce qui nécessiterait évidemment une sauvegarde). Vous devez le faire au préalable en dehors de Windows en cours d'exécution (par exemple sous Linux ou via un CD d'installation/de récupération). Voici un exemple de script à utiliser (via Windows):

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

Après cela, démarrez Windows classique et appuyez sur Windows Key + U. Au lieu de créer un ensemble d'utilitaires d'aide à l'accessibilité, etc., une invite de commande de niveau système s'affiche avec tous les outils disponibles de votre système. .

1
Isiah Meadows