Sto cercando di installare git server. Quando imposto la shell predefinita per il mio utente git su / usr / bin / git-shell ricevo un errore all'accesso come git.
fatal: Interactive git shell is not enabled.
hint: ~/git-shell-commands should exist and have read and execute access.
Lavoro di accesso basato su chiave SSH, le autorizzazioni sono impostate correttamente.
La ricerca di Google non mostra nulla riguardo a questo errore.
Ho usato questo metodo anche nelle installazioni precedenti e non è stato mostrato alcun errore. Ho anche guardato il server funzionante se ha qualche file extra o config ma niente del genere.
Specifiche di sistema:
- Gentoo linux (più recente)
- Git 1.7.5.3
/ etc / passwd line:
git:x:1002:1004::/home/git:/usr/bin/git-shell
git-shell
è una shell limitata da utilizzare solo per la funzionalità push / pull (ovverogit push
,git fetch
egit pull
). Non è pensato per essere interattivo, quindi non dovresti effettuare il login in una shell interattiva. Puoi renderlo in qualche modo interattivo aggiungendo unagit-shell-commands
directory nella home dell'utente e collegando simbolicamente alcuni binari all'interno. Ma è molto limitato (non esiste un file binariocd
, ad esempio), quindi un'alternativa migliore è accedere comeroot
o unsudo
utente capace e faresudo -u git -s
per ottenere unabash
shell completa sotto l'git
utente.