答案1
我遇到了类似的问题,不是在从 18 升级到 20.04 之后,而是在运行之后sudo apt upgrade
。出于某种原因,它更新到的 nvidia 驱动程序无法使用笔记本电脑内置屏幕。它显示计算机正常启动,但在文件系统检查行之后,它似乎卡在了那个屏幕上。不过,在连接到 HDMI 端口的显示器上一切都运行正常。
如果没有外接显示器,我无法访问虚拟终端或任何东西,它似乎只是卡在文件系统检查上。在没有访问外接显示器的情况下,我让它工作起来的方法是启动到“安全模式”。从安全模式启动后,我能够访问虚拟终端,并可以使用切换到集成显卡sudo prime-select intel
。显然,在选择集成驱动程序的情况下无法使用外接显示器。
给我带来问题的 NVidia 驱动程序版本是 470。
只是在这里写下这个,可能很多人都不会遇到这种情况,但从表面上看,它表现出完全相同的症状。
恢复使用最新的 Nvidia 驱动程序 (470.63.01) 并使用内核 5.11.0-34-generic。需要从 BIOS 中选择“独立显卡”而不是“混合显卡”才能使内置屏幕正常工作。
答案2
让我们首先通过手动操作来检查一下基础知识fsck
...
- 启动至 Ubuntu Live DVD/USB
- 打开
terminal
窗户 - 类型
sudo fdisk -l
- 识别“Linux 文件系统”的 /dev/XXXX 设备名称
- 输入
sudo fsck -f /dev/XXXX
# 用你之前找到的数字替换 XXXX - 如果有错误,请重复 fsck 命令
- 类型
reboot
更新#1:
啊,您对磁盘的分区稍有不同,因此我们fsck
也必须对其他分区进行分区。
- 启动至 Ubuntu Live DVD/USB
- 打开
terminal
窗户 - 输入以下命令...
- sudo fsck -f /dev/sda4
- sudo fsck -f /dev/sda1
- sudo fsck -f /dev/sdb1
- sudo fsck -f /dev/sda5
更新 #2:
我们正在调查 sdb(HDD)上的高读取/寻道/ECC 错误率。
也可能存在 Ubuntu 软件问题或 sda(SSD)固件问题。
更新 #3:
查看gparted
sda (SSD) 时我发现/var
它已满。
我建议:
/home/username
来自 sdb (HDD)的重要文件的完整备份- 如果需要,在 sda (SSD) 上执行固件更新
- 擦除 sda(SSD)并安装新鲜的Ubuntu 无需单独
/var
或/home
- 不要在 sdb 上安装任何东西,我们将进行坏块扫描,看看 fsckd 问题是否消失
更新 #4:
在 sdb 上进行坏块扫描...
如果 sdb 不为空,请为下面的 sdXX 参数使用适当的分区号(在您的情况下可能是 sdb1)。如果 sdb 为空,请确保至少有一个较大的 ext4 分区(可能是 sdb1),然后将其用于 sdXX。
注意:不要中止坏块扫描!
sudo e2fsck -fcky /dev/sdXX
# 只读测试
或者
sudo e2fsck -fccky /dev/sdXX
# 非破坏性读写测试(受到推崇的)
-k 很重要,因为它会保存之前的坏块表,并将任何新的坏块添加到该表中。如果没有 -k,您将丢失所有之前的坏块信息。
-fccky 参数...
-f Force checking even if the file system seems clean.
-c This option causes e2fsck to use badblocks(8) program to do a
read-only scan of the device in order to find any bad blocks.
If any bad blocks are found, they are added to the bad block
inode to prevent them from being allocated to a file or direc‐
tory. If this option is specified twice, then the bad block
scan will be done using a non-destructive read-write test.
-k When combined with the -c option, any existing bad blocks in the
bad blocks list are preserved, and any new bad blocks found by
running badblocks(8) will be added to the existing bad blocks
list.
-y Assume an answer of `yes' to all questions; allows e2fsck to be
used non-interactively. This option may not be specified at the
same time as the -n or -p options.
更新 #5:
坏块阻止已完成。SMART 数据表明读取/ECC 错误现在为零!如果读取/寻道/ECC 错误返回,则怀疑 SATA 电缆或 SATA 端口有问题。监控 sdb 的 SMART 数据。
重新安装 Ubuntu,无需特殊分区,除了 ext4 sdb1 上的 /home 以及可能的 sdb2 NTFS 分区(如果您与 Windows 共享文件)。
答案3
在我的例子中,由于根分区已满,fsck 无法完成。从 liveUSB 启动并腾出空间(例如删除 systemd 日志)解决了该问题。