about_Remote_Disconnected_Sessions
간단한 설명
PowerShell 세션(PSSession)의 연결을 끊고 다시 연결하는 방법을 설명합니다.
자세한 설명
PowerShell 3.0부터 PSSession에서 연결을 끊고 동일한 컴퓨터 또는 다른 컴퓨터에서 PSSession에 다시 연결할 수 있습니다. 세션 상태가 기본 상태이며 세션 연결이 끊어지는 동안 PSSession의 명령이 계속 실행됩니다.
연결이 끊긴 세션 기능을 사용하면 PSSession이 만들어진 세션을 닫고 원격 PSSession에서 실행되는 명령을 방해하지 않고 컴퓨터를 종료할 수 있습니다. 연결이 끊긴 세션은 완료하는 데 시간이 오래 걸리는 명령을 실행하는 데 유용합니다.
cmdlet을 사용하여 시작된 대화형 세션에서 연결을 끊을 Enter-PSSession
수 없습니다.
연결이 끊긴 세션을 사용하여 컴퓨터 또는 네트워크 중단으로 인해 의도치 않게 연결이 끊긴 PSSessions를 관리할 수 있습니다.
연결이 끊긴 세션 cmdlet
다음 cmdlet은 연결이 끊긴 세션 기능을 지원합니다.
Connect-PSSession
: 연결이 끊긴 PSSession에 커넥트.Disconnect-PSSession
: PSSession의 연결을 끊습니다.Get-PSSession
: 로컬 컴퓨터 또는 원격 컴퓨터에서 PSSessions를 가져옵니다.Receive-PSSession
: 연결이 끊긴 세션에서 실행된 명령의 결과를 가져옵니다.Invoke-Command
: InDisconnectedSession 매개 변수는 PSSession을 만들고 즉시 연결을 끊습니다.
연결이 끊긴 세션 기능의 작동 방식
PowerShell 3.0부터 PSSessions는 생성된 세션과 독립적입니다. 클라이언트 쪽 컴퓨터가 종료되거나 네트워크에서 연결이 끊긴 경우에도 활성 PSSessions는 연결의 원격 컴퓨터 또는 서버 쪽에 기본.
PowerShell 2.0에서 PSSession은 원래 세션 또는 생성된 세션의 연결이 끊어지면 원격 컴퓨터에서 삭제됩니다.
PSSession의 연결을 끊으면 PSSession이 다시 활성화되고 원격 컴퓨터에서 기본 기본. 세션 상태가 실행 중에서 연결 끊김으로 변경됩니다. 연결이 끊긴 PSSession에 다시 연결할 수 있습니다.
- 동일한 컴퓨터의 현재 세션
- 동일한 컴퓨터의 다른 세션
- 다른 컴퓨터의 세션에서
세션이 기본 원격 컴퓨터가 실행 중이고 네트워크에 연결되어야 합니다.
연결이 끊긴 PSSession의 명령은 명령이 완료되거나 출력 버퍼가 채워질 때까지 원격 컴퓨터에서 중단 없이 계속 실행됩니다. 전체 출력 버퍼가 명령을 일시 중단하지 않도록 하려면 , 또는 New-PSTransportOption
cmdlet의 Disconnect-PSSession
OutputBufferingMode 매개 변수를 사용합니다New-PSSessionOption
.
연결이 끊긴 세션은 원격 컴퓨터에서 연결이 끊긴 상태에서 기본. cmdlet을 사용 Remove-PSSession
하거나 PSSession의 유휴 시간 제한이 만료될 때까지 PSSession을 삭제할 때까지 다시 연결할 수 있습니다. 또는 cmdlet의 IdleTimeoutSec 또는 IdleTimeout 매개 변수를 사용하여 PSSession의 Disconnect-PSSession
New-PSTransportOption
New-PSSessionOption
유휴 시간 제한을 조정할 수 있습니다.
다른 사용자는 사용자가 만든 PSSessions에 연결할 수 있지만 세션을 만드는 데 사용된 자격 증명을 제공하거나 세션 구성의 자격 증명을 사용할 RunAs
수 있는 경우에만 연결할 수 있습니다.
PSSessions를 가져오는 방법
PowerShell 3.0 Get-PSSession
부터 cmdlet은 로컬 컴퓨터 및 원격 컴퓨터에서 PSSessions를 가져옵니다. 또한 현재 세션에서 만든 PSSessions를 가져올 수도 있습니다.
로컬 컴퓨터 또는 원격 컴퓨터에서 PSSessions를 얻으려면 ComputerName 또는 커넥트ionUri 매개 변수를 사용합니다. 매개 변수 Get-PSSession
가 없으면 종료 위치에 관계없이 로컬 세션에서 만든 PSSession을 가져옵니다.
다음 예제에서는 Get-PSSession
를 사용하는 방법을 보여 줍니다.
New-PSSession
는 Server01 컴퓨터에 대한 세션을 만듭니다. 세션은 Server01 컴퓨터에 상주합니다.
New-PSSession -ComputerName Server01
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
2 Session2 Server01 Opened Microsoft.PowerShell Available
Server01에서 세션을 얻으려면 ComputerName 매개 변수를 사용하여 대상Get-PSSession
을 지정합니다.
Get-PSSession -ComputerName Server01
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
2 Session2 Server01 Opened Microsoft.PowerShell Available
ComputerName 매개 변수의 Get-PSSession
값이 localhost Get-PSSession
이면 로컬 컴퓨터에서 종료되고 기본 표시되는 PSSessions를 가져옵니다. 로컬 컴퓨터에서 시작된 경우에도 Server01 컴퓨터에서 PSSessions를 가져올 수 없습니다.
Get-PSSession -ComputerName localhost
현재 세션에서 만든 세션을 얻으려면 매개 변수 없이 cmdlet을 Get-PSSession
사용합니다. 이 예제 Get-PSSession
에서는 현재 세션에서 만든 PSSession을 가져오고 Server01 컴퓨터에 연결합니다.
Get-PSSession
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
2 Session2 Server01 Opened Microsoft.PowerShell Available
세션 연결을 끊는 방법
cmdlet을 Disconnect-PSSession
사용하여 세션 연결을 끊습니다. PSSession을 식별하려면 Session 매개 변수를 사용하거나 PSSession 개체를 또는 Get-PSSession
cmdlet에서 New-PSSession
.로 파이프합니다Disconnect-PSSession
.
다음 명령은 Server01 컴퓨터에 대한 PSSession의 연결을 끊습니다. State 속성의 값은 연결이 끊어지고 가용성은 None입니다.
Get-PSSession -ComputerName Server01 | Disconnect-PSSession
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
2 Session2 Server01 Disconnected Microsoft.PowerShell None
연결이 끊긴 세션을 만들려면 cmdlet의 InDisconnectedSession 매개 변수를 Invoke-Command
사용합니다. 세션을 만들고, 명령을 시작하고, 명령이 출력을 반환하기 전에 즉시 연결을 끊습니다.
다음 명령은 원격 컴퓨터 Server02의 연결이 끊긴 세션에서 명령을 실행 Get-WinEvent
합니다.
Invoke-Command -ComputerName Server02 -InDisconnectedSession -ScriptBlock {
Get-WinEvent -LogName "*PowerShell*" }
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
4 Session3 Server02 Disconnected Microsoft.PowerShell None
연결이 끊긴 세션에 연결하는 방법
연결이 끊긴 세션을 연결하려면 ComputerName 또는 커넥트ionUri 매개 변수와 함께 cmdlet을 사용합니다Connect-PSSession
. 또는 출력 Get-PSSession
을 .로 파이프할 Connect-PSSession
수 있습니다.
다음 예제에서는 Server02 컴퓨터에서 세션을 가져옵니다. 출력에는 두 개의 연결이 끊어진 세션이 포함됩니다.
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
다음 명령은 Session2에 연결합니다. 이제 PSSession이 열려 있으며 사용할 수 있습니다.
Connect-PSSession -ComputerName Server02 -Name Session2
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
2 Session2 juneb-srv8320 Opened Microsoft.PowerShell Available
결과를 가져오는 방법
연결이 끊긴 PSSession에서 실행된 명령의 결과를 얻으려면 cmdlet을 Receive-PSSession
사용합니다.
cmdlet을 사용하는 Connect-PSSession
대신 사용할 Receive-PSSession
수 있습니다. 세션이 이미 다시 연결된 Receive-PSSession
경우 세션 연결이 끊어졌을 때 실행된 명령의 결과를 가져옵니다. PSSession의 연결이 끊긴 Receive-PSSession
경우 연결이 끊긴 상태에서 실행된 명령의 결과를 가져옵니다.
Receive-PSSession
는 작업을 비동기적으로 또는 호스트 프로그램(동기적으로)에 결과를 반환할 수 있습니다. OutTarget 매개 변수를 사용하여 작업 또는 호스트를 선택합니다. 기본값은 Host입니다. 그러나 수신 중인 명령이 현재 세션에서 작업으로 시작된 경우 기본적으로 작업으로 반환됩니다.
다음 예제에서는 cmdlet을 Receive-PSSession
사용하여 Server02의 세션에 다시 연결하고 명령의 Get-WinEvent
결과를 가져옵니다. OutTarget 매개 변수는 작업에서 결과를 가져오는 데 사용됩니다.
Receive-PSSession -ComputerName Server02 -Name Session3 -OutTarget Job
Id Name PSJobTypeName State HasMoreData Location
-- ---- ------------- ----- ----------- --------
3 Job3 RemoteJob Running True Server02
작업의 결과를 얻으려면 cmdlet을 Receive-Job
사용합니다.
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
상태 및 가용성 속성
연결이 끊긴 PSSession의 상태 및 가용성 속성은 세션을 다시 연결할 수 있는지 여부를 알려줍니다.
PSSession이 현재 세션에 연결되면 해당 상태가 열리 고 가용성이 제공됩니다. PSSession에서 연결을 끊으면 PSSession 상태가 연결이 끊어지고 가용성이 None입니다.
State 속성의 값은 현재 세션을 기준으로 합니다. 연결 끊김 값은 PSSession이 현재 세션에 연결되지 않음을 의미합니다. 그러나 PSSession이 모든 세션에서 연결이 끊어지는 것은 아닙니다. 다른 세션에 연결되어 있을 수도 있습니다.
PSSession에 연결하거나 다시 연결할 수 있는지 여부를 확인하려면 가용성 속성을 사용합니다. None 값은 세션에 연결할 수 있음을 나타냅니다. 사용 중 값은 PSSession이 다른 세션에 연결되어 있으므로 연결할 수 없음을 나타냅니다.
다음 예제는 동일한 컴퓨터의 두 PowerShell 세션에서 실행됩니다. PSSession의 연결이 끊어지고 다시 연결되면 각 세션에서 상태 및 가용성 속성의 값이 변경됩니다.
# 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
연결이 끊긴 세션은 cmdlet을 사용하는 Remove-PSSession
것과 같이 삭제할 때까지 원격 컴퓨터에서 기본 유지되거나 시간이 초과됩니다. PSSession의 IdleTimeout 속성은 연결이 끊긴 세션이 삭제되기 전에 기본 도달하는 기간을 결정합니다.
유휴 시간 제한 값
하트비트 스레드가 응답을 받지 못하는 경우 PSSessions는 유휴 상태입니다. 세션 연결을 끊으면 연결이 끊긴 세션에서 명령이 계속 실행되더라도 유휴 상태가 되며 IdleTimeout 시계가 시작됩니다. PowerShell은 연결이 끊긴 세션을 활성 상태이지만 유휴 상태로 간주합니다.
세션을 만들고 연결을 끊을 때 PSSession의 유휴 시간 제한이 사용자의 요구에 맞게 세션을 기본 충분히 길지만 원격 컴퓨터에서 불필요한 리소스를 소비하는 데는 그리 길지 않은지 확인합니다.
세션 구성의 IdleTimeoutMs 속성은 세션 구성을 사용하는 세션의 기본 유휴 시간 제한을 결정합니다. 기본값을 재정의할 수 있지만 해당 값은 세션 구성의 MaxIdleTimeoutMs 속성을 초과할 수 없습니다.
다음 명령을 사용하여 세션 구성에 대한 IdleTimeoutMs 및 MaxIdleTimeoutMs 값을 가져옵니다.
Get-PSSessionConfiguration |
Format-Table Name, IdleTimeoutMs, MaxIdleTimeoutMs
원격 컴퓨터에서 관리istrators 그룹의 멤버인 경우 세션 구성을 만들 때 이러한 값을 설정할 수 있습니다. 또한 연결을 끊을 때 값을 변경할 수 있습니다.
세션 구성 및 세션 옵션의 유휴 시간 제한 값은 밀리초 단위입니다. 세션 및 세션 구성 옵션의 유휴 시간 제한 값은 초 단위입니다.
PSSession을 만들 때와 PSSession(New-PSSession
Invoke-Command
)에서 연결을 끊을 때 PSSession의 유휴 시간 제한을 설정할 수 있습니다Disconnect-PSSession
. 그러나 PSSession()에 연결하거나 결과Receive-PSSession
(Connect-PSSession
)를 가져올 때는 IdleTimeout 값을 변경할 수 없습니다.
및 Receive-PSSession
cmdlet에는 Connect-PSSession
cmdlet에서 반환하는 것과 같은 PSSessionOption 개체를 사용하는 SessionOption 매개 변수가 New-PSSessionOption
있습니다.
SessionOption 개체의 IdleTimeout 값과 기본 설정 변수의 IdleTimeout 값 $PSSessionOption
은 또는 Receive-PSSession
명령에서 IdleTimeoutConnect-PSSession
의 값을 변경하지 않습니다.
특정 유휴 시간 제한 값을 사용하여 PSSession을 만들려면 기본 설정 변수를 $PSSessionOption
만듭니다. IdleTimeout 속성의 값을 원하는 값(밀리초)으로 설정합니다.
PSSessions를 만들 때 변수의 값 $PSSessionOption
이 세션 구성의 값보다 우선합니다.
예를 들어 다음 명령은 유휴 시간 제한을 48시간으로 설정합니다.
$PSSessionOption = New-PSSessionOption -IdleTimeoutMSec 172800000
특정 유휴 시간 제한 값을 사용하여 PSSession을 만들려면 cmdlet의 IdleTimeoutMSec 매개 변수를 New-PSSessionOption
사용합니다. 그런 다음, or cmdlet의 SessionOption 매개 변수 값에 New-PSSession
세션 옵션을 사용합니다.Invoke-Command
세션을 만들 때 설정된 값이 기본 설정 변수 및 세션 구성에 $PSSessionOption
설정된 값보다 우선합니다.
예시:
$o = New-PSSessionOption -IdleTimeoutMSec 172800000
New-PSSession -SessionOption $o
연결을 끊을 때 PSSession의 유휴 시간 제한을 변경하려면 cmdlet의 IdleTimeoutSec 매개 변수를 Disconnect-PSSession
사용합니다.
예시:
Disconnect-PSSession -IdleTimeoutSec 172800
특정 유휴 시간 제한 및 최대 유휴 시간 제한을 사용하여 세션 구성을 만들려면 cmdlet의 IdleTimeoutSec 및 MaxIdleTimeoutSec 매개 변수를 New-PSTransportOption
사용합니다. 그런 다음 TransportOption 매개 변수Register-PSSessionConfiguration
의 값에서 전송 옵션을 사용합니다.
예시:
$o = New-PSTransportOption -IdleTimeoutSec 172800 -MaxIdleTimeoutSec 259200
Register-PSSessionConfiguration -Name Test -TransportOption $o
세션 구성의 기본 유휴 시간 제한 및 최대 유휴 시간 제한을 변경하려면 cmdlet의 IdleTimeoutSec 및 MaxIdleTimeoutSec 매개 변수를 New-PSTransportOption
사용합니다. 그런 다음 TransportOption 매개 변수Set-PSSessionConfiguration
의 값에서 전송 옵션을 사용합니다.
예시:
$o = New-PSTransportOption -IdleTimeoutSec 172800 -MaxIdleTimeoutSec 259200
Set-PSSessionConfiguration -Name Test -TransportOption $o
출력 버퍼링 모드
PSSession의 출력 버퍼링 모드는 PSSession의 출력 버퍼가 가득 찼을 때 명령 출력을 관리하는 방법을 결정합니다.
연결이 끊긴 세션에서 출력 버퍼링 모드는 세션 연결이 끊긴 동안 명령이 계속 실행되는지 여부를 효과적으로 결정합니다.
다음과 같은 유효한 값입니다.
Block
(기본값) - 출력 버퍼가 가득 차면 버퍼가 명확할 때까지 실행이 일시 중단됩니다.Block
는 데이터를 유지하지만 명령을 중단할 수 있습니다.Drop
- 출력 버퍼가 가득 차면 실행이 계속됩니다. 새 출력이 생성되면 가장 오래된 출력은 dis카드ed입니다. 값을 사용하는Drop
경우 출력을 파일로 리디렉션합니다. 이 값은 연결이 끊긴 세션에 권장됩니다.
세션 구성의 OutputBufferingMode 속성은 세션 구성을 사용하는 세션의 기본 버퍼링 모드를 결정합니다.
OutputBufferingMode의 세션 구성 값을 찾으려면 다음 명령 형식 중 하나를 사용할 수 있습니다.
(Get-PSSessionConfiguration <ConfigurationName>).OutputBufferingMode
Get-PSSessionConfiguration | Format-Table Name, OutputBufferingMode
PSSession을 만들 때, 연결을 끊을 때 및 다시 연결할 때 세션 구성에서 기본값을 재정의하고 PSSession의 출력 버퍼링 모드를 설정할 수 있습니다.
원격 컴퓨터에서 관리istrators 그룹의 멤버인 경우 세션 구성의 출력 버퍼링 모드를 만들고 변경할 수 있습니다.
출력 버퍼링 모드Drop
를 사용하여 PSSession을 만들려면 OutputBufferingMode 속성의 값이 있는 기본 설정 변수를 만듭니 $PSSessionOption
다Drop
.
PSSessions를 만들 때 변수의 값 $PSSessionOption
이 세션 구성의 값보다 우선합니다.
예시:
$PSSessionOption = New-PSSessionOption -OutputBufferingMode Drop
cmdlet의 New-PSSessionOption
OutputBufferingMode 매개 변수를 사용하여 값Drop
이 .인 세션 옵션을 만듭니다. 그런 다음 PSSessionOption 개체를 or Invoke-Command
cmdlet의 SessionOption 매개 변수 New-PSSession
값으로 사용합니다.
세션을 만들 때 설정된 값이 기본 설정 변수 및 세션 구성에 $PSSessionOption
설정된 값보다 우선합니다.
예시:
$o = New-PSSessionOption -OutputBufferingMode Drop
New-PSSession -SessionOption $o
연결을 끊을 때 PSSession의 출력 버퍼링 모드를 변경하려면 cmdlet의 OutputBufferingMode 매개 변수를 Disconnect-PSSession
사용합니다.
예시:
Disconnect-PSSession -OutputBufferingMode Drop
다시 연결할 때 PSSession의 출력 버퍼링 모드를 변경하려면 cmdlet의 OutputBufferingMode 매개 변수를 New-PSSessionOption
사용합니다. 그런 다음 SessionOption 매개 변수 Receive-PSSession
Connect-PSSession
의 값에서 세션 옵션을 사용합니다.
예시:
$o = New-PSSessionOption -OutputBufferingMode Drop
Connect-PSSession -ComputerName Server01 -Name Test -SessionOption $o
기본 출력 버퍼링 모드로 세션 구성을 만들려면 cmdlet의 Drop
New-PSTransportOption
OutputBufferingMode 매개 변수를 사용하여 값Drop
이 있는 전송 옵션 개체를 만듭니다. 그런 다음 TransportOption 매개 변수Register-PSSessionConfiguration
의 값에서 전송 옵션을 사용합니다.
예시:
$o = New-PSTransportOption -OutputBufferingMode Drop
Register-PSSessionConfiguration -Name Test -TransportOption $o
세션 구성의 기본 출력 버퍼링 모드를 변경하려면 cmdlet의 New-PSTransportOption
OutputBufferingMode 매개 변수를 사용하여 값Drop
이 있는 전송 옵션을 만듭니다. 그런 다음 SessionOption 매개 변수Set-PSSessionConfiguration
의 값에서 전송 옵션을 사용합니다.
예시:
$o = New-PSTransportOption -OutputBufferingMode Drop
Set-PSSessionConfiguration -Name Test -TransportOption $o
루프백 세션 연결 끊기
루프백 세션 또는 로컬 세션은 동일한 컴퓨터에서 시작되고 종료되는 PSSessions입니다. 다른 PSSessions와 마찬가지로 활성 루프백 세션은 연결의 원격 끝(로컬 컴퓨터)에 있는 컴퓨터에서 기본 유지되므로 연결을 끊고 루프백 세션에 다시 연결할 수 있습니다.
기본적으로 루프백 세션은 다른 컴퓨터에 액세스하기 위해 세션에서 명령을 실행하는 것을 허용하지 않는 네트워크 보안 토큰으로 만들어집니다. 로컬 컴퓨터 또는 원격 컴퓨터의 모든 세션에서 네트워크 보안 토큰이 있는 루프백 세션에 다시 연결할 수 있습니다.
그러나 , Enter-PSSession
또는 Invoke-Command
cmdlet의 New-PSSession
EnableNetworkAccess 매개 변수를 사용하는 경우 루프백 세션은 대화형 보안 토큰으로 만들어집니다. 대화형 토큰을 사용하면 루프백 세션에서 실행되는 명령이 다른 컴퓨터에서 데이터를 가져올 수 있습니다.
대화형 토큰을 사용하여 루프백 세션의 연결을 끊은 다음 동일한 세션 또는 동일한 컴퓨터의 다른 세션에서 다시 연결할 수 있습니다. 그러나 악의적인 액세스를 방지하기 위해 생성된 컴퓨터에서만 대화형 토큰을 사용하여 루프백 세션에 다시 연결할 수 있습니다.
연결이 끊긴 세션에서 작업 대기
cmdlet은 Wait-Job
작업이 완료될 때까지 기다린 다음 명령 프롬프트 또는 다음 명령으로 돌아갑니다. 기본적으로 Wait-Job
작업이 실행 중인 세션의 연결이 끊어지는 경우 반환합니다. 세션이 Wait-Job
다시 연결될 때까지 대기하도록 cmdlet에 지시하려면 Opened 상태에서 Force 매개 변수를 사용합니다. 자세한 내용은 Wait-Job을 참조 하세요.
강력한 세션 및 의도하지 않은 연결 끊김
컴퓨터 오류 또는 네트워크 중단으로 인해 PSSession의 연결이 의도치 않게 끊어질 수 있습니다. PowerShell은 PSSession을 복구하려고 시도하지만 성공 횟수는 원인의 심각도 및 기간에 따라 달라집니다.
의도치 않게 연결이 끊어진 PSSession의 상태는 끊어지거나 닫혀 있을 수 있지만 연결이 끊어질 수도 있습니다. 상태 값이 연결이 끊어진 경우 세션의 연결이 의도적으로 끊어진 경우와 동일한 기술을 사용하여 PSSession을 관리할 수 있습니다. 예를 들어 cmdlet을 Connect-PSSession
사용하여 세션 및 Receive-PSSession
cmdlet에 다시 연결하여 세션 연결이 끊긴 동안 실행된 명령의 결과를 가져올 수 있습니다.
PSSession에서 명령이 실행되는 동안 PSSession이 만들어진 세션을 닫고 종료하면 PowerShell은 원격 컴퓨터의 연결이 끊어진 상태에서 PSSession을 기본. PSSession이 만들어진 세션을 닫고 종료하지만 PSSession에서 실행 중인 명령이 없는 경우 PowerShell은 PSSession을 기본 확인하려고 시도하지 않습니다.
참고 항목
PowerShell
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기