Aracılığıyla paylaş


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-ComputerServer01 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-ComputerServer01'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 $Namesdepolanır. Get-Credential sizden bir kullanıcı adı ve parola ister ve değerlerini değişkeninde $Credsdepolar. 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-ComputerServer01'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-ComputerUzak 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-Computeriş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

String

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.