sshd doesn’t start on Windows 10? 64bit 1909(I installed built-in openssh). Powershell output:
PS C:Windowssystem32> Get-WindowsCapability -Online | ? Name -like ‘OpenSSH*’
Name : OpenSSH.Client~~~~0.0.1.0
State : Installed
Name : OpenSSH.Server~~~~0.0.1.0
State : NotPresent
PS C:Windowssystem32> Start-Service sshd
PS C:Windowssystem32> sshd
sshd : Имя «sshd» не распознано как имя командлета, функции, файла сценария или выполняемой
программы. Проверьте правильность написания имени, а также наличие и правильность пути, посл
е чего повторите попытку.
строка:1 знак:1
+ sshd
+ ~~~~
+ CategoryInfo : ObjectNotFound: (sshd:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
PS C:Windowssystem32> ssh
ssh : Имя «ssh» не распознано как имя командлета, функции, файла сценария или выполняемой пр
ограммы. Проверьте правильность написания имени, а также наличие и правильность пути, после
#9. Настройка SSH подключения к Windows Server 2019.
чего повторите попытку.
строка:1 знак:1
+ ssh
+ ~~~
+ CategoryInfo : ObjectNotFound: (ssh:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
Источник: computerhelp.community
ssh: термин ‘ssh’ не распознается как имя командлета, функции, файла сценария или работающей программы
Я попытался подключиться к серверу с помощью ssh, но получил следующую ошибку ssh:
The term ‘ssh’ is not recognized as the name of a cmdlet, function, script file, or operable program.
и мне удалось установить OpenSSH.client и сервер, но я получаю ту же ошибку при попытке запустить ssh.
Я использую Windows 10 Pro. Я попытался удалить OpenSSH и переустановить его, перезапустив окна, но ничего не изменилось.
user11761764 26 окт ’21 в 13:18 2021-10-26 13:18
2021-10-26 13:18
1 ответ
Сначала попробуйте ту же команду в новой Windows Powershell, которая унаследует системные изменения, которые вы только что сделали, установив OpenSSH для Windows .
Убедитесь, что вы видите C:WindowsSystem32opensshssh.exe .
Сначала убедитесь, что папка установки OpenSSH находится на системном пути.
Для Windows папка установки по умолчанию SystemDrive:WindowsDirectorySystem32openssh .
Источник: stackru.com
Действия по воспроизведению
Кажется, только ssh.exe и wsl.exe будут иметь эту странную проблему. Даже если я использую полный путь вроде C:WindowsSystem32OpenSSHssh.exe проблему не решить. См. Следующие скриншоты.
Работа с SSH в Windows 10 и Linux. Генерация ключей
Ожидаемое поведение
С Windows PowerShell все работает должным образом.
Фактическое поведение
С PowerShell Core
Данные окружающей среды
Name Value —- —— PSVersion 7.0.0-rc.2 PSEdition Core GitCommitId 7.0.0-rc.2 OS Microsoft Windows 10.0.19041 Platform Win32NT PSCompatibleVersions PSRemotingProtocolVersion 2.3 SerializationVersion 1.1.0.1 WSManStackVersion 3.0
Issue-Question
cloudhan
Самый полезный комментарий
Я вижу: я начинаю подозревать, что это _PowerShell_ была установлена как _32-битная_ версия, что объясняет симптом, учитывая, что 32-битные процессы имеют свой собственный независимый каталог C:WindowsSystem32 который затеняет тот, который видят 64-битные процессы.
# This would only work from a 32-bit PowerShell instance. # Access the 64-bit C:WindowsSystem32 directory. Get-Item -Force C:WindowsSysNativeOpenSSHssh.exe
Быстрый тест, чтобы определить, является ли ваш сеанс PowerShell 32-разрядным, — это проверить $env:ProgramFiles : если он содержит C:Program Files (x86) вместо C:Program Files , вы запускаете 32-разрядный сеанс. .
mklement0 5 февр. 2020
Все 9 Комментарий
Обратите внимание, autochk.exe — это исполняемый файл, который я случайно выбрал из C:WindowsSystem32 , чтобы показать, что:
- C:WindowsSystem32 находится в $ env: Path.
- C:WindowsSystem32 читается в ядре ps
cloudhan 5 февр. 2020
Снимок в темноте: возможно, это 32-битные исполняемые файлы? Если это так, вы должны нацелить их через C:WindowsSysWow64 из 64-битных процессов.
mklement0 5 февр. 2020
> $env:Path -split ‘;’ C:Program FilesWindowsAppsMicrosoft.PowerShellPreview_7.0.102.0_x86__8wekyb3d8bbwe C:Program FilesNVIDIA GPU Computing ToolkitCUDAv10.2bin C:Program FilesNVIDIA GPU Computing ToolkitCUDAv10.2libnvvp C:Program Files (x86)Common FilesIntelShared Librariesredistintel64_wincompiler C:Program Files (x86)Common FilesIntelShared Librariesredistia32_wincompiler C:Program FilesWindowsAppsMicrosoft.PowerShell_7.0.0.4_neutral__8wekyb3d8bbwe C:ProgramDataOracleJavajavapath C:Program Files (x86)PDFtkbin C:Program Files (x86)GnuPGbin C:Program Files (x86)IntelSWToolsOpenCLruntimecpuwindowscompilerlibia32_win C:Program Files (x86)IntelSWToolsOpenCLruntimecpuwindowscompilerlibintel64_win C:Program Files (x86)IntelSWToolsOpenCLsdkbinGTPin C:Program Files (x86)IntelSWToolsOpenCLsdkbinPin C:Program Files (x86)IntelSWToolsOpenCLsdkbinx64 C:Program Files (x86)IntelSWToolsOpenCLsdkbinx86 C:Program Files (x86)Wolfram ResearchWolframScript C:Program Filesdotnet C:Program FilesGit LFS C:Program FilesGitcmd C:Program FilesMicrosoft SQL Server130ToolsBinn C:Program FilesMicrosoft VS Codebin C:Program Files (x86)NVIDIA CorporationPhysXCommon C:Program Files (x86)Windows Kits10Windows Performance Toolkit C:Windows C:WindowsSystem32 C:WindowsSystem32OpenSSH C:WindowsSystem32wbem C:WindowsSystem32WindowsPowerShellv1.0 C:Program FilesNVIDIA CorporationNsight Compute 2019.5.0 C:Program FilesCMakebin C:texlive2019binwin32 C:toolsvcpkg C:toolsvcpkginstalledx64-windowsbin C:Userscloud.dotnettools C:UserscloudAppDataLocalMicrosoftWindowsApps C:toolsdepot_tools C:tools
cloudhan 5 февр. 2020
И я заметил еще более глупую вещь: если я запускаю cmds из PowerShell, проблема все еще возникает с запущенным PSCore cmd, это заразно, или что-то не так с моим env?
cloudhan 5 февр. 2020
Найдет ли PowerShell хотя бы _file_? Возвращает ли следующее то, что вы ожидаете?
Get-Item -Force C:WindowsSystem32OpenSSHssh.exe
Содержимое переменной $env:PATH достаточно короткое, чтобы не создавать проблем.
Тем не менее, учитывая, что вы говорите, что экземпляр cmd запущенный из PowerShell, также отображает проблему, я задаюсь вопросом, есть ли что-то в _content_ вашей переменной $env:PATH которое вызывает проблемы (хотя это противоречит возможности для запуска autochck.exe );
если вы сократите $env:PATH до стандартных записей (временно, чтобы мы могли сузить проблему), проблема не исчезнет.
mklement0 5 февр. 2020
Get-Item: Cannot find path ‘C:WindowsSystem32OpenSSHssh.exe’ because it does not exist.
cloudhan 5 февр. 2020
Я вижу: я начинаю подозревать, что это _PowerShell_ была установлена как _32-битная_ версия, что объясняет симптом, учитывая, что 32-битные процессы имеют свой собственный независимый каталог C:WindowsSystem32 который затеняет тот, который видят 64-битные процессы.
# This would only work from a 32-bit PowerShell instance. # Access the 64-bit C:WindowsSystem32 directory. Get-Item -Force C:WindowsSysNativeOpenSSHssh.exe
Быстрый тест, чтобы определить, является ли ваш сеанс PowerShell 32-разрядным, — это проверить $env:ProgramFiles : если он содержит C:Program Files (x86) вместо C:Program Files , вы запускаете 32-разрядный сеанс. .
mklement0 5 февр. 2020
cloudhan 6 февр. 2020
Источник: bleepcoder.com