Я подключаюсь к серверу linux из своего .net-приложения с использованием SSH.NET. Каждая команда, которую я выполняю, выполняется, как ожидалось, за исключением pbrun su - myaccount..NET SSH pbrun su
Во время отладки, когда выполняется команда pbrun su - myaccount, стрелка в отладчике исчезает, и управление никогда не возвращается в визуальную студию, поэтому мне нужно вручную остановить отладку приложения.
Параметр 'su' команда, вероятно, ждет пароль. Если вы смотрите на stdout, вы не увидите этого, потому что приглашение 'Password:' отправляется в stderr. В [this] (http://stackoverflow.com/questions/30079526/how-to-write-to-stdin-read-from-stdout-of-an-ssh-connected-remote-process-renc#36360010) post вы можете писать в shell stdin. – AxelWass
@AxelWass Почему он должен ожидать пароль, если не запрашивается или требуется при выполнении той же команды pbrun su в терминале? – HendPro12
Я угадываю здесь, но, может быть, пользователь ssh и локальный пользователь не совпадают? Возможно, использование 'sudo visudo' помогает [здесь] (http://askubuntu.com/questions/470383/how-to-avoid-prompt-password-for-sudo#470466). – AxelWass