uzaktan_Bağlantısı_Kesilmiş_Oturumlar_Hakkında

Kısa açıklama

Bir PowerShell Oturumu'na (PSSession) bağlantıyı kesmeyi ve yeniden bağlanmayı açıklar.

Uzun açıklama

PowerShell 3.0'dan başlayarak, PSSession bağlantısını kesebilir ve PSSession'a aynı bilgisayardan veya farklı bir bilgisayardan yeniden bağlanabilirsiniz. Oturum durumu korunur ve oturum bağlantısı kesildiğinde PSSession'daki komutlar çalışmaya devam eder.

Bağlantısı Kesilmiş Oturumlar özelliği, PSSession'un oluşturulduğu oturumu kapatmanıza ve uzak PSSession'da çalışan komutları kesintiye uğratmadan bilgisayarı kapatmanıza olanak tanır. Bağlantısı kesilmiş oturumlar, tamamlanması uzun süren komutları çalıştırmak için kullanışlıdır.

Enter-PSSession cmdlet'ini kullanarak başlatılan etkileşimli oturum bağlantısını kesemezsiniz.

Bilgisayar veya ağ kesintisi nedeniyle yanlışlıkla bağlantısı kesilen PSSessions'ı yönetmek için bağlantısı kesilmiş oturumları kullanabilirsiniz.

Bağlantısı kesilmiş oturum cmdlet'leri

Aşağıdaki cmdlet'ler Bağlantısı Kesilmiş Oturumlar özelliğini destekler:

  • Connect-PSSession: Bağlantısı kesilmiş bir PSSession'a bağlanır.
  • Disconnect-PSSession: PSSession bağlantısını keser.
  • Get-PSSession: Yerel bilgisayarda veya uzak bilgisayarlarda PSSessions alır.
  • Receive-PSSession: Bağlantısız oturumlarda çalıştırılan komutların sonuçlarını alır.
  • Invoke-Command: InDisconnectedSession parametresi bir PSSession oluşturur ve bağlantıyı hemen keser.

Bağlantısı kesilmiş oturumlar özelliği nasıl çalışır?

PowerShell 3.0 sürümünden itibaren PSSessions, oluşturuldukları oturumlardan bağımsızdır. etkin PSSessions uzak bilgisayarda veya sunucu tarafıistemci tarafı bilgisayar ağ bağlantısı kesildiğinde bile korunur.

PowerShell 2.0'da PSSession, kaynak oturumla bağlantısı kesildiğinde veya oluşturulduğu oturum sona erdiğinde uzak bilgisayardan silinir.

PsSession bağlantısını kestiğiniz zaman, PSSession etkin kalır ve uzak bilgisayarda korunur. Oturum durumu Çalışan iken Bağlantısı Kesilmişolarak değişir. Bağlantısı kesilmiş bir PSSession'a şu bağlantıdan yeniden bağlanabilirsiniz:

  • Aynı bilgisayardaki mevcut oturum
  • Aynı bilgisayarda farklı bir oturum
  • Farklı bir bilgisayardaki oturumdan

Oturumu koruyan uzak bilgisayar çalışıyor olmalı ve ağa bağlı olmalıdır.

Bağlantısı kesilmiş bir PSSession'daki komutlar, komut tamamlanana veya çıkış arabelleği dolana kadar uzak bilgisayarda kesintisiz çalışmaya devam eder. Tam çıkış arabelleğinin bir komutu askıya almasını önlemek için, , Disconnect-PSSessionveya New-PSSessionOption cmdlet'lerinin New-PSTransportOption parametresini kullanın.

Bağlantısı kesilmiş oturumlar uzak bilgisayardaki bağlantısız durumda tutulur. PsSession'ı silene kadar (örneğin, Remove-PSSession cmdlet'ini kullanarak veya PSSession boşta kalma zaman aşımı süresi dolana kadar) yeniden bağlanabilirsiniz. , veya Disconnect-PSSession cmdlet'lerinin New-PSSessionOption veya New-PSTransportOption parametrelerini kullanarak PSSession'ın boşta kalma zaman aşımını ayarlayabilirsiniz.

