如何修复 Ubuntu 登录循环
已发表: 2023-05-29.Xauthority
文件。 如果这不起作用,请确保 root 拥有/tmp
文件夹、重新配置gdm3
并释放硬盘空间也可以让您摆脱困境。Ubuntu 登录循环是一个令人沮丧的问题,它使您无法登录。我们描述了六个可能导致此行为的不同问题以及如何修复它们。
什么是 Ubuntu 上的登录循环?
检查 .Xauthority 文件的所有权
删除 .Xauthority 文件
检查 /tmp 目录的权限
重新配置 gdm3
重新安装 gdm3
检查硬盘可用空间
跳出循环
什么是 Ubuntu 上的登录循环?
Ubuntu 登录循环是一个问题,它会让您返回登录屏幕,而不是让您登录并显示您的桌面。 就好像您的凭据被拒绝了,但事实并非如此。 它只是不让您进入。即使您确实输入了正确的用户名和密码,您也会被弹回登录屏幕。
在计算机可能出现的所有问题中,无法登录是最可怕的问题之一。 进不去怎么修? 值得庆幸的是,Linux 为我们提供了不止一种登录方式,我们可以在这种情况下利用它来发挥我们的优势。
实际上,这个问题也可能发生在其他发行版上。 它似乎被标记为“Ubuntu 登录循环”,因为给人的印象是它在运行 Ubuntu 的计算机上比在其他发行版上更频繁地报告。 我怀疑这是因为运行 Ubuntu Linux 的计算机比任何其他发行版都多。
相关: Ubuntu 23.04“Lunar Lobster”中的新增功能,现已推出
检查 .Xauthority 文件的所有权
此修复程序仅适用于选择使用 Xorg 而不是在新显示服务器 Wayland 上运行 Ubuntu 的用户。 显示服务器处理屏幕绘图功能。 应用程序与显示服务器对话,显示服务器写入屏幕。 它用于构建您在图形桌面环境中看到的内容。
Xorg 已被 Wayland 取代为默认显示服务器,但如果您愿意或需要,您仍然可以使用 Xorg 服务器登录 Ubuntu。 一些较旧的应用程序在 Xorg 上比在 Wayland 上工作得更好。
要使用 Xorg 登录 Ubuntu,请单击登录屏幕上的齿轮图标,然后从菜单中选择“Ubuntu on Xorg”。
此设置将在重新启动后保持不变。 要返回使用 Wayland,您需要手动将此设置更改回“Ubuntu”。
因此,如果您一直在使用 Xorg 并发现自己处于登录循环中,那么首先要检查的是“.Xauthority”文件的所有权——如果您有的话。 如果不这样做,请跳过本节和下一节。
在登录屏幕上,按“Ctrl+Alt+F3”打开终端屏幕。
使用您常用的用户名和密码登录。
如果你有一个,你的“.Xauthority”文件是一个隐藏文件,可以在你的主目录中找到。 我们将寻找一个带有-a
(全部)选项的文件,以便ls
列出隐藏文件。
ls -ahl.X*
在这台计算机上,该文件存在,但它应该属于当前用户,而不是 root。 但这是一个简单的修复。 我们将使用chown
命令将自己设置为所有者。 当然,您会在命令中替换您自己的用户名。
sudo chown dave:dave .Xauthority
ls
使用ls
检查显示我们是文件的所有者和组所有者。
如果您有一个名为“.ICEauthority”的文件,请确保您也是该文件的所有者。 我们的测试计算机上没有。 chown
命令的格式相同:
sudo chown dave:dave .ICEauthority
通过键入“reboot”并按 Enter 重新启动,并在系统备份时尝试登录。
相关:如何在 Linux 上使用 chown 命令
删除 .Xauthority 文件
如果获取“.Xauthority”文件的所有权不起作用,请尝试将其删除并重新创建。
在登录屏幕上,使用“Ctrl+Alt+F3”打开终端窗口,然后使用rm
命令删除文件。
rm.Xauthority
使用startx
命令尝试启动 X 桌面会话会强制创建一个新的“.Xauthority”文件。
开始
重新启动并尝试登录。
检查 /tmp 目录的权限
许多进程使用“/tmp”目录来存储临时文件。 如果“/tmp”目录的权限混乱并且变得比他们需要的更严格,这些进程将受到不利影响。
要检查这一点,我们需要打开一个终端屏幕,并在“/tmp”目录上使用ls
。 因此,在登录屏幕上按 Ctrl+Alt+F3,然后使用您常用的凭据登录。
“/tmp”目录应归 root 所有。 root 用户、root 组的成员以及所有其他用户都需要对该目录具有读取、写入和执行权限。 唯一的限制是其他组中的人——在这种情况下,除了 root 和 root 拥有的进程之外的所有人——只能更改(写入和删除)他们自己创建的文件。
光盘 /
ls -ahld tmp
我们可以看到“/tmp”的权限字符串是drwxrwxrwt
,它的所有者和组所有者都是“root”。
权限的意思是:
- d :这是一个目录
- rwx :所有者具有读取、写入和执行权限。
- rwx :组所有者具有读、写和执行权限。
- rwt :其他人都可以读取、写入和执行文件,但他们只能写入或删除他们自己创建的文件。 “t”被称为“粘性位”。
如果您看到除此以外的任何内容,请使用chmod
命令设置这些权限:
须藤 chmod 1777 /tmp
ls -ahld tmp
和以前一样,重新启动并尝试登录。
相关:如何在 Linux 上使用 SUID、SGID 和 Sticky Bits
重新配置 gdm3
Ubuntu 使用 gdm3 作为它的显示管理器。 显示管理器处理图形登录屏幕和图形显示服务器。 有时在 gdm3 上强制刷新可以解决登录循环问题。
同样,在登录屏幕上,使用“Ctrl+Alt+F3”打开一个终端窗口。
我们正在使用dpkg-reconfigure
命令来刷新 gdm3。 它确保所有必需的文件都存在并且满足依赖性。 它应该使 gdm3 处于与刚刚成功安装时相同的状态。
sudo dpkg-重新配置 gdm3
重新启动,登录,然后查看您的问题是否已解决。
重新安装 gdm3
此过程会从您的计算机中清除 gdm3 并重新安装它。 这是执行上一步的长手方式。 我已经多次看到上一步起作用,但如果不起作用,这通常会起作用。
sudo apt 清除 gdm3
sudo apt 安装 gdm3
重新启动计算机,看看是否已解决问题。
检查硬盘可用空间
硬盘空间用完与无法创建临时文件具有类似的效果。 即使对“/tmp”有正确的权限,如果您没有剩余硬盘空间,系统也无法创建文件。
从登录屏幕,像以前一样打开终端屏幕。 我们可以使用df
检查硬盘容量和可用空间,我们可以使用du
查看占用空间的内容。 我们的测试机没有可用空间问题,但这就是命令的输出结果。
使用-h
(人类可读)选项强制df
使用最适合它需要显示的数字的单位。 这比尝试以字节为单位工作更容易。
df-h
“使用百分比”列显示已使用的空间量,以百分比表示。 “已使用”和“可用”列以实际值表示。
根文件系统挂载在“/dev/sda”上,已经使用了84%的驱动器容量。 这没什么可担心的,但如果我们正在调查显示剩余空间非常少的硬盘驱动器,我们可以使用du
来发现占用空间的原因。
我们将在du
中使用-h
(人类可读)和-s
(摘要)选项,并将输出通过管道传输到sort
中。 我们与sort
一起使用的选项是-h
(对人类可读值进行排序)和-r
(反向排序)。
这将为我们提供一个排序的降序列表,其中最大的硬盘驱动器存储消费者位于列表的顶部。
du -hs * | 排序-hr
我们可以看到“图片”目录是迄今为止最大的罪魁祸首。 我们可以增强我们的du
命令来查看“图片”目录。 我们还通过head
向我们展示了 5 个最严重的违规者。
du -hs ~/图片/* | 排序-hr | 头-5
这种类型的迭代探测使我们能够识别容易实现的目标。 将最大的目录复制到其他内部驱动器或外部存储,然后从我们的主目录中删除它们,将释放最多的硬盘空间。
一旦你这样做了——不管你电脑上最大的目录是什么——你的系统应该让你登录。
跳出循环
Ubuntu 登录循环就像被锁在自己家里一样。 你有正确的钥匙,但门还是打不开。 值得庆幸的是,对于 Linux,我们可以使用其他门。 一旦我们进去了,我们就可以试着找出是什么阻止了前门的工作。
相关:如何使用 GRUB Rescue 修复 Linux