更改主机名后启动程序返回错误_IceTransSocketUNIXConnect:无法连接到本地主机


9

在14.04上更改主机名后,我无法启动unetbootin,尝试从bash启动应用程序会返回:

_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

从输出hostname cat /etc/hostnamecat /etc/hosts所有确认该主机名是正确的。自进行更改以确认加载了新设置的所有内容之后,我还重新启动了系统。

我很茫然,任何帮助将不胜感激!另外,谁能提供有关IceTransSocketUNIXConnect是什么以及它如何工作的背景知识?像温索克吗?

Answers:


5

看来此错误源于〜/ .ICEauthority文件。您可以使用命令iceauth list列表输入。在我的情况下,包括旧主机名localhost,将其替换为您的旧主机名。

例如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 @ localdomain:/tmp/.ICE-unix/2 MAGIC-COOKIE-1 f91ab2525bf0000159161db41df1aa0c

2种选择:

  1. 简单-删除〜/ .ICEauthority文件,然后重新启动计算机或显示管理器。〜/ .ICEauthority将使用您的新主机名重新生成。
  2. 高级- iceauth remove用于删除不良条目,然后重新启动显示管理器(14.04默认= lightdm)。只需将上面grep中的行复制粘贴到以下示例中,即可删除XSMP和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 #确认已将其删除。
    • sudo restart lightdm#@ 查看此答案以获取更多详细信息,或者这对您不起作用

进一步阅读man iceauth

清单

在权限文件中列出(打印)条目。您可以如下指定可选修饰符,以指定列出哪些条目。

列表[protocol_name] [protocol_data] [netid] [authname]

去掉

从授权文件中删除条目。

删除[protocol_name] [protocol_data] [netid] [authname]

来源:
https : //superuser.com/questions/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
如何从命令行重新启动X Window Server?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.