Başka bir kullanıcı, oluşturduğunuz PS Oturumları'na bağlanabilir, ancak yalnızca oturumu oluşturmak için kullanılan kimlik bilgilerini sağlayabilirlerse veya oturum yapılandırmasının RunAs kimlik bilgilerini kullanırlarsa.

PSSessions'ı alma

PowerShell 3.0 itibaren, Get-PSSession cmdlet'i yerel ve uzak bilgisayarlardaki PSSession'ları alır. Geçerli oturumda oluşturulan PS Oturumlarını da alabilir.

Yerel bilgisayarda veya uzak bilgisayarlarda PSSessions almak için, ComputerName veya ConnectionUri parametrelerini kullanın. Parametreler olmadan, Get-PSSession, nerede sonlandıklarına bakılmaksızın yerel oturumda oluşturulan PSSession'ları alır.

Aşağıdaki örnekte Get-PSSessionnasıl kullanılacağı gösterilmektedir.

New-PSSession Server01 bilgisayarında bir oturum oluşturur. Oturum Server01 bilgisayarında bulunur.

New-PSSession -ComputerName Server01
Id Name      ComputerName  State    ConfigurationName     Availability
-- ----      ------------  -----    -----------------     ------------
 2 Session2  Server01      Opened   Microsoft.PowerShell     Available

Oturumu Server01'den almak için ComputerName parametresini kullanarak Get-PSSessionhedefini belirtin.

Get-PSSession -ComputerName Server01
Id Name      ComputerName  State    ConfigurationName     Availability
-- ----      ------------  -----    -----------------     ------------
 2 Session2  Server01      Opened   Microsoft.PowerShell     Available

Get-PSSession parametresinin değeri localhost ise, Get-PSSession yerel bilgisayarda sonlanıp yine yerel bilgisayarda tutulan PSSessions alır. Yerel bilgisayarda başlatılmış olsalar bile Server01 bilgisayarındaki PSSessions'ı elde edemez.

Get-PSSession -ComputerName localhost

Geçerli oturumda oluşturulan oturumları almak için parametresiz Get-PSSession cmdlet'ini kullanın. Bu örnekte, Get-PSSession geçerli oturumda oluşturulan ve Server01 bilgisayarına bağlanan PSSession'u alır.

Get-PSSession
Id Name      ComputerName  State    ConfigurationName     Availability
-- ----      ------------  -----    -----------------     ------------
 2 Session2  Server01      Opened   Microsoft.PowerShell     Available

Oturumların bağlantısını kesme

Oturumun bağlantısını kesmek için Disconnect-PSSession cmdlet'ini kullanın. PSSession'ı tanımlamak için Session parametresini kullanın veya New-PSSession veya Get-PSSession cmdlet'lerinden bir PSSession nesnesini Disconnect-PSSession'e yöneltin.

Aşağıdaki komut, PSSession ile Server01 bilgisayarının bağlantısını keser. Durum özelliğinin değerinin Bağlı Değil ve Kullanılabilirlik değerinin Hiçbiriolduğuna dikkat edin.

Get-PSSession -ComputerName Server01 | Disconnect-PSSession
Id Name      ComputerName  State         ConfigurationName     Availability
-- ----      ------------  -----         -----------------     ------------
 2 Session2  Server01      Disconnected  Microsoft.PowerShell          None

Bağlantısız oturum oluşturmak için cmdlet'in inDisconnectedSession Invoke-Command kullanın. Bir oturum oluşturur, komutu başlatır ve komut herhangi bir çıkış döndüremeden önce bağlantıyı hemen keser.

Aşağıdaki komut, Server02 uzak bilgisayarındaki bağlantısı kesilmiş bir oturumda bir Get-WinEvent komutu çalıştırır.

Invoke-Command -ComputerName Server02 -InDisconnectedSession -ScriptBlock {
   Get-WinEvent -LogName "*PowerShell*" }
Id Name      ComputerName  State         ConfigurationName     Availability
-- ----      ------------  -----         -----------------     ------------
 4 Session3  Server02      Disconnected  Microsoft.PowerShell          None

