这个问题显然与网络相关,但我认为它更适合放在这个论坛中,因为它实际上并不是一个连接问题。
我最近得到了其中一款 Verizon 无线热点 Mifi 设备:
我发现,在我实际连接到设备之前,我安装的所有东西都运行良好。一旦建立连接,我的电脑就几乎无法使用。具体来说,我无法运行任何程序(Chromium、终端等)。
有趣的是,如果我启动并启动 chromium 实例和终端,那么这些特定实例将继续(部分)工作,直到我关闭它们,但无法创建新实例。我说部分是因为我确实注意到页面在一段时间后开始加载不完全,最终打开的实例也停止工作。
重新启动后,一切都会正常工作 - 当然,除非我再次连接到该无线热点。有任何想法吗?
答案1
您遇到的问题是因为您的系统主机名正在更改。原来你的主机名是localhost
,但连接后变成了localhost.localdomain
。这可能会由于以下任一原因而导致问题:
1.主机名解析
如果新主机名 ( localhost.localdomain
) 未正确解析,则使用基于 IP 的协议(TCP 或 UDP)的进程工控机将无法沟通。
2. xauth cookies
当您启动 Xorg 时,系统会生成一个“xauth cookie”并将其存储在~/.Xauthority
. cookie 包含系统的主机名,因此如果主机名更改,cookie 就不再匹配。
从http://www.x.org/archive/X11R6.8.1/doc/Xsecurity.7.html:
.Xauthority 文件中的每个条目都与特定的连接系列(TCP/IP、DECnet 或本地连接)和 X 显示名称(主机名加显示编号)。这允许不同显示器的多个授权条目共享相同的数据文件。特殊的连接系列(FamilyWild,值 65535)使条目与每个显示器相匹配,从而允许该条目用于所有连接。每个条目还包含授权名称以及该授权类型在连接设置时生成正确信息所需的任何私有授权数据。
因此,基本上尝试启动的新应用程序不再能够通过 Xorg 进行身份验证,因此它们无法启动。
这是更有可能发生的情况。
由于您的系统的主机名是localhost
,这似乎表明您从未设置过主机名。如果您将主机名设置为 以外的名称localhost
,则此问题应该会消失。
不过我对Arch Linux不熟悉,所以我不知道这个过程是什么。然而根据拱门维基很简单:
# sed -i -e "s/^127\.0\.0\.1.*/\0 $myhostname/" /etc/hosts
# hostnamectl set-hostname $myhostname
# hostname $myhostname