Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Egyetlen PowerShell-paranccsal egy vagy több száz számítógépen futtathat parancsokat. A Windows PowerShell támogatja a távoli számítástechnikát különböző technológiák, például a WMI, az RPC és a WS-Management használatával.
A PowerShell támogatja a WMI, a WS-Management és az SSH távoli elérést. A PowerShell 7-ben és újabb verzióiban az RPC csak Windows rendszeren támogatott.
A PowerShellben való újraegyezésről az alábbi cikkekben talál további információt:
Windows PowerShell-újramotálás konfiguráció nélkül
Számos Windows PowerShell-parancsmag rendelkezik a ComputerName paraméterrel, amely lehetővé teszi az adatok gyűjtését és a beállítások módosítását egy vagy több távoli számítógépen. Ezek a parancsmagok eltérő kommunikációs protokollokat használnak, és speciális konfiguráció nélkül működnek minden Windows operációs rendszeren.
Ezek a parancsmagok a következőket tartalmazzák:
- Számítógép újraindítása
- Tesztkapcsolat
- Clear-EventLog
- Get-EventLog
- Gyorsjavítás lekérése
- Folyamat lekérése
- Szolgáltatás lekérése
- Szolgáltatás beállítása
- Get-WinEvent
- Get-WmiObject
A speciális konfiguráció nélküli újraküldést támogató parancsmagok általában a ComputerName paramétert kapják, és nem rendelkeznek a Munkamenet paraméterével. Ha meg szeretné keresni ezeket a parancsmagokat a munkamenetben, írja be a következőt:
Get-Command | Where-Object {
$_.Parameters.Keys -contains "ComputerName" -and
$_.Parameters.Keys -notcontains "Session"
}
Windows PowerShell távoli kapcsolatok
A WS-Management protokoll használatával a Windows PowerShell-remoting lehetővé teszi bármely Windows PowerShell-parancs futtatását egy vagy több távoli számítógépen. Állandó kapcsolatokat hozhat létre, interaktív munkameneteket indíthat, és szkripteket futtathat távoli számítógépeken.
A Windows PowerShell-remoting használatához a távoli számítógépet távoli felügyeletre kell konfigurálni. További információkért, beleértve az utasításokat is, olvassa el A távoli követelményekcímű témakört.
Miután konfigurálta a Windows PowerShell távoli elérést, számos távoli elérési stratégia érhető el az Ön számára. Ez a cikk csak néhányat sorol fel. További információ: Tudnivalók a távoliról.
Interaktív munkamenet indítása
Ha egyetlen távoli számítógéppel szeretne interaktív munkamenetet indítani, használja az Enter-PSSession parancsmagot. Ha például egy interaktív munkamenetet szeretne elindítani a Server01 távoli számítógéppel, írja be a következőt:
Enter-PSSession Server01
A parancssor módosul a távoli számítógép nevének megjelenítéséhez. A parancssorba beírt parancsok a távoli számítógépen futnak, és az eredmények megjelennek a helyi számítógépen.
Az interaktív munkamenet befejezéséhez írja be a következőt:
Exit-PSSession
További információért a Enter-PSSession és Exit-PSSession parancsmagokról, lásd:
Távoli parancs futtatása
Ha parancsot szeretne futtatni egy vagy több számítógépen, használja az Invoke-Command parancsmagot. Ha például get-UICulture parancsot szeretne futtatni a Server01 és a Server02 távoli számítógépeken, írja be a következőt:
Invoke-Command -ComputerName Server01, Server02 -ScriptBlock {Get-UICulture}
A kimenet visszakerül a számítógépre.
LCID Name DisplayName PSComputerName
---- ---- ----------- --------------
1033 en-US English (United States) server01.corp.fabrikam.com
1033 en-US English (United States) server02.corp.fabrikam.com
Szkript futtatása
Ha parancsfájlt szeretne futtatni egy vagy több távoli számítógépen, használja a parancsmag Invoke-Command paraméterét. A szkriptnek futnia kell, vagy elérhetőnek kell lennie a helyi számítógépen. Az eredmények visszakerülnek a helyi számítógépre.
A következő parancs például a DiskCollect.ps1 szkriptet a távoli számítógépeken, a Server01-en és a Server02-en futtatja.
Invoke-Command -ComputerName Server01, Server02 -FilePath C:\Scripts\DiskCollect.ps1
Állandó kapcsolat létrehozása
New-PSSession A parancsmag használatával hozzon létre egy állandó munkamenetet egy távoli számítógépen. Az alábbi példa távoli munkameneteket hoz létre a Server01 és a Server02 kiszolgálón. A munkamenet-objektumokat a rendszer a $s változóban tárolja.
$s = New-PSSession -ComputerName Server01, Server02
A munkamenetek létrehozása után bármilyen parancsot futtathat bennük. Mivel a munkamenetek állandóak, adatokat gyűjthet egy parancsból, és használhatja azt egy másik parancsban.
Az alábbi parancs például futtat egy Get-HotFix parancsot a $s változó munkameneteiben, és menti az eredményeket a $h változóban. A $h változó minden $s munkamenetben létrejön, de nem létezik a helyi munkamenetben.
Invoke-Command -Session $s {$h = Get-HotFix}
Most már használhatja a változóban lévő $h adatokat más parancsokkal ugyanabban a munkamenetben. Az eredmények a helyi számítógépen jelennek meg. Például:
Invoke-Command -Session $s {$h | where {$_.InstalledBy -ne "NT AUTHORITY\SYSTEM"}}
Fejlett távoli elérés
A PowerShell olyan parancsmagokat tartalmaz, amelyek lehetővé teszik a következők használatát:
- Távoli munkamenetek konfigurálása és létrehozása mind a helyi, mind a távoli végpontról
- Testreszabott és korlátozott munkamenetek létrehozása
- Parancsok importálása a távoli munkameneten implicit módon futó távoli munkamenetből
- Távoli munkamenet biztonságának konfigurálása
A Windows PowerShell tartalmaz egy WSMan-szolgáltatót. A szolgáltató létrehoz egy meghajtót WSMan: , amely lehetővé teszi a konfigurációs beállítások hierarchiájának navigálását a helyi számítógépen és a távoli számítógépeken.
A WSMan-szolgáltatóról további információt a WSMan Provider és a(z) About WS-Management Parancsmagok című témakörben talál, vagy írja be a Get-Help WSMan parancsot a Windows PowerShell-konzolba.
További információk:
- PowerShell-távoli elérés: Gyakori Kérdések
- Register-PSSessionConfiguration (PS-munkamenetkonfiguráció regisztrálása)
- Import-PSSession
Ha segítségre van szüksége a távoli hibákhoz, tekintse meg a about_Remote_Troubleshooting.