6 votes

L'exécution de bash produit "segmentation fault core dumped".

J'ai redémarré récemment, et maintenant le terminal ne fonctionne pas. Si je clique sur le raccourci du terminal ou si j'utilise Guake o ctrl-alt-T le terminal s'ouvre brièvement sans invite, puis se referme immédiatement. J'ai installé xterm et la même chose se produit.

Si j'utilise ctrl-alt-F1 pour accéder à une session de ligne de commande et tapez gnome-terminal J'obtiens le message d'erreur suivant :

Failed to parse arguments: Cannot open display

Comment puis-je diagnostiquer et résoudre ce problème ?

MODIFIER POUR AJOUTER .bashrc

PATH=$PATH:$HOME/.rvm/bin # Add RVM to PATH for scripting

[[ -s "$HOME/.profile" ]] && source "$HOME/.profile"

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"

### Added by the Heroku Toolbelt
export PATH="/usr/local/heroku/bin:$PATH"
alias zf=/home/julio/ZendFramework-1.12.3/bin/zf.sh

EDIT 2-- ajout de .profile :

# if running bash
if [ -n "$BASH_VERSION" ]; then
    # include .bashrc if it exists
    if [ -f "$HOME/.bashrc" ]; then
    . "$HOME/.bashrc"
    fi
fi

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi

export SCALA_HOME=/usr/share/scala
export PATH=$PATH:$SCALA_HOME/bin
source ~/.profile

9voto

Stewart Points 1385

Cela n'a rien à voir avec gnome-terminal Lorsque vous appuyez sur Ctrl Alt F1 Je me suis connecté à partir de la console virtuelle et j'ai essayé d'exécuter la commande suivante bash , vous avez un segmentation fault core dumped ce qui signifie que bash se bloque.

Quoi qu'il en soit, ce qui se passe, c'est que votre bash entre dans une boucle infinie. Lorsque bash commence, on peut lire ~/.bashrc (en fait, il s'agit d'une simplification, voir aquí pour plus de détails). Dans votre cas (et dans la plupart des versions d'Ubuntu, si ce n'est toutes), l'option par défaut .bashrc Pour des raisons qui n'ont jamais été claires pour moi, les sources (lit) ~/.profile également. Maintenant, votre ~/.profile comprend cette ligne :

source ~/.profile

Il en résulte que bash lit ~/.bashrc => lit ~/.profile => lit ~/.profile => lit ~/.profile => lit ~/.profile etc. C'est ce qu'on appelle une boucle sans fin. Finalement, le système s'effondre et se bloque.

Retrait de la source ~/.profile de votre ~/.profile devrait tout ramener à la normale.

0voto

Cornelius F. Points 11

Pour Mayank

"Supprimer la ligne source ~/.profile de votre ~/.profile" signifie qu'il suffit de rechercher les fichiers ~/.bash_profile, ~/.profile, ~./bashrc, ~/bash_login, /etc/bash.bashrc et /etc/profile (comme indiqué dans le commentaire), de les ouvrir et de supprimer la ligne :

source ~/.profile

ou

#[[ -s "$HOME/.profile" ]] && source "$HOME/.profile     

Pour information : '~' n'est pas un symbole étrange, il signifie simplement votre répertoire personnel. Il s'agit donc du chemin du fichier .profile.

Its HOME_DIRECTORY/.profile.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X