gnome-terminal ha smesso di funzionare


8

Ho gnome-terminal 3.16.2-1smesso di funzionare dopo un aggiornamento del sistema. Sto correndo Linux arch 4.1.6-1-ARCH #1 SMP PREEMPT Mon Aug 17 08:52:28 CEST 2015 x86_64 GNU/Linux.

Quando lo lancio ricevo

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

Googling il problema mi ha detto di ripristinare le impostazioni locali. Per questo ho aperto /etc/locale.gene fatto in modo che en_US.UTF-8 UTF-8fosse senza commenti.

Ho quindi corso sudo locale-genper generare i locali. Per finire, ho anche eseguito localectl set-locale LANG=en_US.UTF-8e riavviato.

Quando il problema si è presentato per la prima volta, ho ricevuto un messaggio di errore relativo alla locale. Dopo aver eseguito i passaggi precedenti, questi messaggi di errore sono scomparsi, ma gnome-terminalcontinuano a non funzionare. Il messaggio di errore sopra riportato rimane.

Strano comportamento che altrimenti posso osservare:

Il mio file manager Nautilus non si avvia dal collegamento sul desktop, ma si avvia senza problemi dalla console.

gnome-terminal si avvia quando viene eseguito come root.

locale uscite:

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 uscite

System Locale: LANG=en_US.UTF-8
   VC Keymap: us
  X11 Layout: us,de

Non c'era ~ / .profile, quindi ho creato quel file e l'ho inserito. È l'unico testo nel file, giusto? Anche dopo il riavvio non funziona.
kunterbunt,

Va bene apparentemente bash cerca i file esistenti in / etc / profile e quindi ~ / .bash_profile, ~ / .bash_login, ~ / .profile in quell'ordine fino a quando non ne trova uno esistente. Avevo un ~ / .bash_profile, quindi ho aggiunto l'impostazione della lingua a quella / etc / profilo, ma senza risultato. Grazie per l'aiuto.
kunterbunt,

Output aggiunti nella mia modifica.
kunterbunt,

Mi dispiace, mi ci è voluto un po 'per finire. No, non funziona neanche per un altro utente. Stesso comportamento.
kunterbunt,

Ho esattamente lo stesso problema, ma non ho idea di come risolverlo. Proverò a effettuare il downgrade di alcune cose, per vedere se funziona di nuovo.
aexl,

Risposte:


7

Soluzione :

Esegui nel terminale (alt + ctrl + F1 se hai gnome-terminalinstallato solo ), ma ricorda che non è permanente, quindi dopo il riavvio dovrai farlo di nuovo:

dbus-update-activation-environment --all

O per risolverlo permanentemente (supponendo che tu abbia uno script mancante nella /etc/X11/xinit/xinitrc.dspiegazione vedi per maggiori dettagli) carica i tuoi ~/.xinitrcscript corretti:

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

Nota che questo funzionerà solo se avrai uno script appropriato /etc/X11/xinit/xinitrc.d

Spiegazione :

Nel mio caso il problema mancava DISPLAYvariabile per i servizi di sessione D-Bus. A causa di ciò, non ho potuto iniziare gnome-terminalnautilius.

Sto usando Arch Linuxcon Slime alcuni personalizzati .xinitrc. A causa di ciò, ho perso il caricamento di materiale aggiuntivo da /etc/X11/xinit/xinitrc.d/. In caso di Arch Linuxpresenza di uno script chiamato 50-systemd-user.shche si occupa di impostare un ambiente adeguato per una sessione D-Bus. Nel mio caso si presenta così:

#!/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

La mia comprensione è che le variabili DISPLAYe XAUTHORITYvengono importate nel blocco di ambiente del gestore di sistema e anche a dbus-daemon --sessioncui utilizzare tali variabili quando si attivano i servizi di sessione. Alcune applicazioni (dipende anche da come vengono chiamate) non riescono a causa della mancanza di tali variabili durante l'avvio.


Ha funzionato per me. Stavo ottenendo il codice di errore 10 con gnome-terminal su un'installazione frash di Arch Linux con gnome.
Marcel,

Questo non ha funzionato per me su Ubuntu 16.04.
Cerin,

usando "systemctl --user import-environment DISPLAY XAUTHORITY" corregge il mio terminale gnome rotto che mi piace eseguire su Windows sotto Cygwin (usando l'inoltro ssh ed eseguendo gnome-terminal dalla mia casella Debian). L'esecuzione di quel comando per prima cosa risolve gnome-terminal e appare di nuovo sulla macchina del server X!
Professor Falken,

4

Ho aggiunto la seguente riga a ~/.profileImposta la variabile DBUS_SESSION_BUS_ADDRESS. Mi ha risolto il problema.

eval `dbus-launch --sh-syntax`

0

Aggiungi la seguente riga nella parte inferiore di ~ / .bashrc e un riavvio funziona per me

dbus-update-activation-environment --all

1
Questo non ha funzionato per me.
Cerin,

0

Nel mio caso, dopo aver modificato localectl, ho modificato il mio .vnc/xstartupfile commentando questa riga di seguito: -

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

Ecco come appare il mio .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 &
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.