Мне нужно запустить эту команду для инициализации гитоз:
sudo -H -u git gitosis-init < /home/ec2-user/id_rsa.pub
Но это просит меня ввести пароль для пользователя ec2:
$ sudo -H -u git gitosis-init < id_rsa.pub
[sudo] password for ec2-user:
У меня нет пароля, так как для входа я использую файл ключей .pem по умолчанию.
Я знаю, что, вероятно, могу войти в систему как пользователь git и сделать это, но есть ли другой способ?
Обновить:
Используется Linux AMI 12.09 (микро-экземпляр), в регионе us-east-1 (Северная Вирджиния)
Как вы обнаружили, root
пользователь может sudo
любому другому пользователю, поэтому просто добавьте sudo
спереди.
sudo sudo -H -u git gitosis-init < /home/ec2-user/id_rsa.pub
Пожалуйста, не бей себя слишком сильно.
Это мой текущий обходной путь:
Первый вход как ec2-пользователь с файлом .pem
Затем переключитесь на корень с участием sudo su
Затем переключитесь на мерзавец пользователь с su git
Затем запустите gitosis-init
вот так:
gitosis-init < path/to/id_rsa.pub
exit
из мерзавец пользователь, тогда exit
из корень.
Примечание: я добавил мерзавец пользователь с только sudo adduser git
Вы хотите обновить /etc/sudoers
чтобы вы могли запускать команды как git
без запроса пароля.
Сначала отредактируйте sudoers
файл:
$ EDITOR=my_favorite_text_editor sudo -E visudo
Добавьте следующую строку в конце *:
ec2_user ALL=(git) NOPASSWD: gitosis-init
Затем вы можете использовать команду, которую вы использовали, но вам больше не будет предлагаться ввести пароль.
* Или вы можете добавить это в файл в /etc/sudoers.d
, если она у вас есть.