Ich versuche, Git-Server zu installieren. Wenn ich die Standard-Shell für meinen Git-Benutzer auf / usr / bin / git-shell setze, erhalte ich eine Fehlermeldung, wenn ich mich als Git anmelde.
fatal: Interactive git shell is not enabled.
hint: ~/git-shell-commands should exist and have read and execute access.
SSH-Schlüssel Zugriff funktioniert, Berechtigungen sind richtig eingestellt.
In der Google-Suche wird zu diesem Fehler nichts angezeigt.
Ich habe diese Methode auch in früheren Installationen verwendet und es wurde kein solcher Fehler angezeigt. Ich habe mir auch den funktionierenden Server angesehen, wenn er einige zusätzliche Dateien oder eine Konfiguration hat, aber keine solche.
Systemspezifikation:
- Gentoo Linux (aktuell)
- Git 1.7.5.3
/ etc / passwd Zeile:
git:x:1002:1004::/home/git:/usr/bin/git-shell
git-shell
ist eine eingeschränkte Shell für Push / Pull - Funktionalität nur (dh verwendet werdengit push
,git fetch
undgit pull
). Es soll nicht interaktiv sein, daher sollten Sie sich nicht in einer interaktiven Shell anmelden. Sie können es etwas interaktiver gestalten, indem Sie eingit-shell-commands
Verzeichnis in der Startseite des Benutzers hinzufügen und einige Binärdateien darin verknüpfen. Aber es ist sehr begrenzt (es gibtcd
zum Beispiel keine Binärdatei für ), daher ist es eine bessere Alternative, sich alsroot
oder alssudo
fähiger Benutzer anzumelden undsudo -u git -s
eine vollständigebash
Shell unter dengit
Benutzer zu bekommen.