Bağlantısı kesilmiş oturumlara bağlanma

Bağlantısı kesilmiş bir oturumu bağlamak için, Connect-PSSession veya ConnectionUri parametreleriyle cmdlet'ini kullanın. Alternatif olarak, Get-PSSession çıkışını Connect-PSSession'a yöneltebilirsiniz.

Aşağıdaki örnek, Server02 adlı bilgisayardaki oturumları alır. Çıkış, bağlantısı kesilmiş iki oturum içerir.

Get-PSSession -ComputerName Server02
Id Name      ComputerName   State         ConfigurationName     Availability
-- ----      ------------   -----         -----------------     ------------
 2 Session2  juneb-srv8320  Disconnected  Microsoft.PowerShell          None
 4 Session3  juneb-srv8320  Disconnected  Microsoft.PowerShell          None

Aşağıdaki komut Session2'ye bağlanır. PSSession artık açık ve kullanılabilir.

Connect-PSSession -ComputerName Server02 -Name Session2
Id Name      ComputerName    State    ConfigurationName     Availability
-- ----      ------------    -----    -----------------     ------------
 2 Session2  juneb-srv8320   Opened   Microsoft.PowerShell     Available

Sonuçları alma

Bağlantısı kesilmiş bir PSSession'da çalıştırılan komutların sonuçlarını almak için Receive-PSSession cmdlet'ini kullanın.

Receive-PSSession cmdlet'ini kullanmak yerine Connect-PSSession kullanabilirsiniz. Oturum zaten yeniden bağlandıysa, Receive-PSSession oturumun bağlantısı kesildiğinde çalıştırılan komutların sonuçlarını alır. PSSession bağlantısı hala kesikse, Receive-PSSession ona bağlanır ve bağlantısı kesildiği sırada çalıştırılan komutların sonuçlarını alır.

Receive-PSSession sonuçları bir işlemde (eşzamanlı olmayan) veya konak programına (eşzamanlı) döndürebilir. OutTarget parametresini kullanarak İş veya Ana Bilgisayarseçin. Varsayılan değer Host'dir. Ancak, alınan komut geçerli oturumda İşolarak başlatıldıysa, varsayılan olarak İş olarak döndürülür.

Aşağıdaki örnek, Server02 oturumuna yeniden bağlanmak ve Receive-PSSession komutunun sonuçlarını almak için Get-WinEvent cmdlet'ini kullanır. Sonuçları almak için OutTarget parametresi İşindekullanılır.

Receive-PSSession -ComputerName Server02 -Name Session3 -OutTarget Job
Id   Name   PSJobTypeName   State         HasMoreData     Location
--   ----   -------------   -----         -----------     --------
 3   Job3   RemoteJob       Running       True            Server02

İşin sonuçlarını almak için Receive-Job cmdlet'ini kullanın.

Get-Job | Receive-Job -Keep
ProviderName: PowerShell

TimeCreated             Id LevelDisplayName Message     PSComputerName
-----------             -- ---------------- -------     --------------
5/14/2012 7:26:04 PM   400 Information      Engine stat Server02
5/14/2012 7:26:03 PM   600 Information      Provider "W Server02
5/14/2012 7:26:03 PM   600 Information      Provider "C Server02
5/14/2012 7:26:03 PM   600 Information      Provider "V Server02

Durum ve kullanılabilirlik özellikleri

Bağlantısı kesilmiş bir PSSession'un Durumu ve Kullanılabilirliği özellikleri, oturumun sizin için yeniden bağlanılabilir durumda olup olmadığını belirtir.

Bir PSSession geçerli oturuma bağlandığında, durumu Açık olur ve kullanılabilirlik durumu Kullanılabilirolur. PSSession bağlantısını kestiğiniz zaman, PSSession durumu Bağlantısı kesildi ve kullanılabilirliği Yok.

