J'essaie d'ouvrir l' écran GNU avec la commande suivante sur mon Mac OS:
host:~ user$ screen
Le terminal d'écran s'ouvre mais s'éteint rapidement avec le message d'erreur:
Impossible d'exécuter / bin / false: aucun fichier ou répertoire de ce type
Mon terminal est configuré pour ouvrir le bash
shell au démarrage. J'ai essayé de régler le shell du terminal sur sh
, cela donne la même erreur.
Cependant, lorsque j'exécute la screen
commande as sudo
, la commande réussit.
Comment le résoudre pour l'utilisateur normal?
/bin/false
dans vos fichiers rc (.bashrc
,.bash_profile
etc.) Vérifiez également votre.screenrc
.Réponses:
Jetez un œil dans vos scripts d'initialisation du shell
bash
ou dans lescreen
fichier de configuration et voyez s'il y a un endroit oùfalse
le chemin explicite est utilisé/bin/false
.Sous macOS, l'
false
utilitaire se trouve dans/usr/bin
, pas dans/bin
.À défaut, vérifiez si votre shell de connexion est défini pour une raison étrange
/bin/false
, soit en inspectant/etc/passwd
ou en consultant les "Options avancées" dans la section "Utilisateurs et groupes" des Préférences Système (vous les obtenez en cliquant avec le bouton droit sur votre utilisateur dans la liste des comptes utilisateurs, et vous pouvez également changer le shell ici). Quelqu'un a peut-être inconsciemment suivi un tutoriel / HOWTO qui définit un utilisateur avec/bin/false
comme shell par défaut.Lorsque vous exécutez
screen
avecsudo
vous utilisezroot
les fichiers d'initialisation shell / écran de. Voilà pourquoi cela fonctionne.la source
Allez dans les préférences sur Terminal, puis allez dans Général, puis sous 'Shell ouvert avec', sélectionnez Commande et tapez bash -l
la source