ubuntu玩坏之后
昨天,安装openssh-server的时候,与openssh-client冲突,故卸载openssh-client然后重装openssh-server解决问题。
今天,想装emacs,发现跟perl冲突,卸载perl之后,无法开机了。
经验教训是:不要随意删除安装软件,以免搞崩系统软件
如果搞崩了可视化,无法进入桌面系统。按下ctrl+shift+f1可以进入linux的命令行界面。如果可以连网,那么就能够修复问题。
如果无法联网,那么需要在命令行下连接wifi。
linux下使用ctrl+shift+f1进入命令行,使用ctrl+shift+f7进入可视化界面。
有一次,我把aliyun的镜像放到了/etc/apt/source.list里面,执行sudo apt-get update 和sudo apt-get upgrade两个命令之后,卸载了大量软件导致无法进入桌面系统。
进入BIOS界面,开启从U盘启动的选项,试用ubuntu,便可进入可视化界面了。
root模式下如果可以联网
$ sudo rm /var/lib/apt/lists/lock
$ sudo rm /var/lib/dpkg/lock
$ sudo rm /var/lib/dpkg/lock-frontend
$ sudo dpkg --configure -a
$ sudo apt clean
$ sudo apt update --fix-missing
$ sudo apt install -f
$ sudo dpkg --configure -a
$ sudo apt upgrade
$ sudo apt dist-upgrade
安装多个版本的系统之后,开机进入grub界面
- 先使用ls命令,找到Ubuntu的安装在哪个分区:
grub>ls
会罗列所有的磁盘分区信息,比方说:
(hd0,1),(hd0,5),(hd0,3),(hd0,2)
- 然后依次调用如下命令: X表示各个分区号码
如果/boot没有单独分区,用以下命令:
ls (hd0,X)/boot/grub
如果/boot单独分区,则用下列命令:
ls (hd0,X)/grub
正常情况下,会列出来几百个文件,很多文件的扩展名是.mod和.lst和.img,还有一个文件是grub.cfg。假设找到(hd0,5)时,显示了文件夹中的文件,则表示Linux安装在这个分区。
3,如果找到了正确的grub目录,则设法临时性将grub的两部分关联起来,方法如下:
grub>set root=(hd0,5)
grub>set prefix=(hd0,5)/boot/grub
然后调用如下命令,就可以显示出丢失的grub菜单了。
grub>normal
然后会出来启动的图形界面,点击进入Linux中,对grub进行修复。
进入ubuntu之后,在终端执行:
sudo update-grub
sudo grub-install /dev/sda
(sda是你的硬盘号码,千万不要指定分区号码,例如sda1,sda5等都不对)
重启测试是否已经恢复了grub的启动菜单。
参考资料
https://zhuanlan.zhihu.com/p/30159433
最新文章
- GIT分布式版本控制系统
- python对文件的操作
- linux下安装nginx后开机启动篇
- Linux Shell系列教程之(十四) Shell Select教程
- Android各个版本 版本号对应关系表
- [转]SQLite C/C++
- 索引列上的统计 <;第一篇>;
- Qt for Android 部署流程分析
- Django开发环境配置
- iOS扩展——Objective-C开发编程规范
- scrollWidth,clientWidth与offsetWidth的区别
- PhotoPickerDemo【PhotoPicker0.9.8的个性化修改以及使用(内部glide版本号是3.7.0)】
- 【转载】java 中 String s = new String(";abc";) 创建了几个对象?!
- 2018-2019-2 《Java程序设计》第9周学习总结
- 【转】JAVA多线程实现的四种方式
- Java基础(Java补码)
- spring面试问题与答案集锦
- input修改placeholder文字颜色
- vue 如何在循环中绑定v-model
- Mysql 主从服务器数据同步