Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Anda dapat menjalankan perintah pada satu atau ratusan komputer dengan satu perintah PowerShell. Windows PowerShell mendukung komputasi jarak jauh menggunakan berbagai teknologi, termasuk WMI, RPC, dan WS-Management.
PowerShell mendukung akses jarak jauh melalui WMI, WS-Management, dan SSH. Di PowerShell 7 dan yang lebih tinggi, RPC hanya didukung di Windows.
Untuk informasi selengkapnya tentang remoting di PowerShell, lihat artikel-artikel berikut:
Penerapan Windows PowerShell secara jarak jauh tanpa konfigurasi
Banyak cmdlet Windows PowerShell memiliki parameter ComputerName yang memungkinkan Anda mengumpulkan data dan mengubah pengaturan pada satu atau beberapa komputer jarak jauh. Cmdlet ini menggunakan berbagai protokol komunikasi dan bekerja pada semua sistem operasi Windows tanpa konfigurasi khusus.
Cmdlet-cmdlet ini meliputi:
- Mulai Ulang-Komputer
- Uji-Koneksi
- Clear-EventLog
- Get-EventLog
- Get-HotFix
- Get-Process
- Get-Service
- Set-Service
- Get-WinEvent
- Get-WmiObject
Biasanya, cmdlet yang mendukung jarak jauh tanpa konfigurasi khusus memiliki parameter ComputerName dan tidak memiliki parameter Session. Untuk menemukan cmdlet ini dalam sesi Anda, ketik:
Get-Command | Where-Object {
$_.Parameters.Keys -contains "ComputerName" -and
$_.Parameters.Keys -notcontains "Session"
}
Remote Windows PowerShell
Dengan menggunakan protokol WS-Management, Windows PowerShell jarak jauh memungkinkan menjalankan perintah Windows PowerShell apa pun di satu atau lebih komputer jarak jauh. Anda dapat membuat koneksi persisten, memulai sesi interaktif, dan menjalankan skrip di komputer jarak jauh.
Untuk menggunakan remoting di Windows PowerShell, komputer jarak jauh harus dikonfigurasi untuk pengelolaan jarak jauh. Untuk informasi selengkapnya, termasuk instruksi, lihat Tentang Persyaratan Jarak Jauh.
Setelah Anda mengonfigurasi remoting Windows PowerShell, banyak strategi remoting tersedia untuk Anda. Artikel ini hanya mencantumkan beberapa di antaranya. Untuk informasi selengkapnya, lihat Tentang Jarak Jauh.
Memulai sesi interaktif
Untuk memulai sesi interaktif dengan satu komputer jarak jauh, gunakan cmdlet Enter-PSSession. Misalnya, untuk memulai sesi interaktif dengan komputer jarak jauh Server01, ketik:
Enter-PSSession Server01
Perintah berubah untuk menampilkan nama komputer jarak jauh. Perintah apa pun yang Anda ketik pada perintah berjalan di komputer jarak jauh dan hasilnya ditampilkan di komputer lokal.
Untuk mengakhiri sesi interaktif, ketik:
Exit-PSSession
Untuk informasi selengkapnya tentang cmdlet Enter-PSSession
dan Exit-PSSession
, lihat:
- Enter-PSSession (masuk ke sesi-PSS)
- Keluar dari Sesi PS
Jalankan Perintah Jarak Jauh
Untuk menjalankan perintah pada satu atau beberapa komputer, gunakan cmdlet Invoke-Command. Misalnya, untuk menjalankan perintah Get-UICulture pada komputer jarak jauh Server01 dan Server02, ketik:
Invoke-Command -ComputerName Server01, Server02 -ScriptBlock {Get-UICulture}
Output dikembalikan ke komputer Anda.
LCID Name DisplayName PSComputerName
---- ---- ----------- --------------
1033 en-US English (United States) server01.corp.fabrikam.com
1033 en-US English (United States) server02.corp.fabrikam.com
Menjalankan Skrip
Untuk menjalankan skrip pada satu atau banyak komputer jarak jauh, gunakan parameter FilePath cmdlet Invoke-Command
. Skrip harus aktif atau dapat diakses oleh komputer lokal Anda. Hasilnya dikembalikan ke komputer lokal Anda.
Misalnya, perintah berikut menjalankan skrip DiskCollect.ps1
di komputer jarak jauh, Server01 dan Server02.
Invoke-Command -ComputerName Server01, Server02 -FilePath C:\Scripts\DiskCollect.ps1
Membuat Koneksi Persisten
Gunakan cmdlet New-PSSession
untuk membuat sesi persisten di komputer jarak jauh. Contoh berikut membuat sesi jarak jauh di Server01 dan Server02. Objek sesi disimpan dalam variabel $s
.
$s = New-PSSession -ComputerName Server01, Server02
Sekarang setelah sesi dibuat, Anda dapat menjalankan perintah apa pun di dalamnya. Dan karena sesinya persisten, Anda dapat mengumpulkan data dari satu perintah dan menggunakannya di perintah lain.
Misalnya, perintah berikut menjalankan perintah Get-HotFix
dalam sesi dalam variabel $s
dan menyimpan hasilnya dalam variabel $h
. Variabel $h
dibuat di setiap sesi di $s
, tetapi tidak ada di sesi lokal.
Invoke-Command -Session $s {$h = Get-HotFix}
Sekarang Anda dapat menggunakan data dalam variabel $h
dengan perintah lain dalam sesi yang sama. Hasilnya ditampilkan pada komputer lokal. Contohnya:
Invoke-Command -Session $s {$h | where {$_.InstalledBy -ne "NT AUTHORITY\SYSTEM"}}
Pengendalian Jarak Jauh Canggih
PowerShell menyertakan cmdlet yang memungkinkan Anda untuk:
- Mengonfigurasi dan membuat sesi jarak jauh baik dari ujung lokal maupun jarak jauh
- Membuat sesi yang dikustomisasi dan dibatasi
- Mengimpor perintah dari sesi jarak jauh yang benar-benar berjalan secara implisit pada sesi jarak jauh
- Mengonfigurasi keamanan sesi jarak jauh
PowerShell di Windows menyertakan penyedia WSMan. Penyedia membuat drive WSMan:
yang memungkinkan Anda menavigasi melalui hierarki pengaturan konfigurasi pada komputer lokal dan komputer jarak jauh.
Untuk informasi selengkapnya tentang penyedia WSMan, lihat Penyedia WSMan dan Tentang cmdlet WS-Management, atau di konsol Windows PowerShell, ketik Get-Help WSMan
.
Untuk informasi selengkapnya, lihat:
Untuk bantuan terkait kesalahan jarak jauh, lihat about_Remote_Troubleshooting.