State özelliğinin değeri geçerli oturuma göredir. Bağlantısı Kesilmiş ifadesi, PSSession'un aktif oturum ile bağlantısının kesildiği anlamına gelir. Ancak bu, PSSession'un tüm oturumlarla bağlantısının kesildiğini göstermez. Farklı bir oturuma bağlı olabilir.

PSSession'a bağlanıp bağlanamayacağınızı veya yeniden bağlanabileceğinizi belirlemek için Kullanılabilirlik özelliğini kullanın. Hiçbiri değeri oturuma bağlanabileceğinizi gösterir. Meşgul değeri, başka bir oturuma bağlı olduğundan PSSession'a bağlanamadığınızı gösterir.

Aşağıdaki örnek, aynı bilgisayarda iki PowerShell oturumunda çalıştırılır. PSSession bağlantısı kesildiğinde ve tekrar bağlandığında, her oturumda Durumu ve Kullanılabilirlik özelliklerinin değişen değerlerini not edin.

# Session 1
New-PSSession -ComputerName Server30 -Name Test
Id Name   ComputerName    State         ConfigurationName     Availability
-- ----   ------------    -----         -----------------     ------------
1  Test   Server30        Opened        Microsoft.PowerShell     Available
# Session 2
Get-PSSession -ComputerName Server30 -Name Test
Id Name   ComputerName    State         ConfigurationName     Availability
-- ----   ------------    -----         -----------------     ------------
1 Test    Server30        Disconnected  Microsoft.PowerShell          Busy
# Session 1
Get-PSSession -ComputerName Server30 -Name Test | Disconnect-PSSession
Id Name   ComputerName    State         ConfigurationName     Availability
-- ----   ------------    -----         -----------------     ------------
1 Test    Server30        Disconnected  Microsoft.PowerShell          None
# Session 2
Get-PSSession -ComputerName Server30
Id Name   ComputerName    State         ConfigurationName     Availability
-- ----   ------------    -----         -----------------     ------------
1 Test    Server30        Disconnected  Microsoft.PowerShell          None
# Session 2
Connect-PSSession -ComputerName Server30 -Name Test
Id Name   ComputerName    State         ConfigurationName     Availability
-- ----   ------------    -----         -----------------     ------------
3 Test    Server30        Opened        Microsoft.PowerShell     Available
# Session 1
Get-PSSession -ComputerName Server30
Id Name   ComputerName    State         ConfigurationName     Availability
-- ----   ------------    -----         -----------------     ------------
1 Test    Server30        Disconnected  Microsoft.PowerShell          Busy

Bağlantısı kesilmiş oturumlar, siz silene kadar uzak bilgisayarda korunur, örneğin Remove-PSSession cmdlet'ini kullanarak veya zaman aşımına uğradıklarında. PSSession'un IdleTimeout özelliği, bağlantısı kesilmiş bir oturumun silinmeden önce ne kadar süre tutuleceğini belirler.

Boşta kalma zaman aşımı değerleri

sinyal iş parçacığı yanıt almadığında PSSession'lar etkin değil olur. Oturumun bağlantısının kesilmesi, oturumun boşta durumda kalmasına neden olur ve bağlantısı kesilmiş oturumda komutlar çalışmaya devam ediyor olsa bile IdleTimeout saati başlatır. PowerShell bağlantısı kesilmiş oturumları etkin ancak boşta olarak kabul eder.

Oturum oluştururken ve bağlantısını keserken, PSSession'daki boşta kalma zaman aşımının oturumunuzu ihtiyaçlarınıza göre sürdürecek kadar uzun olduğunu, ancak uzak bilgisayarda gereksiz kaynakları tüketecek kadar uzun olmadığını doğrulayın.

Oturum yapılandırmasının IdleTimeoutMs özelliği, oturum yapılandırmasını kullanan oturumların varsayılan boşta kalma zaman aşımını belirler. Varsayılan değeri geçersiz kılabilirsiniz, ancak bu değer oturum yapılandırmasının MaxIdleTimeoutMs özelliğini aşamaz.

Aşağıdaki komutu kullanarak bir oturum yapılandırması için IdleTimeoutMs ve MaxIdleTimeoutMs değerlerini alın.

