Como se livrar da casca de gitolito?

3

Mesmo que o shell de login do usuário 'git' seja / bin / bash, quando tento ssh para a máquina, recebo o seguinte erro:

PTY allocation request failed on channel 0
bash: /home/git/bin/gitolite-shell: No such file or directory
Connection to 192.168.20.151 closed.

Eu faço 'deluser git', depois 'adduser git --shell = / bin / bash', mas isso não funciona. Eu mudo de novo com 'chsh', ainda não funciona. Onde esta '/ home / git / bin / gitolite-shell' armazenado?

    
por bmm 03.01.2013 / 13:29

2 respostas

1

Acabei de descobrir que, quando redefini completamente o diretório home do git user:

deluser git --remove-home --backup # creates backup of home dir of git. see deluser(8)
adduser git

Eu me livrei de gitolite-shell .

No entanto, ainda não sei onde a string /home/git/bin/gitolite-shell está armazenada.

    
por bmm 04.01.2013 / 12:18
0

A menos que você o tenha instalado, ele não estará no seu sistema. A razão pela qual você está recebendo o erro é, acredito, o seguinte:

Você está se conectando a uma chave específica que é reconhecida no arquivo de ~git/.ssh/authorized_keys . Lá você pode ter encontrado uma entrada como esta:

# gitolite start 
command="/home/git/bin/gitolite-shell YOURNAME",no-port-forwarding,
no-X11-forwarding,no-agent-forwarding,no-pty 
ssh-rsa AAAAB3N.....<snip>... [email protected]
# gitolite end

Então, ao invés de honrar suas configurações do shell padrão que você definiu usando chsh , o sshd interfere e inicia um programa em particular (neste caso, gitolite-shell). Faz parte da configuração inteligente do gitolito e do comportamento desejado. Na sua configuração você estava faltando gitolite ou talvez apenas o link apropriado em ~ git / bin para ele. Infelizmente, você não poderá verificar isso agora.

Se você quiser experimentar, pode optar por instalar a partir do repositório atualizado ( instruções aqui ) desde que o ubuntu versão 2.2 está por trás do oficial v.3.4.

    
por DrSAR 05.03.2013 / 19:03

Tags