Предварительное условие: вы должны были установить Ubuntu с опцией «установить Ubuntu вместе с другой операционной системой» во время установки.
Я не знаю внутренних компонентов, чтобы объяснить, почему в GNOME это работает, а в KDE это не так, но я могу предложить решение.
Определите функцию, подобную следующей в вашем ~/.bashrc:
ssh() {
if ! ssh-add -l &>/dev/null; then
ssh-add </dev/null &>/dev/null
fi
command ssh "$@"
}
, т. е. если у агента нет уже сохраненного ключа (! ssh-add -l), затем вызовите его с помощью ввода из /dev/null: это для того, чтобы убедить ssh-add не иметь терминала, и заставить запрашивать пароль с помощью окна графического интерфейса пользователя.
Вы можете установить переменную среды SSH_ASKPASS, чтобы указать на другое приложение, чтобы запросить пароль.