Я пытаюсь изменить файл конфигурации на клиенте удаленно с сервера. Это экспериментальный стенд. У меня установлена так, что ключ сервера rsa_pub
находится в файле авторизированных ключей клиента.Выполнение некоторых команд в скрипте как пользователь
Когда я запускаю скрипт (это должно выполняться от имени пользователя root), при попытке изменить файл мне будет предложено ввести пароль клиентского компьютера. Если я запустил его как пользователь, то я не буду. Я также попытался использовать переключатель sudo -u
, который, похоже, не работает.
Запуск от имени пользователя (Это работает):
echo 'prio 0' | ssh [email protected] "cat > /home/user/priofile.txt"
все еще работает как пользователь, но с -u
переключателем (это работает):
$ sudo -u user echo 'prio 0' | ssh [email protected] "cat > /home/user/priofile.txt"
Запуск от корня:
# sudo -u user echo 'prio 0' | ssh [email protected] "cat > /home/user/priofile.txt"
[email protected]'s password:
Зачем мне подсказывать пароль, хотя я пытаюсь запустить его как пользователь?
Возможно ли, что авторизованный ключ в файле клиента соответствует пользователю 'user', а не' root' пользователю? –
Да! точно проблема. Благодаря! – jamie
@jamie Вы пропустили концепцию stackoverflow. Ваш вопрос не связан с программированием. Кроме того, это то, что неоднократно обсуждалось во многих местах. Пожалуйста, удалите этот вопрос и прочитайте: https://stackoverflow.com/help/how-to-ask, прежде чем отправлять свой следующий вопрос в stackoverflow. – hek2mgl