mardi 27 septembre 2011

about_Remote

RUBRIQUE
    about_Remote

DESCRIPTION COURTE
    Décrit comment exécuter des commandes distantes dans Windows
    PowerShell.


DESCRIPTION LONGUE
    Vous pouvez exécuter des commandes distantes sur un ordinateur
    unique ou sur plusieurs ordinateurs à l'aide d'une connexion
    temporaire ou permanente. Vous pouvez également démarrer une
    session interactive avec un ordinateur distant unique.

    Cette rubrique fournit une série d'exemples pour vous montrer
    comment exécuter différents types de commandes distantes. Après
    avoir essayé ces commandes de base, lisez les rubriques d'aide
    qui décrivent chaque applet de commande utilisée dans ces
    commandes. Les rubriques fournissent les détails et expliquent
    comment vous pouvez modifier les commandes pour répondre à vos
    besoins.

    Remarque : pour utiliser la communication à distance Windows
    PowerShell, les ordinateurs local et distant doivent être
    configurés pour cette fonction. Pour plus d'informations,
    consultez about_Remote_Requirements.


 COMMENT DÉMARRER UNE SESSION INTERACTIVE (ENTER-PSSESSION)

     La façon la plus simple d'exécuter des commandes distantes consiste
     à démarrer une session interactive avec un ordinateur distant.

     Lorsque la session démarre, les commandes que vous tapez s'exécutent
     sur l'ordinateur distant comme si vous les y aviez tapées directement.
     Vous ne pouvez vous connecter qu'à un seul ordinateur dans chaque
     session interactive.

     Pour démarrer une session interactive, utilisez l'applet de commande
     Enter-PSSession. La commande suivante démarre une session interactive
     avec l'ordinateur Server01 :

        enter-pssession server01

     L'invite de commandes change pour indiquer que vous êtes connecté à
     l'ordinateur Server01.

        Server01\PS>

     Vous pouvez maintenant taper des commandes sur l'ordinateur
     Server01.

     Pour mettre fin à la session interactive, tapez :

        exit-pssession


     Pour plus d'informations, consultez Enter-PSSession.



 COMMENT UTILISER DES APPLETS DE COMMANDE AVEC UN PARAMÈTRE
 COMPUTERNAME POUR OBTENIR DES DONNÉES DISTANTES

    Plusieurs applets de commande ont un paramètre ComputerName
    qui vous permet d'obtenir des objets d'ordinateurs distants.

    Étant donné que ces applets de commande n'utilisent pas la
    communication à distance Windows PowerShell basée sur la
    Gestion des services Web pour communiquer, vous pouvez utiliser
    le paramètre ComputerName de ces applets de commande sur tout
    ordinateur qui exécute Windows PowerShell. Les ordinateurs
    n'ont pas à être configurés pour la communication à distance
    Windows PowerShell ni à répondre à la configuration minimale
    requise pour la communication à distance.

    Les applets de commande suivantes ont un paramètre ComputerName :

        Clear-EventLog    Limit-EventLog
        Get-Counter       New-EventLog
        Get-EventLog      Remove-EventLog
        Get-HotFix        Restart-Computer
        Get-Process       Show-EventLog
        Get-Service       Show-Service
        Get-WinEvent      Stop-Computer
        Get-WmiObject     Write-EventLog


    Par exemple, la commande suivante obtient les services sur
    l'ordinateur distant Server01 :

        get-service -computername server01


    En général, les applets de commande qui prennent en charge la
    communication à distance sans configuration spéciale ont un
    paramètre ComputerName et pas de paramètre Session. Pour
    rechercher ces applets de commande dans votre session, tapez :

       get-command | where { $_.parameters.keys -contains "ComputerName" -and $_.parameters.keys -notcontains "Session"
}



 COMMENT EXÉCUTER UNE COMMANDE DISTANTE

    Pour exécuter d'autres commandes sur les ordinateurs distants,
    utilisez l'applet de commande Invoke-Command.

    Pour exécuter une seule commande ou quelques commandes non liées,
    utilisez le paramètre ComputerName de l'applet de commande
    Invoke-Command pour indiquer les ordinateurs distants. Utilisez
    le paramètre ScriptBlock pour spécifier la commande.

    Par exemple, la commande suivante exécute une commande Get-Culture sur
    l'ordinateur Server01.

        invoke-command -computername Server01 -scriptblock {get-culture}

    Le paramètre ComputerName est conçu pour le cas où vous exécutez
    une seule commande ou quelques commandes non liées sur un ou
    plusieurs ordinateurs. Pour établir une connexion permanente
    à un ordinateur distant, utilisez le paramètre Session.


 COMMENT CRÉER UNE CONNEXION PERMANENTE (PSSESSION)

    Lorsque vous utilisez le paramètre ComputerName de l'applet de
    commande Invoke-Command, Windows PowerShell établit une connexion
    seulement pour la commande. Il ferme ensuite la connexion lorsque
    la commande est terminée. Toutes les variables ou fonctions
    définies dans la commande sont perdues.

    Pour créer une connexion permanente à un ordinateur distant,
    utilisez l'applet de commande New-PSSession. Par exemple, la
    commande suivante crée des sessions PSSession sur les ordinateurs
    Server01 et Server02, puis les enregistre dans la variable $s.

        $s = new-pssession -computername Server01, Server02


 COMMENT EXÉCUTER DES COMMANDES DANS UNE SESSION PSSESSION

    Avec une session PSSession, vous pouvez exécuter une série
    de commandes distantes qui partagent des données, comme
    des fonctions, des alias et les valeurs de variables.
    Pour exécuter des commandes dans une session PSSession,
    utilisez le paramètre Session de l'applet de commande
    Invoke-Command.

    Par exemple, la commande suivante utilise l'applet de commande
    Invoke-Command pour exécuter une commande Get-Process dans les
    sessions PSSession sur les ordinateurs Server01 et Server02.
    La commande enregistre les processus dans une variable $p dans
    chaque session PSSession.

        invoke-command -session $s -scriptblock {$p = get-process}

    Étant donné que la session PSSession utilise une connexion
    permanente, vous pouvez exécuter une autre commande dans
    la même session PSSession qui utilise la variable $p.
    La commande suivante compte le nombre de processus enregistrés
    dans $p.

        invoke-command -session $s -scriptblock {$p.count}

 COMMENT EXÉCUTER UNE COMMANDE DISTANTE SUR PLUSIEURS ORDINATEURS

    Pour exécuter une commande distante sur plusieurs ordinateurs,
    tapez tous les noms d'ordinateurs dans la valeur du paramètre
    ComputerName de l'applet de commande Invoke-Command. Séparez les
    noms par des virgules.

    Par exemple, la commande suivante exécute une commande
    Get-Culture sur trois ordinateurs :

        invoke-command -computername S1, S2, S3 -scriptblock {get-culture}

    Vous pouvez également exécuter une commande dans plusieurs
    sessions PSSession. Les commandes suivantes créent des sessions
    PSSession sur les ordinateurs Server01, Server02 et Server03,
    puis exécutent une commande Get-Culture dans chacune d'elles.

        $s = new-pssession -computername S1, S2, S3
        invoke-command -session $s -scriptblock {get-culture}


    Pour inclure la liste d'ordinateurs de l'ordinateur local, tapez
    le nom de l'ordinateur local, un point (.) ou " localhost ".

        invoke-command -computername S1, S2, S3, localhost -scriptblock {get-culture}


 COMMENT EXÉCUTER UN SCRIPT SUR LES ORDINATEURS DISTANTS

    Pour exécuter un script local sur des ordinateurs distants,
    utilisez le paramètre FilePath de l'applet de commande Invoke-Command.

    Par exemple, la commande suivante exécute le script Sample.ps1 sur les
    ordinateurs S1 et S2 :

        invoke-command -computername S1, S2 -filepath C:\Test\Sample.ps1

    Les résultats du script sont retournés à l'ordinateur local.
    Vous n'avez pas besoin de copier des fichiers.


 COMMENT ARRÊTER UNE COMMANDE DISTANTE

   Pour interrompre une commande, appuyez sur CTRL+C. La requête
   d'interruption est passée à l'ordinateur distant où elle met
   fin à la commande distante.



PLUS D'INFORMATIONS

    -- Pour plus d'informations sur la configuration requise pour la
       communication à distance, consultez about_Remote_Requirements.

    -- Pour obtenir de l'aide sur la mise en forme de la sortie distante,
       consultez about_Remote_Output.

    -- Pour plus d'informations sur le fonctionnement de la
       communication à distance, la gestion des données distantes,
       les configurations spéciales, les problèmes de sécurité et
       d'autres questions fréquentes, consultez about_Remote_FAQ.

    -- Pour obtenir de l'aide sur la résolution d'erreurs de
       communication à distance, consultez about_Remote_Troubleshooting.

    -- Pour plus d'informations sur les sessions PSSession et les
       connexions permanentes, consultez about_PSSessions.

    -- Pour plus d'informations sur les tâches en arrière-plan
       Windows PowerShell, consultez about_Jobs.

MOTS CLÉS
    about_Remoting

VOIR AUSSI
    about_PSSessions
    about_Remote_Requirements
    about_Remote_FAQ
    about_Remote_TroubleShooting
    Enter-PSSession
    Invoke-Command
    New-PSSession

Aucun commentaire:

Enregistrer un commentaire