标签: Fedora

  • 解决 Fedora 43 (GNOME 49) 远程 SSH 触发 “The system will suspend now!”

    我把家里的台式机升级到Fedora 43 ,GNOME49 用起来确实挺舒服,顺手将 Fedora 43 Workstation 作为远程开发机或服务器使用时,遇到一个特别烦的问题,SSH 连着连着突然断了,因系统自动进入休眠(Suspend)而中断。我在 GNOME 图形界面的电源设置中关闭了所有自动挂起选项,系统依然可能在远程操作期间弹出 The system will suspend now! 并强制断开连接。

    1. 常规配置(图形界面)

    我开始以为在 GNOME 桌面环境的电源管理中配置这样就可以正常解决这个问题但并没有解决,没用

    1. 打开 Settings (设置) -> Power (电源)
    2. Automatic Screen Blank (自动黑屏):设置为 Off (关闭)
    3. Automatic Suspend (自动挂起):确保设置为 Off (关闭)

    2. 禁用 systemd 休眠

    当 GUI 设置失效时,说明系统底层的 systemd 策略仍处于活跃状态。对于需要保持常开的远程机器,最稳妥的方法是屏蔽(Mask)相关的休眠单元。

    2.1 诊断休眠状态

    在操作前,你可以运行以下命令查看系统当前的休眠服务状态:

    sudo systemctl status sleep.target suspend.target hibernate.target hybrid-sleep.target

    2.2 执行屏蔽命令

    通过 mask 命令,我们将休眠相关的 Target 指向 /dev/null。这是一种比 disable 更强力的手段,能够防止任何物理按键、系统 API 或 GUI 插件触发休眠。

    # 一键禁用所有休眠模式
    sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target

    执行效果: 系统将完全忽略所有的休眠请求,彻底终结 SSH 远程连接时的中断风险。

    2.3 恢复休眠(可选)

    如果你在未来需要恢复笔记本的合盖休眠或台式机的节能模式,可以使用以下命令解除屏蔽:

    sudo systemctl unmask sleep.target suspend.target hibernate.target hybrid-sleep.target

    3. 技术解析:为什么 GUI 设置后依然会断连

    在 Fedora 43 (GNOME 49) 中,这种情况通常由以下原因引起:

    • 多 Session 竞争: GNOME 的电源设置有时仅对当前的本地会话有效。如果系统停留在 GDM 登录界面,或者系统认为本地处于“无活动”状态,底层 systemd-logind 可能会接管电源策略。
    • SSH 会话识别: 系统默认可能不将纯远程 SSH 流量识别为“用户活动”,从而触发了全局的空闲休眠逻辑。

    追求“Vibe Coding”或需要高可用远程环境的开发者来说,单纯依靠 GNOME 的开关是不够的。“UI 辅助设置 + systemd 强制 Mask” 才是确保 Fedora 43 系统稳如磐石、SSH 永不断线的标准做法。

  • Fedora 开启 Wake-on-LAN(WOL)远程唤醒配置教程

    Wake-on-LAN(WOL,网络唤醒)是一种通过网络远程启动计算机的技术。设备即使处于关机或休眠状态,也可以通过接收特定的 Magic Packet(魔术包)被远程唤醒。

    该功能常用于:

    • 家庭服务器
    • NAS
    • 远程办公主机
    • 低功耗 Linux 设备

    1. 查看网卡名称

    ip link

    示例输出:

    2: enp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP>

    这里的enp3s0为当前网卡名称。

    enp3s0

    2. 检查网卡是否支持 Wake-on-LAN

    查看网卡 WOL 状态:

    sudo ethtool <网卡名称> | grep Wake-on

    例如:

    sudo ethtool enp3s0 | grep Wake-on

    输出示例:

    Supports Wake-on: pumbg
    Wake-on: d

    Wake-on 参数说明

    参数含义
    d禁用 Wake-on-LAN
    pPHY 活动唤醒
    u单播数据包唤醒
    m多播数据包唤醒
    b广播数据包唤醒
    aARP 数据包唤醒
    gMagic Packet 唤醒
    s安全 Magic Packet
    f特定过滤器唤醒

    其中最常用的是g表示支持 Magic Packet 唤醒。

    3. 查看 NetworkManager 网络连接名称

    Fedora 默认使用 NetworkManager 管理网络。

    查看当前连接:

    sudo nmcli connection show

    示例:

    NAME                UUID                                  TYPE      DEVICE
    Wired connection 1  xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx  ethernet  enp3s0

    记住连接名称:

    Wired connection 1

    4. 开启 Wake-on-LAN

    使用 nmcli 配置永久 WOL:

    sudo nmcli connection modify "Wired connection 1" 802-3-ethernet.wake-on-lan magic

    该配置在系统重启后依然有效。

    5. 重新应用网络配置

    立即生效:

    sudo nmcli device reapply <网卡名称>

    例如:

    sudo nmcli device reapply enp3s0

    6. 验证是否开启成功

    再次检查:

    sudo ethtool <网卡名称> | grep Wake-on

    如果输出Wake-on: g说明 Wake-on-LAN 已成功开启。

  • Fedora Workstation 43 初始化设置卡住,Next 按钮无响应的通用修复方案

    问题描述

    在完成 Fedora Workstation 43 的安装后,系统会进入首次开机初始化设置(Initial Setup)流程。在 Privacy(隐私设置) 页面点击 Next(下一步) 时发现按钮毫无反应,系统处于假死状态,导致无法正常进入桌面。

    这通常是由于内核在初始化阶段与特定的显示硬件(尤其是部分 NVIDIA 显卡或集成显卡)存在兼容性问题,导致图形界面渲染挂起。

    解决方案:使用 VESA 模式强制初始化

    通过在引导时临时禁用显卡硬件加速,使用 VESA 模式(纯软件渲染)可以顺利绕过此卡顿。

    1. 重启并进入编辑模式

    强制重启你的电脑。在看到 GRUB 引导菜单(选择 Fedora 内核版本的倒计时界面)时,立即按下键盘上的 e 键进入编辑模式。

    2. 修改内核启动参数

    在出现的代码页中,找到以 linux 开头的行(通常位于倒数第 3 或第 4 行)。

    1. 将光标移动到该行的末尾
    2. 先输入一个 空格
    3. 手动输入以下参数:
      inst.xdriver=vesa nomodeset

    3. 启动并完成设置

    按下 Ctrl + X 启动系统。此时系统会以低分辨率模式启动,初始化页面的 Next 按钮现在可以正常点击了。

    进入桌面后的后续处理

    成功进入桌面后,由于我们使用了 nomodeset,系统分辨率会很低且操作有延迟。请务必执行以下步骤恢复正常:

    1. 更新系统: 打开终端,运行 sudo dnf update
    2. 安装驱动: 检查并安装适合你显卡的驱动程序(如 NVIDIA 专有驱动)。
    3. 正常重启: 驱动安装完成后,直接重启电脑,无需再手动输入任何参数,系统将恢复满血性能。