Iniciar programas después del cambio de nombre de host devuelve el error _IceTransSocketUNIXConnect: no se pudo conectar al host local

9

Después de cambiar el nombre de host en 14.04 no puedo iniciar unetbootin, intentando iniciar la aplicación desde bash devuelve:

_IceTransSocketUNIXConnect: Cannot connect to non-local host OLDHOSTNAME _IceTransSocketUNIXConnect: Cannot connect to non-local host OLDHOSTNAME Qt: Session management error: Could not open network socket

La salida de hostname cat /etc/hostnamey cat /etc/hoststodos confirman que el nombre de host es correcto. También he reiniciado el sistema desde que hice el cambio para confirmar todo lo cargado con la nueva configuración.

Estoy perdido, cualquier ayuda es muy apreciada. Además, ¿alguien podría proporcionar algunos antecedentes sobre qué es IceTransSocketUNIXConnect y cómo funciona? ¿Se parece a Winsock?

Avena
fuente

Respuestas:

5

Parece que este error proviene del archivo de autorización ~ / .ICE. Puede usar la iceauth listlista de comandos de sus entradas. En mi caso, el antiguo nombre de host incluido localhost, reemplace esto con su antiguo nombre de host.

por ejemplo iceauth list | grep localhost:

XSMP "" unix / localhost @ localdomain: /tmp/.ICE-unix/2640 MIT-MAGIC-COOKIE-1 7035f3aebe650bd72315b76819267a9d
XSMP "" local / localhost @ localdomain: @ / tmp / .ICE-unix / 2640 MIT-MAGIC-COOKIE -1 abe16eba34a1cf69087aff88bdd14a1a
ICE "" local / localhost @ localdomain: @ / tmp / .ICE-unix / 2640 MIT-MAGIC-COOKIE-1 1e69a0d48b1f1375167c79bffbbfa06e
ICE "" unix / localhost @ locald. MAGIC-COOKIE-1 f91ab2525bf0000159161db41df1aa0c

2 opciones:

  1. Simple: elimine el archivo de autorización ~ / .ICE y reinicie la máquina o el administrador de pantalla. ~ / .ICEautoridad se regenerará con su nuevo nombre de host.
  2. Avanzado: utilícelo iceauth removepara eliminar las entradas incorrectas y luego reinicie su administrador de pantalla (14.04 predeterminado = lightdm). Simplemente copie y pegue la línea de su grep arriba en los ejemplos a continuación, elimina las entradas de protocolo XSMP e ICE.
    • iceauth -v remove netid=unix/localhost@localdomain:/tmp/.ICE-unix/2640
    • iceauth -v remove netid=local/localhost@localdomain:@/tmp/.ICE-unix/2640
    • iceauth list | grep localhost # Confirme que se eliminan.
    • sudo restart lightdm# @ver esta respuesta para más detalles o si esto no funciona para usted

Lectura adicional de man iceauth:

lista

Listar (imprimir) entradas en el archivo de autoridad. Puede especificar modificadores opcionales como a continuación para especificar qué entradas se enumeran.

lista [nombre_protocolo] [datos_protocolo] [netid] [authname]

eliminar

Eliminar entradas del archivo de autoridad.

eliminar [nombre_protocolo] [datos_protocolo] [netid] [authname]

fuentes:
/superuser/714015/accidentally-deleted-iceauthority-and-xauthority-files
https://codeyarns.com/2015/03/23/cannot-connect-to-non-local-host -error /
https://linux.die.net/man/1/iceauth
¿Cómo reiniciar X Window Server desde la línea de comandos?

Elijah Lynn
fuente