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 fetchegit 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-commandsdirectory 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 comerooto unsudoutente capace e faresudo -u git -sper ottenere unabashshell completa sotto l'gitutente.