uos系统安装一个软件包导致系统启动失败
一、问题描述
- 安装一个非uos仓库的软件包xyz.deb
- 此时系统运行很卡顿,然后重启系统
- 重启后画面一直停留在系统logo界面,无法进入安装界面
- 按crtl + alt + f2 进入tty2,无法登入系统
猜测是安装xyz.deb包导致系统启动失败的,所以想卸载xyz.deb包。由于无法登入系统,需要使用救援模式;
二、进入救援模式
- 可以使用一个uos安装盘,在bios界面选择启动项为U盘,从U盘启动。
此时ls /media/uos/ 可以看到Roota 、Rootb、_dde_data
如果没有的话需要自己手动挂载。
三、卸载软件包
- 使用chroot命令进入我们的内核,sudo chroot /media/uos/Roota
- 执行dpkg -r xyz
发现执行失败,原因是没有/var/lib/dpkg目录,然后执行ls /var 发现/var目录是空的,那么我们之前的/var目录跑哪了呢? 只要硬盘没有损坏,/var目录肯定还在硬盘上,经过查找发现/var目录在_dde_data分区中。/media/uos/_dde_data - 将/media/uos/_dde_data/var目录下的内容拷贝到/media/uos/Roota/var下面
- sudo chroot /media/uos/Roota,然后执行dpkg -r xyz卸载,此时便可以成功卸载
- 卸载成功后恢复/media/uos/Roota/var,清空/media/uos/Roota/var目录下的内容
- 重启系统便可以正常进入系统了