Мне трудно понять постоянные соединения в PowerShell во время сеансов удаленного взаимодействия. Я создал постоянное соединение и создал переменную для проверки его срока службы:
$session = new-pssession server1
enter-pssession -session $session
$myvar = "abc"
Теперь я закрываю окно оболочки, чтобы имитировать сбой на моем компьютере или перезагрузку. Я открываю новую оболочку и пытаюсь установить соединение с server1
с участием:
get-pssession server1
Он оказывается пустым. Как мне вернуться к предыдущему сеансу?
Предположительно постоянные соединения предназначены для того, чтобы выдерживать отключение или сбой, и должны быть доступны с вашего компьютера или даже с другого компьютера, но я не могу заставить его работать. Что я делаю не так?
Все создаваемые вами сеансы работают в локальном сеансе Windows PowerShell, поэтому при закрытии Windows PowerShell все оставшиеся объекты сеанса автоматически отбрасываются. Объекты сеанса не предназначены для постоянного межсессионного взаимодействия.
Джим прав. В статье, которую вы связали, говорилось, что если вы потеряете подключение к сети, вы можете возобновить операцию, когда вернете ее. Постоянный в этом случае означает, что он сохраняет сеанс открытым после завершения команды. Без команды New-Session Powershell автоматически очищает соединения, когда они завершают свою задачу. Инструкции, которым вы следуете, предназначены для того, чтобы сеанс оставался открытым, пока вы используете свою оболочку.