Get-PSSessionConfiguration |
  Format-Table Name, IdleTimeoutMs, MaxIdleTimeoutMs

Uzak bilgisayardaki Yöneticiler grubunun üyesiyseniz, oturum yapılandırması oluştururken bu değerleri ayarlayabilirsiniz. Ayrıca, bağlantıyı kestiğiniz zaman değerleri değiştirebilirsiniz.

Oturum yapılandırmalarının ve oturum seçeneklerinin boşta kalma zaman aşımı değeri milisaniye cinsindendir. Oturumların ve oturum yapılandırma seçeneklerinin boşta kalma zaman aşımı değeri saniyeler içindedir.

PSSession oluşturduğunuzda (New-PSSession, Invoke-Command) ve bağlantısını kestiğiniz zaman (Disconnect-PSSession) PSSession'un boşta kalma zaman aşımını ayarlayabilirsiniz. Ancak, PSSession'a ( değerini değiştiremezsiniz.

Connect-PSSession ve Receive-PSSession cmdlet'leri, cmdlet'i tarafından döndürülen bir nesne gibi PSSessionOption nesnesini alan bir New-PSSessionOption parametresine sahiptir.

SessionOption nesnesindeki IdleTimeout değeri ve tercih değişkenindeki $PSSessionOption değeri, veya Connect-PSSession komuttaki Receive-PSSession değerini değiştirmez.

Belirli bir boşta kalma zaman aşımı değeriyle PSSession oluşturmak için bir $PSSessionOption tercih değişkeni oluşturun. IdleTimeout özelliğinin değerini istenen değere ayarlayın (milisaniye cinsinden).

PSSessions oluşturduğunuzda, $PSSessionOption değişkenindeki değerler oturum yapılandırmasındaki değerlerden önceliklidir.

Örneğin, aşağıdaki komut 48 saatlik boşta kalma zaman aşımını ayarlar:

$PSSessionOption = New-PSSessionOption -IdleTimeoutMSec 172800000

Belirli bir boşta kalma zaman aşımı değeriyle PSSession oluşturmak için, cmdlet'in New-PSSessionOption parametresini kullanın. Ardından, veya New-PSSession cmdlet'lerinin Invoke-Command parametresinin değerindeki oturum seçeneğini kullanın.

Oturumu oluştururken ayarlanan değerler, $PSSessionOption tercih değişkeninde ve oturum yapılandırmasında ayarlanan değerlerden önceliklidir.

Örneğin:

$o = New-PSSessionOption -IdleTimeoutMSec 172800000
New-PSSession -SessionOption $o

Bağlantıyı keserken PSSession'un boşta kalma zaman aşımını değiştirmek için cmdlet'in Disconnect-PSSession parametresini kullanın.

Örneğin:

Disconnect-PSSession -IdleTimeoutSec 172800

Belirli bir boşta kalma zaman aşımı ve maksimum boşta kalma zaman aşımı ile bir oturum yapılandırması oluşturmak için, cmdlet'in IdleTimeoutSec ve New-PSTransportOption parametrelerini kullanın. Ardından, parametresinin Register-PSSessionConfiguration değeri içindeki aktarım seçeneğini kullanın.

Örneğin:

$o = New-PSTransportOption -IdleTimeoutSec 172800 -MaxIdleTimeoutSec 259200
Register-PSSessionConfiguration -Name Test -TransportOption $o

Oturum yapılandırmasının varsayılan ve en fazla boşta kalma zaman aşımını değiştirmek için cmdlet'inin IdleTimeoutSec ve New-PSTransportOption parametrelerini kullanın. Ardından, parametresinin Set-PSSessionConfiguration değeri içindeki aktarım seçeneğini kullanın.

Örneğin:

$o = New-PSTransportOption -IdleTimeoutSec 172800 -MaxIdleTimeoutSec 259200
Set-PSSessionConfiguration -Name Test -TransportOption $o

Çıkış arabelleği oluşturma modu

PSSession'un çıkış arabelleğe alma modu, PSSession'un çıkış arabelleği dolduğunda komut çıkışının nasıl yönetileceğini belirler.

Bağlantısı kesilmiş bir oturumda çıkış arabelleği modu, oturumun bağlantısı kesildiğinde komutun çalışmaya devam edip etmeyeceğini etkili bir şekilde belirler.

Geçerli değerler aşağıdaki gibi:

  • Block (varsayılan) - Çıkış arabelleği dolduğunda, arabellek temizlenene kadar yürütme askıya alınır. Block verileri korur, ancak komutu kesintiye uğratabilir.
  • Drop - Çıkış arabelleği dolduğunda yürütme devam eder. Yeni çıkış oluşturulurken en eski çıkış atılır. Drop değerini kullanırken çıkışı bir dosyaya yeniden yönlendirin. Bu değer bağlantısız oturumlar için önerilir.

Oturum yapılandırmasının OutputBufferingMode özelliği, oturum yapılandırmasını kullanan oturumların varsayılan arabelleğe alma modunu belirler.

Oturum yapılandırmasının OutputBufferingMode değerini bulmak için aşağıdaki komut biçimlerinden birini kullanabilirsiniz:

(Get-PSSessionConfiguration <ConfigurationName>).OutputBufferingMode
Get-PSSessionConfiguration | Format-Table Name, OutputBufferingMode

Oturum yapılandırmasında varsayılan değeri geçersiz kılabilir ve PSSession oluştururken, bağlantıyı kestiğinizde ve yeniden bağlandığınızda PSSession'un çıkış arabelleğe alma modunu ayarlayabilirsiniz.

Uzak bilgisayardaki Yöneticiler grubunun üyesiyseniz oturum yapılandırmalarının çıkış arabelleğe alma modunu oluşturabilir ve değiştirebilirsiniz.

Dropçıkış arabelleğe alma modunu kullanarak bir PSSession oluşturmak için, değeri $PSSessionOptionolan OutputBufferingMode özelliğine sahip bir Drop tercih değişkeni oluşturun.

PSSessions oluşturduğunuzda, $PSSessionOption değişkenindeki değerler oturum yapılandırmasındaki değerlerden önceliklidir.

Örneğin:

$PSSessionOption = New-PSSessionOption -OutputBufferingMode Drop

değerine sahip bir oturum seçeneği oluşturmak için New-PSSessionOption cmdlet'in Drop parametresini kullanın. Ardından, veya cmdlet'lerinin New-PSSession parametresinin değeri olarak Invoke-Command nesnesini kullanın.

Oturumu oluştururken ayarlanan değerler, $PSSessionOption tercih değişkeninde ve oturum yapılandırmasında ayarlanan değerlerden önceliklidir.

Örneğin:

$o = New-PSSessionOption -OutputBufferingMode Drop
New-PSSession -SessionOption $o

Bağlantıyı keserken bir PSSession'ın çıkış arabelleği modunu değiştirmek için, cmdlet'inin Disconnect-PSSession parametresini kullanın.

Örneğin:

Disconnect-PSSession -OutputBufferingMode Drop

Yeniden bağlanırken PSSession'un çıkış arabelleği modunu değiştirmek için cmdlet'in New-PSSessionOption parametresini kullanın. Ardından veya Connect-PSSessionparametresinin Receive-PSSession değerindeki oturum seçeneğini kullanın.

Örneğin:

$o = New-PSSessionOption -OutputBufferingMode Drop
Connect-PSSession -ComputerName Server01 -Name Test -SessionOption $o

varsayılan çıkış arabelleğe alma modu Dropolan bir oturum yapılandırması oluşturmak için, cmdlet'in New-PSTransportOption parametresini kullanarak Dropdeğerine sahip bir aktarım seçeneği nesnesi oluşturun. Ardından, parametresinin Register-PSSessionConfiguration değeri içindeki aktarım seçeneğini kullanın.

Örneğin:

$o = New-PSTransportOption -OutputBufferingMode Drop
Register-PSSessionConfiguration -Name Test -TransportOption $o

Oturum yapılandırmasının varsayılan çıkış arabelleğe alma modunu değiştirmek için, cmdlet'in New-PSTransportOption parametresini kullanarak Dropdeğerine sahip bir aktarım seçeneği oluşturun. Ardından, Set-PSSessionConfiguration parametresinin değerindeki Aktarım seçeneğini kullanın.

Örneğin:

$o = New-PSTransportOption -OutputBufferingMode Drop
Set-PSSessionConfiguration -Name Test -TransportOption $o

Geri döngü oturumlarının bağlantısını kesme

Aynı bilgisayarda başlayan ve biten PSSession'lar, geri döngü oturumları veya yerel oturumlar olarak adlandırılır. Diğer PSSessions gibi, etkin geri döngü oturumları da bağlantının uzak ucundaki (yerel bilgisayar) bilgisayarda tutulur, böylece geri döngü oturumlarının bağlantısını kesebilir ve yeniden bağlanabilirsiniz.

Varsayılan olarak geri döngü oturumları, oturumda çalıştırılan komutların diğer bilgisayarlara erişmesine izin vermeyen bir ağ güvenlik belirteci ile oluşturulur. Yerel bilgisayardaki veya uzak bilgisayardaki herhangi bir oturumdan ağ güvenlik belirtecine sahip geri döngü oturumlarına yeniden bağlanabilirsiniz.

Ancak, , New-PSSessionveya Enter-PSSession cmdlet'in Invoke-Command parametresini kullanırsanız, geri döngü oturumu etkileşimli bir güvenlik belirteci ile oluşturulur. Etkileşimli belirteç, geri döngü oturumunda çalışan komutların diğer bilgisayarlardan veri almasına olanak tanır.

Geri döngü oturumlarının bağlantısını etkileşimli belirteçlerle kesebilir ve sonra bunlara aynı oturumdan veya aynı bilgisayardaki farklı bir oturumdan yeniden bağlanabilirsiniz. Ancak, kötü amaçlı erişimi önlemek için, yalnızca oluşturuldukları bilgisayardan etkileşimli belirteçlerle geri döngü oturumlarına yeniden bağlanabilirsiniz.

Bağlantısız oturumlarda işler bekleniyor

Wait-Job cmdlet'i bir iş tamamlanana kadar bekler ve ardından komut istemine veya bir sonraki komuta geri döner. Varsayılan olarak, bir işin çalıştığı oturumun bağlantısı kesilirse Wait-Job döndürür. Wait-Job cmdlet'ini oturum yeniden bağlanana kadar beklemeye yönlendirmek için, Açık durumunda Zorla parametresini kullanın. Daha fazla bilgi için bkz. Wait-Job.

Sağlam oturumlar ve kasıtsız bağlantı kesilmesi

PsSession bilgisayar hatası veya ağ kesintisi nedeniyle istemeden kesilebilir. PowerShell, PSSession'ı kurtarmaya çalışır, ancak başarısı, sorunun ciddiyetine ve süresine bağlıdır.

İstemeden bağlantısı kesilmiş bir pssession durumu, bozuk veya kapalı olabilir ancak bağlantısı kesilmiş de olabilir. Durumu değeri Bağlantısı Kesildiise, oturumun bağlantısı kasıtlı olarak kesildiğinde olduğu gibi PSSession'ı yönetmek için aynı teknikleri kullanabilirsiniz. Örneğin, oturuma yeniden bağlanmak için Connect-PSSession cmdlet'ini ve oturumun bağlantısı kesildiğinde çalıştırılan komutların sonuçlarını almak için Receive-PSSession cmdlet'ini kullanabilirsiniz.

Komutlar PSSession'da çalışıyorken PSSession'un oluşturulduğu oturumu kapatırsanız (çıkış yaparsanız), PowerShell bu PSSession'ı uzak bilgisayarda Bağlantısı Kesilmiş durumunda tutar. PSSession'un oluşturulduğu oturumu kapatırsanız (çıkış yaparsanız), ancak PSSession'da hiçbir komut çalışmazsa, PowerShell PSSession'un bakımını yapmaya çalışmaz.

Ayrıca bakınız