Ubuntu虚拟机启动遇到“Starting Virtual Printing daemon done”的问题

解决Ubuntu启动循环问题
本文介绍了一种因设备空间不足导致Ubuntu虚拟机启动循环的问题及其解决方法。通过使用单用户模式临时进入系统并释放空间,最终成功修复启动问题。

昨晚编译嵌入式内核,编译到中间因为设备空间不足的原因未能完成,随后导致Ubuntu虚拟机启动也出现问题,启动之后输入开机密码界面就会出现:“Starting  Virtual  Printing  daemon       done”,之后Ubuntu就会重返开机密码界面,再输入密码又出现上述一行字。

由于之前没有遇到过此类问题,感到十分诡异,于是百度了一下,但发现网上貌似还没有人遇到过此类问题。本人本着复杂问题简单化的原则,认定故障的原因大概是系统设备空间不足导致,于是便想到删除系统内一些无用文件来增大系统空间,但前提是要进入系统内,现在无法启动系统就无法用常规方法来清除设备空间,只能用单用户模式的方法暂时进入系统进行操作(另外说明本人是虚拟机Ubuntu14.04系统,版本不一样可能中间步骤略有不同,但方法大致一样)方法如下:

  1. 重启ubuntu,随即长按shift进入grub菜单(貌似必须重启系统才可进入);
  2. 选择Ubuntu Kylin  GNU/Linux 高级选项;
  3. 选择recovery mode,回车确认(前面有一行字,此处省略,找到recovery mode即可);
  4. 在Recovery Menu中,选择“Root Drop to root shell prompt”,回车确认;
  5. 进入shell界面,输入root密码;
  6. 然后用mount -o remount,rw ./  ,使/路径文件系统为读写模式,这样便可自由修改;
  7. 删除一些无用文件,为系统腾出空间;
  8. 重启系统进入GUI界面:sudo reboot;

重启之后再输入开机密码,便成功启动了虚拟机。

<think>好的,我现在需要帮助用户解决在Ubuntu虚拟机启动Snap Daemon失败的问题。首先,我应该回顾用户提供的引用内容,看看有没有相关的解决方案。用户提到了引用[1]和[2],里面提到当出现“has install-snap change in progress”错误时,可以使用snap changes和snap abort命令来终止未完成的安装进程。这可能是一个关键点,因为Snap Daemon启动失败可能与未完成的安装或更新有关。 接下来,用户的问题是在虚拟机启动时发生的,可能需要检查Snap服务本身的状态。我应该考虑检查snapd服务的状态,并尝试重启它。此外,用户提到的是虚拟机环境,可能需要确认虚拟机的配置是否正确,比如CPU虚拟化是否启用,虽然这可能更多与KVM相关,但Snap本身可能依赖某些系统服务。 另外,引用[2]中还提到了Ubuntu开机报错的问题,可能与系统程序问题有关,用户可能需要运行一些系统诊断工具,比如apport,但这个问题可能与Snap Daemon的具体错误无关,需要进一步确认。 用户还提到引用[4]中关于Ubuntu版本的问题,但用户当前的问题似乎与版本无关,除非他们使用的是20.04,但用户没有明确说明。不过,根据引用[4]的建议,可能需要确认Ubuntu版本是否为18.04,因为某些服务在较新版本中可能有兼容性问题。 另外,引用[3]和[5]涉及KVM和libvirt的检查,但用户的问题是关于Snap的,可能不需要直接处理这些,除非虚拟机配置影响了系统服务。例如,如果虚拟机资源不足,可能导致服务启动失败,但这是一个更广泛的问题。 现在,综合这些信息,我需要整理出步骤: 1. 检查是否有未完成的Snap操作,使用snap changes,如果有Doing状态的任务,用snap abort终止。 2. 确保snapd服务正常运行,检查状态并重启。 3. 检查系统日志(journalctl)来查看具体的错误信息。 4. 确认Ubuntu版本是否为推荐版本,如18.04,以避免兼容性问题。 5. 确保系统有足够的资源(如磁盘空间、内存)供Snap使用。 6. 如果问题依旧,考虑重新安装snapd。 可能需要用户一步步尝试这些步骤,并观察结果。同时,用户是在虚拟机环境中,可能需要检查虚拟机设置是否正确,比如是否启用了足够的资源或虚拟化支持,但Snap Daemon本身不直接依赖虚拟化支持,所以这可能不是主要原因。 还需要注意,用户的问题是在启动时发生,可能与启动时自动启动的服务有关,检查是否有其他服务冲突,或者启动脚本的问题。另外,文件系统权限问题也可能导致Snap Daemon启动失败,可能需要检查相关目录的权限。 最后,如果所有方法都无效,建议用户备份数据并考虑重新安装Snap或升级系统,但这是最后的手段。</think>### 分步解决方案:Ubuntu虚拟机启动Snap Daemon失败的解决方法 #### 1. **终止未完成的Snap操作** 当Snap安装或更新进程被意外中断时,可能导致后台任务阻塞Snap Daemon的正常启动。执行以下命令检查并终止异常任务: ```bash snap changes # 查看所有Snap操作状态 sudo snap abort <编号> # 终止标识为"Doing"的任务(编号替换为实际数字) ``` 此操作可清除残留的安装进程,解除Snap Daemon的阻塞状态[^1][^2]。 --- #### 2. **重启Snap核心服务** 若服务未正常加载,强制重启`snapd`服务以恢复基础功能: ```bash sudo systemctl restart snapd.service # 重启Snap核心服务 sudo systemctl status snapd.service # 确认服务状态显示"active (running)" ``` --- #### 3. **检查系统日志定位错误** 通过系统日志分析具体错误原因: ```bash journalctl -u snapd.service -b --no-pager # 查看当前启动周期的Snap日志 ``` 重点关注以下错误类型: - **权限问题**:如`Permission denied`,需检查`/var/snap`目录权限 - **存储空间不足**:使用`df -h`确认磁盘剩余空间 - **依赖冲突**:提示缺失库文件时需修复依赖关系 --- #### 4. **验证Ubuntu版本兼容性** Snap在Ubuntu 18.04 LTS中兼容性最佳[^4],执行以下命令确认系统版本: ```bash lsb_release -a # 输出示例:Description: Ubuntu 18.04.6 LTS ``` 若为20.04或更高版本,建议降级或检查Snap更新: ```bash sudo snap refresh # 更新所有Snap软件包 ``` --- #### 5. **修复文件系统权限** Snap依赖特定目录权限,执行修复命令: ```bash sudo chown root:root /var/snap # 重置目录所有权 sudo chmod 755 /var/snap # 设置正确权限 sudo systemctl restart snapd # 重启服务使配置生效 ``` --- #### 6. **完全重装Snap(终极方案)** 若问题仍未解决,彻底卸载后重新安装: ```bash sudo apt purge snapd -y # 卸载Snap及相关配置 sudo rm -rf /var/snap /snap # 删除残留文件 sudo apt install snapd -y # 重新安装最新版Snap ``` --- ### 关键问题排查流程图 ```mermaid graph TD A[Snap Daemon启动失败] --> B{检查未完成操作} B -->|存在阻塞任务| C[终止snap abort] B -->|无阻塞任务| D{检查服务状态} D -->|服务异常| E[重启snapd] D -->|服务正常| F{分析系统日志} F -->|权限问题| G[修复目录权限] F -->|资源不足| H[清理磁盘空间] F -->|版本冲突| I[降级Ubuntu] ```
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值