Restart-Computer
Yerel ve uzak bilgisayarlarda işletim sistemini yeniden başlatır.
Syntax
Restart-Computer
[-DcomAuthentication <AuthenticationLevel>]
[-Impersonation <ImpersonationLevel>]
[-WsmanAuthentication <String>]
[-Protocol <String>]
[[-ComputerName] <String[]>]
[[-Credential] <PSCredential>]
[-Force]
[-Wait]
[-Timeout <Int32>]
[-For <WaitForServiceTypes>]
[-Delay <Int16>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Restart-Computer
[-AsJob]
[-DcomAuthentication <AuthenticationLevel>]
[-Impersonation <ImpersonationLevel>]
[[-ComputerName] <String[]>]
[[-Credential] <PSCredential>]
[-Force]
[-ThrottleLimit <Int32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Restart-Computer
Cmdlet, yerel ve uzak bilgisayarlarda işletim sistemini yeniden başlatır.
parametrelerini Restart-Computer
kullanarak yeniden başlatma işlemlerini arka plan işi olarak çalıştırabilir, kimlik doğrulama düzeylerini ve alternatif kimlik bilgilerini belirtebilir, aynı anda çalışan işlemleri sınırlandırabilir ve hemen yeniden başlatmayı zorlayabilirsiniz.
Windows PowerShell 3.0'dan başlayarak, sonraki komutu çalıştırmadan önce yeniden başlatmanın tamamlanmasını bekleyebilirsiniz. Bekleme zaman aşımı ve sorgu aralığı belirtin ve yeniden başlatılan bilgisayarda belirli hizmetlerin kullanılabilir olmasını bekleyin. Bu özellik, betiklerde ve işlevlerde kullanımı Restart-Computer
pratik hale getirir.
Dağıtılmış Bileşen Nesne Modeli (DCOM) çağrılarının bir kurumsal güvenlik duvarı gibi engellenmesi durumunda bilgisayarı yeniden başlatmak için WS-Management (WSMan) protokolunu kullanabilirsiniz. Daha fazla bilgi için bkz . WS-Yönetim Protokolü.
Bu cmdlet, Windows PowerShell uzaktan iletişimini yalnızca bir komutta AsJob parametresini kullandığınızda gerektirir.
Örnekler
Örnek 1: Yerel bilgisayarı yeniden başlatma
Restart-Computer
yerel bilgisayarı yeniden başlatır.
Restart-Computer
Örnek 2: Birden çok bilgisayarı yeniden başlatma
Restart-Computer
uzak ve yerel bilgisayarları yeniden başlatabilir. ComputerName parametresi bir dizi bilgisayar adını kabul eder.
Restart-Computer -ComputerName Server01, Server02, localhost
Örnek 3: Bilgisayarları arka plan işi olarak yeniden başlatma
Bu komutlar, iki uzak bilgisayarda arka plan işi olarak bir Restart-Computer
komut çalıştırır ve ardından sonuçları alır.
AsJob işi yerel bilgisayarda oluşturduğundan ve sonuçları otomatik olarak yerel bilgisayara döndürdüğünden, yerel komut olarak çalıştırabilirsinizReceive-Job
.
$Job = Restart-Computer -ComputerName "Server01", "Server02" -AsJob
$Job | Receive-Job
Restart-Computer
Server01 ve Server02'yi belirtmek için ComputerName parametresini kullanır. AsJob parametresi, komutu arka plan işi olarak çalıştırır. İş nesnesi değişkeninde $Job
depolanır. $Job
, sonuçları alan cmdlet'e Receive-Job
işlem hattına gönderilir.
Örnek 4: Uzak bilgisayarı yeniden başlatma
Restart-Computer
özelleştirilmiş kimliğe bürünme ve kimlik doğrulama ayarlarıyla uzak bilgisayarı yeniden başlatır.
Restart-Computer -ComputerName Server01 -Impersonation Anonymous -DcomAuthentication PacketIntegrity
Restart-Computer
Server01'i belirtmek için ComputerName parametresini kullanır. Kimliğe Bürünme parametresi, istek sahibinin kimliğini gizlemek için Anonim'i belirtir. DcomAuthentication parametresi, bağlantının kimlik doğrulama düzeyi olarak PacketIntegrity'yi belirtir.
Örnek 5: Metin dosyasında listelenen bilgisayarların yeniden başlatılmasını zorlama
Bu örnek, dosyada listelenen bilgisayarların hemen yeniden başlatılmasını zorlar Domain01.txt
. Metin dosyasındaki bilgisayar adları bir değişkende depolanır. Force parametresi hemen yeniden başlatmaya zorlar ve ThrottleLimit parametresi eşzamanlı bağlantı sayısını sınırlar.
$Names = Get-Content -Path C:\Domain01.txt
$Creds = Get-Credential
Restart-Computer -ComputerName $Names -Credential $Creds -Force -ThrottleLimit 10
Get-Content
, bir metin dosyasından bilgisayar adlarının listesini almak için Path parametresini Domain01.txt. Bilgisayar adları değişkeninde $Names
depolanır. Get-Credential
sizden bir kullanıcı adı ve parola ister ve değerlerini değişkeninde $Creds
depolar. Restart-Computer
, ComputerName ve Credential parametrelerini değişkenleriyle birlikte kullanır. Force parametresi her bilgisayarın hemen yeniden başlatılmasına neden olur. ThrottleLimit parametresi komutu 10 eşzamanlı bağlantıyla sınırlar.
Örnek 6: Uzak bilgisayarı yeniden başlatın ve PowerShell'i bekleyin
Restart-Computer
uzak bilgisayarı yeniden başlatır ve devam etmeden önce PowerShell'in yeniden başlatılan bilgisayarda kullanılabilir duruma gelmesi için 5 dakika (300 saniye) kadar bekler.
Restart-Computer -ComputerName Server01 -Wait -For PowerShell -Timeout 300 -Delay 2
Restart-Computer
Server01'i belirtmek için ComputerName parametresini kullanır. Wait parametresi yeniden başlatmanın tamamlanmasını bekler. For, PowerShell'in uzak bilgisayarda komut çalıştırabileceğini belirtir. Timeout parametresi beş dakikalık beklemeyi belirtir. Delay parametresi, uzak bilgisayarı yeniden başlatılıp başlatılmadığını belirlemek için her iki saniyede bir sorgular.
Örnek 7: WSMan Protokolü kullanarak bilgisayarı yeniden başlatma
Restart-Computer
, varsayılan DCOM yerine WSMan protokolünün kullanılmasıyla uzak bilgisayarı yeniden başlatır. Kerberos kimlik doğrulaması, geçerli kullanıcının uzak bilgisayarı yeniden başlatma izni olup olmadığını belirler.
Bu ayarlar, DCOM engellendiğinden DCOM tabanlı yeniden başlatmaların başarısız olduğu kuruluşlar için tasarlanmıştır. Örneğin, bir güvenlik duvarı tarafından.
Restart-Computer -ComputerName Server01 -Protocol WSMan -WsmanAuthentication Kerberos
Restart-Computer
Uzak bilgisayar olan Server01'i belirtmek için ComputerName parametresini kullanır.
Protocol parametresi, WSMan protokolunun kullanılacağını belirtir. WsmanAuthentication parametresi, kimlik doğrulama yöntemini Kerberos olarak belirtir.
Parametreler
-AsJob
Restart-Computer
Bunun arka plan işi olarak çalıştığını gösterir.
Bu parametreyi kullanmak için yerel ve uzak bilgisayarların uzaktan iletişim için yapılandırılması gerekir. Windows Vista ve Windows işletim sisteminin sonraki sürümlerinde, Yönetici istrator olarak çalıştır seçeneğini kullanarak PowerShell'i açmanız gerekir. Daha fazla bilgi için bkz . about_Remote_Requirements.
AsJob parametresini belirttiğinizde, komut hemen arka plan işini temsil eden bir nesne döndürür. İş tamamlarken oturumda çalışmaya devam edebilirsiniz. İş yerel bilgisayarda oluşturulur ve uzak bilgisayarlardan alınan sonuçlar otomatik olarak yerel bilgisayara döndürülür. İşi yönetmek için İş cmdlet'lerini kullanın. İş sonuçlarını almak için cmdlet'ini Receive-Job
kullanın.
Windows PowerShell arka plan işleri hakkında daha fazla bilgi için bkz . about_Jobs ve about_Remote_Jobs.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ComputerName
Bir bilgisayar adı veya virgülle ayrılmış bir bilgisayar adı dizisi belirtir. Restart-Computer
işlem hattından veya değişkenlerden ComputerName nesnelerini kabul eder.
NetBIOS adını, IP adresini veya uzak bilgisayarın tam etki alanı adını yazın. Yerel bilgisayarı belirtmek için bilgisayar adını, nokta .
veya localhost yazın.
Bu parametre PowerShell uzaktan iletişimini desteklemez. Bilgisayarınız uzak komutları çalıştıracak şekilde yapılandırılmamış olsa bile ComputerName parametresini kullanabilirsiniz.
ComputerName parametresi belirtilmezse yerel Restart-Computer
bilgisayarı yeniden başlatır.
Type: | String[] |
Aliases: | CN, __SERVER, Server, IPAddress |
Position: | 0 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Confirm
komutunu çalıştırmadan Restart-Computer
önce sizden onay ister.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
Bu eylemi yapma izni olan bir kullanıcı hesabı belirtir. Varsayılan, mevcut kullanıcıdır.
User01 veya Domain01\User01 gibi bir kullanıcı adı yazın veya cmdlet tarafından Get-Credential
oluşturulan bir PSCredential nesnesi girin. Bir kullanıcı adı yazarsanız parolayı girmeniz istenir.
Kimlik bilgileri bir PSCredential nesnesinde depolanır ve parola SecureString olarak depolanır.
Not
SecureString veri koruması hakkında daha fazla bilgi için bkz. SecureString ne kadar güvenli?.
Type: | PSCredential |
Position: | 1 |
Default value: | Current user |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DcomAuthentication
WMI bağlantısı için kullanılan kimlik doğrulama düzeyini belirtir. Restart-Computer
WMI kullanır.
Geçerli değerler:
- Arama: Arama düzeyi COM kimlik doğrulaması
- Bağlan: Bağlan düzeyinde COM kimlik doğrulaması
- Varsayılan: Windows Kimlik Doğrulaması
- Hiçbiri: COM kimlik doğrulaması yok
- Paket: Paket düzeyi COM kimlik doğrulaması.
- PacketIntegrity: Paket Bütünlüğü düzeyinde COM kimlik doğrulaması
- PacketPrivacy: Paket Gizlilik düzeyi COM kimlik doğrulaması.
- Değişmedi: Kimlik doğrulama düzeyi önceki komutla aynıdır.
Daha fazla bilgi için bkz . AuthenticationLevel Sabit Listesi.
Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.
Type: | AuthenticationLevel |
Aliases: | Authentication |
Accepted values: | Default, None, Connect, Call, Packet, PacketIntegrity, PacketPrivacy, Unchanged |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Delay
Saniye cinsinden sorguların sıklığını belirtir. PowerShell, hizmetin bilgisayar yeniden başlatıldıktan sonra kullanılabilir olup olmadığını belirlemek için For parametresi tarafından belirtilen hizmeti sorgular.
Bu parametre yalnızca Wait ve For parametreleriyle birlikte geçerlidir.
Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.
Delay parametresi belirtilmezse beş Restart-Computer
saniyelik bir gecikme kullanır.
Type: | Int16 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-For
Bilgisayar yeniden başlatıldıktan sonra belirtilen hizmetin veya özelliğin kullanılabilir olmasını beklediğinden PowerShell'in davranışını belirtir. Bu parametre yalnızca Wait parametresiyle geçerlidir.
Bu parametrenin kabul edilebilir değerleri şunlardır:
- Varsayılan: PowerShell'in yeniden başlatılmasını bekler.
- PowerShell: Bilgisayardaki bir PowerShell uzak oturumunda komutları çalıştırabilir.
- WMI: Bilgisayar için bir Win32_ComputerSystem sorgusuna yanıt alır.
- WinRM: WS-Management kullanarak bilgisayarda uzak oturum oluşturabilir.
Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.
Type: | WaitForServiceTypes |
Accepted values: | Wmi, WinRM, PowerShell |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Force
Bilgisayarın hemen yeniden başlatılmasını zorlar.
Type: | SwitchParameter |
Aliases: | f |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Impersonation
Bu cmdlet'in WMI'yi çağırmak için kullandığı kimliğe bürünme düzeyini belirtir. Restart-Computer
WMI kullanır.
Bu parametrenin kabul edilebilir değerleri şunlardır:
- Varsayılan: Varsayılan kimliğe bürünme. Ada rağmen, bu varsayılan değer değildir.
- Anonim: Çağıranın kimliğini gizler.
- Tanımla: Nesnelerin çağıranın kimlik bilgilerini sorgulamasına izin verir.
- Kimliğe Bürün: Nesnelerin çağıranın kimlik bilgilerini kullanmasına izin verir.
Type: | ImpersonationLevel |
Accepted values: | Default, Anonymous, Identify, Impersonate, Delegate |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Protocol
Bilgisayarları yeniden başlatmak için hangi protokolün kullanılacağını belirtir. Geçerli değerler WSMan ve DCOM'dır.
Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.
Type: | String |
Accepted values: | DCOM, WSMan |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ThrottleLimit
Bu komutu çalıştırmak için oluşturulabilecek en fazla eşzamanlı bağlantı sayısını belirtir. Kısıtlama sınırı yalnızca geçerli komut için geçerlidir, oturuma veya bilgisayara uygulanmaz.
ThrottleLimit parametresi belirtilmezse veya 0 değeri kullanılırsa, Restart-Computer
en fazla 32 eşzamanlı bağlantı kullanır.
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Timeout
Bekleme süresini saniye cinsinden belirtir. Zaman aşımı süresi dolduğunda, Restart-Computer
bilgisayarlar yeniden başlatılmamış olsa bile komut istemine döner.
Timeout parametresi yalnızca Wait parametresiyle geçerlidir. Zaman aşımı Wait parametresinin süresiz bekleme süresini geçersiz kılar.
Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.
Type: | Int32 |
Aliases: | TimeoutSec |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Wait
Restart-Computer
PowerShell istemini gizler ve bilgisayarlar yeniden başlatılana kadar işlem hattını engeller. Bu parametreyi bir betikte kullanarak bilgisayarları yeniden başlatabilir ve yeniden başlatma tamamlandığında işlemeye devam edebilirsiniz.
Wait parametresi, bilgisayarların yeniden başlatılması için süresiz olarak bekler. Zaman aşımını, belirli hizmetlerin yeniden başlatılan bilgisayarlarda kullanılabilir olmasını beklemek için For ve Delay parametrelerini ayarlamak için kullanabilirsiniz.
Yerel bilgisayarı yeniden başlatırken Wait parametresi geçerli değildir. ComputerName parametresinin değeri uzak bilgisayarların ve yerel bilgisayarın adlarını içeriyorsa, Restart-Computer
yerel bilgisayarda bekle için sonlandırılmayan bir hata oluşturur, ancak uzak bilgisayarların yeniden başlatılmasını bekler.
Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Çalıştırıldığında Restart-Computer
ne olacağını gösterir. Restart-Computer
Cmdlet çalıştırılmıyor.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WsmanAuthentication
Kullanıcı kimlik bilgilerinin kimliğini doğrulamak için kullanılan mekanizmayı belirtir. Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.
Bu parametre için kabul edilebilir değerler şunlardır: Temel, CredSSP, Varsayılan, Özet, Kerberos ve Anlaşma.
Daha fazla bilgi için bkz . AuthenticationMechanism.
Uyarı
Kimlik Bilgileri Güvenlik Hizmeti Sağlayıcısı (CredSSP) kimlik doğrulaması, kullanıcı kimlik bilgilerinin kimlik doğrulaması için uzak bir bilgisayara geçirildiği, uzak ağ paylaşımına erişme gibi birden fazla kaynakta kimlik doğrulaması gerektiren komutlar için tasarlanmıştır. Bu mekanizma, uzak işlemin güvenlik riskini artırır. Uzak bilgisayarın güvenliği aşılırsa, bu bilgisayara geçirilen kimlik bilgileri ağ oturumunu denetlemek için kullanılabilir.
Type: | String |
Accepted values: | Basic, CredSSP, Default, Digest, Kerberos, Negotiate |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Girişler
Bilgisayar adı içeren bir dizeyi bu cmdlet'e aktarabilirsiniz.
Çıkışlar
None
Varsayılan olarak, bu cmdlet çıkış döndürmez.
System.Management.Automation.RemotingJob
AsJob parametresini kullandığınızda, bu cmdlet bir iş nesnesi döndürür.
Notlar
Restart-Computer
yalnızca Windows çalıştıran bilgisayarlarda çalışır ve yerel sistem de dahil olmak üzere bir sistemi kapatmak için WinRM ve WMI gerektirir.Restart-Computer
, Windows Yönetim Araçları (WMI) Win32_OperatingSystem sınıfının Win32Shutdown yöntemini kullanır. Bu yöntem, makineyi yeniden başlatmak için kullanılan kullanıcı hesabı için SeShutdownPrivilege ayrıcalığının etkinleştirilmesini gerektirir.
Windows PowerShell 2.0'da, uzak bilgisayarları yeniden başlatırken veya durdururken AsJob parametresi güvenilir bir şekilde çalışmaz. Windows PowerShell 3.0'da bu sorunu çözmek için uygulama değiştirilir.
İlişkili Bağlantılar
PowerShell
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin