前面一些碎碎念:

    电脑装的双系统,之前都还好着,今天突然ubuntu开机的时候黑屏了,左上角有光标在闪烁,也查了一些资料,基本上大家的都是驱动有问题,还有内存问题。(个人建议:谨慎删除驱动或重装之类的操作,防止因操作不当导致一系列的麻烦)

    看了一些教程,说下我的调试之路吧。。。

    在黑屏,光标闪烁的那一页,ctrl+shift+f1,然后出现login,输入用户名和密码,下面就会出现和终端一样的界面,我尝试了nvidia-smi,发现输出没问题,那就应该不是驱动的问题。内存我自己感觉也不是,所以再找其他问题。

    中间还进行了一些ubuntu的高级选项中的一些操作,在其他文章中看的解决方法,但是并没有效果。

   然后重启了一下,到了选择ubuntu、ubuntu的高级选项(Advanced ..)、windows...的那个界面<GRUB界面>

一、在 GRUB 启动界面:

  • 选择你当前的 Ubuntu 启动项;

  • e 进入编辑;

  • 确保 quiet splash 改成 nomodeset,或直接删掉 quiet splash

  • 不要重复写多个 nomodeset,只保留一个

  • 然后按 Ctrl+XF10 启动。

    等待黑屏 + 光标闪烁出现后,Ctrl + Alt + F3(或 F2~F6) 尝试进入 tty 命令行界面。

若成功进入终端,登录后继续修复。

执行结果:并没有成功进入终端,又进入了之前那个命令行界面。 

    能够成功进入 tty,这说明系统本身是正常启动的,问题出在图形界面(GUI)无法启动。 

    现在的目标是:

二、修复图形界面登录失败问题,重新进入桌面环境。

确认图形登录服务是否运行(gdm3/lightdm/sddm)  

systemctl status gdm3

看到inactive,输入:

sudo systemctl restart gdm3

目前的状态是:

    在 tty 中运行 sudo systemctl restart gdm3 后,终端“卡住”,只剩下一个闪烁的光标,无法继续输入。

这是正常现象(这是预期行为,不是卡死!)。原因如下:

    gdm3 是图形登录服务,当执行:

sudo systemctl restart gdm3

  系统会尝试重启图形界面,这时候:

  • tty 所在的图形会话被“杀掉”或中断;

  • 如果图形服务成功启动,你会看到界面自动切换到 GUI;

  • 如果失败,系统可能回退到黑屏 + 光标,或者继续卡住。

查看图形界面崩溃原因日志(看不太懂,不做maybe也行)

执行:

journalctl -xe | grep gdm

或者查看图形界面的日志:

cat ~/.xsession-errors cat /var/log/Xorg.0.log | grep EE

这些日志会告诉我们 gdm3 或 X server 是否崩溃、加载失败。

临时启动图形界面看报错(测试)

执行:

startx

 执行结果:journalctl -xe | grep gdm 无反应,startx运行后未启动图形界面 

问了gpt: 

第 1 步:查看 startx 报错输出内容(关键)

    你说 startx 无图形界面,但没有贴报错。请你执行以下命令,并贴出部分内容:

cat ~/.xsession-errors

或者:

cat /var/log/Xorg.0.log | grep EE

这一步是判断:是不是 X server 根本启动不了,我们才能继续下一步。

第 2 步:重装桌面环境(直接覆盖修复)

    无论问题是 GNOME 损坏、X server 崩溃、配置错误等,以下命令会强制恢复你默认的 Ubuntu 桌面环境:

sudo apt update sudo apt install --reinstall ubuntu-desktop gdm3 xorg dbus

 注:这一步不会删除你的文件,但会重装 GUI 相关组件。

运行结果;

sudo apt update

报错apt:error while loading shared libraries:libstdc++.so.6: cannot open shares object file: no such file or directory 

这意味着:

  • 你的系统中 C++ 运行时库 libstdc++.so.6 丢失或损坏

  • 所有依赖它的工具(如 aptdpkggcc、图形界面等)都会无法正常工作;

  • 这可能是系统更新时中断、误删或磁盘错误导致的。

 然后就在想能不能先跳过这一步,修复图形化界面后再解决这个问题,结果:

你现在无法跳过修复 libstdc++.so.6,也就无法修复图形化界面。

原因如下:

    你现在的系统缺失了关键运行库:libstdc++.so.6,它是 GCC 和 C++ 程序运行的必需组件,影响范围非常广。

  • apt 无法运行;

  • dpkgsystemctlgdm3Xorgstartx这些 GUI 相关程序全部依赖它

  • 甚至 桌面环境本身(如 GNOME)启动器、显示服务等也用不到。

所以:图形界面的一切恢复行为都会失败,除非你先修复这个库。

二、修复步骤:(主要的解决方法)

1、libstdc++6(适用于 Ubuntu 20.04)国内镜像地址:

下载这个 .deb 文件:

阿里云镜像站直链

https://mirrors.aliyun.com/ubuntu/pool/main/g/gcc-10/libstdc++6_10.5.0-1ubuntu1~20.04_amd64.deb

文件名:

libstdc++6_10.5.0-1ubuntu1~20.04_amd64.deb

下载后:

  1. 把这个 .deb 文件放到 U 盘;

  2. 插入 Ubuntu;

  3. 进入 tty;

2、重新识别 U 盘设备名

执行 lsblk 看设备结构
lsblk

看到类似这样的输出:

重点是找到带有 RM 1(表示可移动设备) 的项,如:

表示 U 盘的设备是:/dev/sda1


3、正确挂载 U 盘并修复步骤如下

(1)挂载 U 盘
sudo mkdir -p /mnt/usb sudo mount /dev/sda1 /mnt/usb cd /mnt/usb ls

确认你能看到:

libstdc++6_10.5.0-1ubuntu1~20.04_amd64.deb

(2)解压并复制库文件
dpkg-deb -x libstdc++6_*.deb temp sudo cp temp/usr/lib/x86_64-linux-gnu/libstdc++.so.6* /usr/lib/x86_64-linux-gnu/ sudo ldconfig

(3)验证是否修复成功
apt --version

apt --version 运行后apt 2.0.10(amd64)

4、修复图形界面(GUI)

(1)更新软件列表
sudo apt update

(2)重装桌面环境 + 图形服务
sudo apt install --reinstall ubuntu-desktop gdm3 xorg

这一步可能会下载几十~几百 MB,稍等片刻。

(3)设置默认显示管理器为 GDM3(图形登录服务)
sudo dpkg-reconfigure gdm3

如果出现界面,选择 gdm3,然后回车确认。

报错:gdm.service is not active,cannot reload ...

具体操作步骤:
1) 查看 gdm 服务状态
sudo systemctl status gdm.service

看看有没有报错信息。

2.)尝试启动 gdm 服务
sudo systemctl start gdm.service

如果成功,执行:

sudo systemctl status gdm.service

确认是否已激活。

 运行结果:sudo systemctl start gdm.service 回车后进入了图形化界面 

3.)重启测试

执行:

sudo reboot

看开机是否能直接进入图形界面。

4、正常使用系统

如果开机能正常进入桌面,问题就彻底解决了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/diannao/89497.shtml
繁体地址,请注明出处:http://hk.pswp.cn/diannao/89497.shtml
英文地址,请注明出处:http://en.pswp.cn/diannao/89497.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一文讲清libmodbus在STM32上基于FreeRTOS的移植

libmodbus 开发库概述 libmodbus是一个免费的跨平台支持RTU和TCP的Modbus库&#xff0c;遵循LGPL V2.1协议。libmodbus支持Linux、 Mac Os X、 FreeBSD、 QNX和Windows等操作系统。 libmodbus可以向符合Modbus协议的设备发送和接收数据&#xff0c;并支持通过串口或者TCP网络进…

go语言安装达梦数据完整教程

一、安装 go-dm 驱动 1. 使用 go get 命令安装 # 打开PowerShell或命令提示符 go get github.com/dmdbms/go-dm# 若网络问题&#xff0c;配置代理 go env -w GOPROXYhttps://goproxy.cn,direct2. 验证驱动安装 go list -m github.com/dmdbms/go-dm# 预期输出类似 github.com…

华为云Flexus+DeepSeek征文|基于Dify构建音视频内容转录工作流

华为云FlexusDeepSeek征文&#xff5c;基于Dify构建音视频内容转录工作流 一、构建音视频内容转录工作流前言二、构建音视频内容转录工作流环境2.1 基于FlexusX实例的Dify平台2.2 基于MaaS的模型API商用服务 三、构建音视频内容转录工作流实战3.1 配置Dify环境3.2 配置Dify工具…

Pandas6(数据清洗2)——置换和随机采样、get_dummies、扩展数据类型、字符串处理函数

数据清洗2 一、置换和随机采样&#xff08;permutation,sample&#xff09; 随机置换&#xff08;打乱排序&#xff08;洗牌&#xff09;&#xff09;函数&#xff1a;numpy.random.permutation &#xff0c;可以对一个序列进行随机排序&#xff0c;常用于数据集随机划分等场景…

按月设置索引名的完整指南:Elasticsearch日期索引实践

按月设置索引名的完整指南:Elasticsearch日期索引实践 在时序数据场景中,按月设置索引名(如logs-2024-01)是优化查询效率、降低管理成本的关键策略。以下是三种实现方案及详细步骤: 方案一:索引模板 + 日期数学表达式(推荐) 原理:利用ES内置的日期数学表达式动态生成…

西南交通大学【机器学习实验7】

实验目的 理解和掌握朴素贝叶斯基本原理和方法&#xff0c;理解极大似然估计方法&#xff0c;理解先验概率分布和后验概率分布等概念&#xff0c;掌握朴素贝叶斯分类器训练方法。 实验要求 给定数据集&#xff0c;编程实现朴素贝叶斯分类算法&#xff0c;计算相应先验概率&a…

java生成pdf文件

1.依赖 <dependency><groupId>com.itextpdf</groupId><artifactId>itext-core</artifactId><version>8.0.4</version><type>pom</type></dependency> 2.代码 package org.example;import com.itextpdf.io.image…

macOS挂载iOS应用沙盒文件夹

背景 工具 libimobiledevice: linux&#xff0c;macOS等与ios设备通信是的工具 macFUSE 是 macOS 文件系统扩展的“引擎”&#xff0c;支持开发者创建各类虚拟文件系统。 iFUSE 是专为 iOS 设备设计的“连接器”&#xff0c;需依赖 macFUSE 实现功能。 若需访问 iPhone/iP…

嵌入式软件面经(四)Q:请说明在 ILP32、LP64 与 LLP64 三种数据模型下,常见基本类型及指针的 sizeof 值差异,并简要解释其原因

从事嵌入式开发深入理解 ILP32、LP64、LLP64 三种主流数据模型及其在平台上的实际表现&#xff0c;可以帮助我们避免诸如类型越界、结构错位、指针截断等致命错误。 一、何为数据模型&#xff1f;为何重要&#xff1f; 数据模型&#xff08;Data Model&#xff09;是指在某一编…

计算机组成原理与体系结构-实验二 ALU(Proteus 8.15)

目录 一、实验目的 二、实验内容 三、实验器件 四、实验原理 五、实验步骤 六、思考题 一、实验目的 1、了解算术逻辑运算器&#xff08;74LS181&#xff09;的组成和功能。 2、掌握基本算术和逻辑运算的实现方法。 二、实验内容 设计算数逻辑运算器系统的通路&#x…

ubuntu下免sudo执行docker

前言 在ubuntu中&#xff0c;默认是无法使用root账号的&#xff0c;安装完docker后&#xff0c;不可避免的要使用sudo来执行docker命令&#xff0c;这就让运维变得很麻烦 避免sudo # 添加当前用户到 docker 组 sudo usermod -aG docker $USER# 刷新组权限 newgrp docker# 验…

微处理原理与应用篇---STM32寄存器控制GPIO

在 ARM 架构下使用 C 语言控制 32 位寄存器实现 GPIO 操作&#xff0c;需结合芯片手册进行寄存器映射和位操作。以下以 STM32F103&#xff08;Cortex-M3 内核&#xff09;为例&#xff0c;详细介绍实现方法&#xff1a; 一、STM32F103 GPIO 控制&#xff08;标准外设库&#x…

基于OPUS-MT模型的中译英程序实现

这是我的kaggle账号名“fuliuqin” 代码参考如下&#xff1a; nlp.paperflq | KaggleExplore and run machine learning code with Kaggle Notebooks | Using data from [Private Datasource]https://www.kaggle.com/code/fuliuqin/nlp-paperflq 目录 绪论 研究背景与意义 研究…

炸鸡派-定时器基础例程

定时器简介 基本定时器&#xff0c;计数中断、产生DMA请求。 通用定时器&#xff0c;PWM输出、输入捕获、脉冲计数。 高级定时器&#xff0c;输出比较、互补输出带死区控制、PWM输入。 中心对齐的计数模式可以生成对称的PWM波形信号。计数可以先增后减。 这种模式下&#xff…

利用不坑盒子的Copilot,快速排值班表

马上放暑假了&#xff0c;有多少人拼命排值班表的&#xff1f; 今天用我亲身制作值班表的一些Excel操作&#xff0c;给大家分享一些在Excel中的小技巧&#xff0c;需要的及时收藏&#xff0c;有一天用得上~ 值班表全貌 先给大家看看我制作的值班表的样子&#xff0c;应该大家…

Linux 面试知识(附常见命令)

目录结构与重要文件 Linux 中一切皆文件&#xff0c;掌握目录结构有助于理解系统管理与配置。 目录说明/根目录&#xff0c;所有文件起点/bin基本命令的可执行文件&#xff0c;如 ls, cp/sbin系统管理员用的命令&#xff0c;如 shutdown/etc配置文件目录&#xff0c;如 /etc/…

Lua 安装使用教程

一、Lua 简介 Lua 是一门轻量级、高性能的脚本语言&#xff0c;具有简洁语法、嵌入性强、可扩展性高等特点。广泛应用于游戏开发&#xff08;如 Roblox、World of Warcraft&#xff09;、嵌入式开发、配置脚本、Nginx 扩展&#xff08;OpenResty&#xff09;等领域。 二、Lua …

SPAD像素概念理解

SPAD(Single Photon Avalanche Diode,单光子雪崩二极管)像素是一种能够检测单个光子的超灵敏光电探测器,其核心原理是通过雪崩倍增效应将单个光子产生的微弱电流信号放大到可观测水平。 一、工作原理 雪崩倍增效应 当SPAD反向偏压超过其击穿电压时,进入盖革模式(Geiger M…

SSSSS

#include <iostream> void LineOf(bool** n1, bool** n2, int column, int raw, int* result) { for (int i 0; i < column; i) { int d -1, n -1; // 反向遍历&#xff0c;找最后一个 true for (int j raw - 1; j > 0; j--) { …

【AI智能体】社交娱乐-智能助教

智能助教是扣子官方提供的教育类智能体模板。助教模板分为学习陪伴和作业批改两种场景&#xff0c;分别适用于学生角色和教师角色&#xff0c;你可以根据需求选择对应的模板&#xff0c;并将其改造为其他学科或其他教育阶段的智能助教。 模板介绍 在智能学伴/助教的落地过程中…