Как установить оболочку WSL bash по умолчанию для SSH-подключения с компьютера под управлением Windows 10 на другой компьютер под управлением Windows 10 (ВМ)?

Как установить оболочку WSL bash по умолчанию для SSH-подключения с компьютера под управлением Windows 10 на другой компьютер под управлением Windows 10 (ВМ)?

Я подключаюсь по SSH к виртуальной машине в командной строке Windows и WSL bash. Однако каждый раз, когда я подключаюсь по SSH к виртуальной машине Windows 10 (с моей локальной машины Windows 10), в качестве оболочки открывается командная строка Windows по умолчанию. Я хотел бы, чтобы при использовании SSH в командной строке Windows и WSL bash (на моей локальной машине) открывался WSL bash. На моей локальной и виртуальной машинах установлен WSL.

Я пробовал: New-ItemProperty -Path "HKLM:\SOFTWARE\OpenSSH" -Name DefaultShell -Value "C:\Windows\System32\bash.exe" -PropertyType String -Forceна Windows Powershell, запущенном как администратор, но это не работает. Все, что я получаю обратно, это это, но без изменений:

DefaultShell : C:\Windows\System32\bash.exe
PSPath       : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SOFTWARE\OpenSSH
PSParentPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SOFTWARE
PSChildName  : OpenSSH
PSDrive      : HKLM
PSProvider   : Microsoft.PowerShell.Core\Registry

ОБНОВЛЕНИЕ: Я могу изменить оболочку после того, как подключусь по SSH к виртуальной машине Windows 10, запустив ее bash.exeиз C:\Windows\System32. Однако она по-прежнему запускается как командная строка Windows по умолчанию при первом подключении по SSH.

решение1

Вам необходимо использовать ту же команду:

New-ItemProperty -Path "HKLM:\SOFTWARE\OpenSSH" -Name DefaultShell -Value "C:\Windows\System32\bash.exe" -PropertyType String -Force

на виртуальной машине под управлением Windows 10.

Связанный контент