Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

setting up git ssh access error: gitosis need more than 1 value to unpack

When I go to set up git to run with ssh, I get the following error:

file "usr/lib/python2.5/site-packages/gitosis-0.2-py2.5.egg/gitosis/init.py", 
line 35, in ssh_extract_user 
_, user = pubkey.rsplit(None, 1)
ValueError: need more than 1 value to unpack

the command I typed:

sudo -H -u git gitosis-init < /home/sean/.ssh/pubkey.pub

I am running the ubuntu long release server 8.04

like image 773
Sean Avatar asked Feb 19 '10 07:02

Sean


2 Answers

I have fixed this by modifying generated public key file, at the end it has user name appended,remove special characters and register public key with gitosis.

If public key is

ssh-rsa AAAAB3NzaC1yc2E ....... ..... .....== [email protected]

update this as

ssh-rsa AAAAB3NzaC1yc2E ....... ..... .....== [email protected]

Further refer https://bugzilla.redhat.com/show_bug.cgi?id=470359

like image 68
amar Avatar answered Nov 15 '22 03:11

amar


This should be related to your ssh key format, as illustrated by this thread.

I used PuttyGen on Windows to generate my public key (SSH2 RSA 1024) and save it locally, and then I uploaded it to /tmp/id_rsa.pub using pscp, but then when I ran

sudo -H -u git gitosis-init < /tmp/id_rsa.pub

I kept getting errors, eg:

gitosis.init.InsecureSSHKeyUsername: Username contains not allowed characters: ‘—‘

or:

gitosis.init.InsecureSSHKeyUsername: Username contains not allowed characters:’”rsa-key-20081202”’

or (after I got rid of everything in the file but the key itself):

ValueError: need more than 1 value to unpack

I figured that PuttyGen had generated an SSH2 public key file in a slightly different format, and ‘git gitosis-init’ wanted a user name at the beginning, so I went here:

http://www.rfc-archive.org/getrfc.php?rfc=4716

and saw that I could keep the “—BEGIN…” and “—END” parts, and replace the “comment: ...” line (generated by PuttyGen) with a line reading:

subject: git

And it worked! I got the output:

Initialized empty Git repository in /home/git/repositories/gitosis-admin.git/ 
Reinitialized existing Git repository in /home/git/repositories/gitosis-admin.git/
like image 27
VonC Avatar answered Nov 15 '22 03:11

VonC