views:

131

answers:

2

How do i run
ssh-add key
sudo hg clone [email protected]/etc/etc

but use my ssh keys and not the superusers.

Hey everyone, when i use sudo with for example, sudo hg clone [email protected]/etc/etc after i have added a key to my user account it doesnt work. I remember this is because the sudo is ran as the superuser but that user cannot have keys added to it. I remember setting some directive (im using debian) that allowed me to run that command as sudo, but still have my ssh keys taken from my normal user account but i didnt make a note of it at the time. Thanks.

A: 

I see you found a way to have the sudo user chain off to your main user's key, but rather than using ssh-agent for something like that you're more secure explicitly specifying the key:

sudo hg --ssh '/usr/bin/ssh -i /path/to/private.key' clone [email protected]/etc/etc 
Ry4an
ooh thats nice. Wont have to modify the sudoers file now. Thanks!
Shawn
A: 

The answer by Ry4an pointed me in the right direction but I found that with the current version (1.6.4) of Hg at least, you need to put --ssh (or the equivalent -e) after the hg command.

e.g.

hg clone -e 'ssh -i /path/to/key' ssh://user@host/path
Thomas Dufour