Как запустить SSH в качестве другого пользователя на той же установке Ubuntu?

Я также рекомендую снять флажок «Разрешить Skype автоматически настраивать уровни микшера» в настройках Skype «Звуковые устройства».

В моем случае Skype автоматически отключает мой микрофон.

1
задан 14 March 2013 в 16:29

2 ответа

Поскольку скрипт работает от имени root, он может su прямо работать с нерентабельным пользователем.

Предполагая, что непривилегированный пользователь dan, и $ PATH_TO_INSTALLATION установлен в окружающем скрипте:

su -lc "git clone user@host.com:git-repo $PATH_TO_INSTALLATION" dan

Обратите внимание, что $PATH_TO_INSTALLATION должен быть доступен для записи через dan.

3
ответ дан 25 May 2018 в 00:31
  • 1
    Это также позволяет мне спрашивать пароль пользователя хоста – Dan 14 March 2013 в 17:02
  • 2
    @Dan Но не тогда, когда вы выполняете это как dan? Обратите внимание на аргумент -l на su, чтобы убедиться, что вы получили оболочку входа в дом dan. – zwets 14 March 2013 в 17:32
  • 3
    Да, я пробовал это как есть. Я даже пробовал использовать следующую команду, возможно, это может быть проблема git. [F1]. Он также попросил меня ввести пароль. – Dan 14 March 2013 в 17:41
  • 4
    И когда вы входите в консоль (а не в графический интерфейс), как dan, после нового перезапуска (поэтому ни один ssh-agent не кэширует что-либо), и вы делаете " ssh user@host.com" ;, вы не спросил пароль? – zwets 14 March 2013 в 17:47
  • 5
    Я предполагаю, что у вас есть файл секретного ключа без пароля в .ssh, правильно? Вы пытались использовать аргумент -i для ssh, чтобы явно указать, какой файл закрытого ключа он должен использовать? – zwets 14 March 2013 в 17:50

Когда я сгенерировал свой ssh-ключ давным-давно с ssh-keygen, я не выбрал путь по умолчанию ~/.ssh/id_rsa. Благодаря комментарию zwets, я повторил это. Я изменил свой ключ и поместил его в ~/.ssh/id_rsa.

Теперь обе команды работают:

С sudo
sudo -u $SUDO_USER git clone user@host.com:git-repo $PATH_TO_INSTALLATION
Как было предложено в ответе zwets
su -lc "git clone user@host.com:git-repo $PATH_TO_INSTALLATION" $SUDO_USER
0
ответ дан 25 May 2018 в 00:31

Другие вопросы по тегам:

Похожие вопросы: