You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

手动分区安装Ubuntu后rsyslog、dbus等服务启动失败的已知问题及解决方法咨询

手动分区安装Ubuntu后rsyslog、dbus等服务启动失败的已知问题及解决方法咨询

Hey,看起来你碰到了手动分区(尤其是加密根分区+独立/boot分区)安装Ubuntu时的典型服务启动故障——这类情况在社区里确实有不少用户反馈过,属于特定分区配置下安装脚本的疏漏问题。下面给你梳理已知的原因和可行的解决步骤:

问题根源

核心原因是手动分区+加密根分区的组合下,Ubuntu安装程序没有正确初始化根分区内的一些必要临时目录、用户组或文件权限,导致依赖这些资源的systemd服务启动失败:

  • systemd-resolved和systemd-timesyncd的chdir错误,大概率是缺少了/run/systemd/resolve/run/systemd/timesync这类tmpfs临时目录
  • dbus启动失败会连锁导致rsyslog、avahi-daemon等依赖系统消息总线的服务无法正常工作,进而阻碍用户登录流程
  • thermald的故障则是安装程序遗漏了power用户组的创建

分步解决方法

所有操作建议在recovery模式的root shell下进行(启动时选择recovery mode,再选root选项进入命令行):

  1. 修复systemd-resolved与systemd-timesyncd的目录问题
    手动创建缺失的临时目录并设置正确权限:

    mkdir -p /run/systemd/resolve /run/systemd/timesync
    chown systemd-resolve:systemd-resolve /run/systemd/resolve
    chown systemd-timesync:systemd-timesync /run/systemd/timesync
    chmod 755 /run/systemd/resolve /run/systemd/timesync
    

    由于这些目录属于tmpfs(重启后会清空),需要确保systemd能自动重建它们:检查/usr/lib/tmpfiles.d/systemd.conf,如果没有以下内容就手动添加:

    d /run/systemd/resolve 0755 systemd-resolve systemd-resolve -
    d /run/systemd/timesync 0755 systemd-timesync systemd-timesync -
    
  2. 修复dbus与rsyslog的启动故障
    dbus启动失败通常是/var/run/dbus目录缺失或权限错误,执行以下命令修复:

    mkdir -p /var/run/dbus
    chown messagebus:messagebus /var/run/dbus
    chmod 755 /var/run/dbus
    

    手动启动dbus服务,再尝试启动rsyslog:

    systemctl start dbus
    systemctl start rsyslog
    

    同样,为了持久化修复,检查/usr/lib/tmpfiles.d/dbus.conf,确保包含:

    d /var/run/dbus 0755 messagebus messagebus -
    
  3. 处理其他服务的遗留问题

    • avahi-daemon:创建缺失的临时目录并设置权限:
      mkdir -p /run/avahi-daemon
      chown avahi:avahi /run/avahi-daemon
      
    • thermald:你已经创建了power组,可额外确认临时目录权限:
      mkdir -p /run/thermald
      chown root:power /run/thermald
      
  4. 验证并持久化所有修复
    执行以下命令让systemd重新加载配置,然后重启系统:

    systemctl daemon-reload
    reboot
    

    如果重启后问题依然存在,可能是加密根分区的initramfs缺少必要配置,重新生成initramfs:

    update-initramfs -u -k all
    

已知情况说明

这类问题确实是Ubuntu安装程序在手动加密根分区+独立/boot分区配置下的已知bug,主要是安装脚本跳过了部分tmpfs目录和用户组的初始化步骤。而自动分区模式下安装程序会自动处理这些细节,因此不会出现故障。

备注:内容来源于stack exchange,提问作者hsivonen

火山引擎 最新活动