Ich versuche, GNU Screen mit dem folgenden Befehl unter meinem Mac OS zu öffnen :
host:~ user$ screen
Das Bildschirmterminal öffnet sich, stirbt jedoch schnell mit der Fehlermeldung:
Kann / bin / false nicht ausführen: Keine solche Datei oder kein solches Verzeichnis
Mein Terminal ist so konfiguriert, dass die bash
Shell beim Start geöffnet wird . Ich habe versucht, die Terminal-Shell auf einzustellen sh
, es gibt den gleichen Fehler.
Wenn ich jedoch den screen
Befehl als ausführe sudo
, ist der Befehl erfolgreich.
Wie löse ich es für den normalen Benutzer?
/bin/false
Ihren rc-Dateien (.bashrc
,.bash_profile
etc.) auch Ihre überprüfen.screenrc
.Antworten:
Sehen Sie in Ihren Shell-Initialisierungsskripten nach
bash
oder in derscreen
Konfigurationsdatei nach, obfalse
mit dem expliziten Pfad irgendwo etwas verwendet wird/bin/false
.Unter macOS befindet sich das
false
Dienstprogramm in/usr/bin
, nicht in/bin
.Andernfalls überprüfen Sie, ob Ihre Anmeldeshell aus irgendeinem Grund auf "Aktiviert" eingestellt ist
/bin/false
, indem Sie/etc/passwd
die "Erweiterten Optionen" im Abschnitt "Benutzer & Gruppen" der Systemeinstellungen überprüfen oder anzeigen (Sie erhalten diese, indem Sie mit der rechten Maustaste auf Ihren Benutzer klicken in der Liste der Benutzerkonten, und Sie können die Shell auch hier ändern). Jemand hat gedankenlos gefolgt ein Tutorial / Howto die Sätze auf einen Benutzer mit/bin/false
als Standard - Shell.Wenn Sie laufen
screen
mitsudo
Ihnen nutzenroot
‚s Shell / Bildschirm init - Dateien. Deshalb funktioniert das.quelle
Gehen Sie zu den Einstellungen auf dem Terminal und dann zu Allgemein. Wählen Sie dann unter 'Shell öffnen mit' Befehl aus und geben Sie bash -l ein
quelle