gnome-terminal a cessé de fonctionner

8

Mon a gnome-terminal 3.16.2-1cessé de fonctionner après une mise à jour du système. Je cours Linux arch 4.1.6-1-ARCH #1 SMP PREEMPT Mon Aug 17 08:52:28 CEST 2015 x86_64 GNU/Linux.

Au lancement, je reçois

Error constructing proxy for     org.gnome.Terminal:/org/gnome/Terminal/Factory0: Error calling StartServiceByName for org.gnome.Terminal: GDBus.Error:org.freedesktop.DBus.Error.Spawn.ChildExited: Process org.gnome.Terminal exited with status 8

Googler le problème m'a dit de réinitialiser les paramètres régionaux. Pour cela, j'ai ouvert /etc/locale.genet fait en sorte que cela ne en_US.UTF-8 UTF-8soit pas commenté.

J'ai ensuite couru sudo locale-genpour générer les paramètres régionaux. Pour couronner le tout, j'ai également couru localectl set-locale LANG=en_US.UTF-8et redémarré.

Lorsque le problème est apparu pour la première fois, j'ai reçu un message d'erreur lié aux paramètres régionaux. Après avoir effectué les étapes précédentes, ces messages d'erreur ont disparu, mais gnome-terminalne fonctionnent toujours pas. Le message d'erreur ci-dessus reste.

Comportement étrange que je peux autrement observer:

Mon gestionnaire de fichiers Nautilus ne démarre pas à partir du raccourci du bureau, mais démarre sans problème à partir de la console.

gnome-terminal se lance lorsqu'il est exécuté en tant que root.

locale les sorties:

LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC=de_DE.UTF-8
LC_TIME=de_DE.UTF-8
LC_COLLATE="en_US.UTF-8"
LC_MONETARY=de_DE.UTF-8
LC_MESSAGES="en_US.UTF-8"
LC_PAPER=de_DE.UTF-8
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT=de_DE.UTF-8
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

localectl les sorties

System Locale: LANG=en_US.UTF-8
   VC Keymap: us
  X11 Layout: us,de
kunterbunt
la source
Il n'y avait pas de ~ / .profile donc j'ai créé ce fichier et je l'ai mis dedans. C'est le seul texte du fichier, n'est-ce pas? Même après le redémarrage, cela ne fonctionne pas.
kunterbunt
D'accord, bash recherche apparemment les fichiers existants dans / etc / profile puis ~ / .bash_profile, ~ / .bash_login, ~ / .profile dans cet ordre jusqu'à ce qu'il en trouve un existant. J'avais un ~ / .bash_profile donc j'ai ajouté le paramètre de langue à cela ainsi qu'à / etc / profile mais en vain. Merci quand même pour vôtre aide.
kunterbunt
Sorties ajoutées dans mon montage.
kunterbunt
Désolé, cela m'a pris un peu de temps. Non, cela ne fonctionne pas non plus pour un autre utilisateur. Même comportement.
kunterbunt
J'ai exactement le même problème, mais je ne sais pas comment le résoudre. J'essaierai de rétrograder certaines choses, pour voir si cela fonctionne à nouveau.
aexl

Réponses:

7

Solution :

Exécutez dans le terminal (alt + ctrl + F1 si vous avez seulement gnome-terminalinstallé), mais rappelez-vous que ce n'est pas permanent, donc après le redémarrage, vous devrez le refaire:

dbus-update-activation-environment --all

Ou pour le résoudre de façon permanente (en supposant qu'il manque un script dans votre /etc/X11/xinit/xinitrc.dexplication, voir pour plus de détails), chargez dans vos ~/.xinitrcscripts appropriés:

if [ -d /etc/X11/xinit/xinitrc.d ] ; then
  for f in /etc/X11/xinit/xinitrc.d/?*.sh ; do
    [ -x "$f" ] && . "$f"
  done
  unset f
fi

Notez que cela ne fonctionnera que si vous avez un script approprié dans /etc/X11/xinit/xinitrc.d

Explication :

Dans mon cas, le problème était une DISPLAYvariable manquante pour les services de session D-Bus. Pour cette raison, je n'ai pas pu commencer gnome-terminalni nautilius.

J'utilise Arch Linuxavec Slimet certains personnalisés .xinitrc. Pour cette raison, j'ai manqué de charger des éléments supplémentaires à partir de /etc/X11/xinit/xinitrc.d/. Dans le cas où Arch Linuxil y a un script appelé 50-systemd-user.shqui prend en charge la mise en place d'un environnement approprié pour une session D-Bus. Dans mon cas, cela ressemble à ceci:

#!/bin/sh

systemctl --user import-environment DISPLAY XAUTHORITY

if which dbus-update-activation-environment >/dev/null 2>&1; then
    dbus-update-activation-environment DISPLAY XAUTHORITY
fi

Ma compréhension est que les variables DISPLAYet XAUTHORITYsont importées dans le bloc d'environnement du gestionnaire systemd et également vers dbus-daemon --sessionlesquelles utiliser ces variables lors de l'activation des services de session. Certaines applications (cela dépend également de la façon dont elles sont appelées) échouent en raison de l'absence de ces variables au démarrage.

mtfk
la source
A travaillé pour moi. J'obtenais le code d'erreur 10 avec gnome-terminal sur une installation frash d'Arch Linux avec gnome.
Marcel
Cela n'a pas fonctionné pour moi sur Ubuntu 16.04.
Cerin
l'utilisation de "systemctl --user import-environment DISPLAY XAUTHORITY" corrige mon gnome-terminal cassé que j'aime exécuter sur Windows sous Cygwin (en utilisant le transfert ssh et en exécutant gnome-terminal depuis ma boîte Debian). L'exécution de cette commande corrige d'abord gnome-terminal et elle apparaît à nouveau sur la machine du serveur X!
Professeur Falken
4

J'ai ajouté la ligne suivante à la ~/.profilevariable It sets DBUS_SESSION_BUS_ADDRESS. Cela a résolu le problème pour moi.

eval `dbus-launch --sh-syntax`
evpo
la source
0

Ajoutez la ligne suivante au bas de ~ / .bashrc et un redémarrage fonctionne pour moi

dbus-update-activation-environment --all
trishnendu
la source
1
Cela n'a pas fonctionné pour moi.
Cerin
0

Dans mon cas, après avoir changé localectl, j'ai modifié mon .vnc/xstartupfichier en commentant cette ligne ci-dessous: -

gnome-session --session=gnome-flashback-metacity --disable-acceleration-check --debug &

Voici à quoi ressemble mon .vnc / xstartup:

#!/bin/sh
# Uncomment the following two lines for normal desktop:
# unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc

[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
x-window-manager &
export XKL_XMODMAP_DISABLE=1
export XDG_CURRENT_DESKTOP="GNOME-Flashback:Unity"
export XDG_MENU_PREFIX="gnome-flashback-"
unset DBUS_SESSION_BUS_ADDRESS

#gnome-session --session=gnome-flashback-metacity --disable-acceleration-check --debug &
gnome-panel &
gnome-settings-daemon &
metacity &
nautilus &
Taani
la source