root@ubuntu:/home/ubuntu# pwd

/home/ubuntu



root@ubuntu:/home/ubuntu# lsblk

NAME                 
MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT

fd0                    
2:0   
1   
4K  0 disk

sda                    
8:0   
0   20G  0
disk

├─sda1                 
8:1   
0  243M  0 part

├─sda2                 
8:2   
0   
1K  0 part

└─sda5                 
8:5    0
19.8G  0 part

 
├─ubuntu--vg-root  
252:0    0
17.3G  0 lvm

  └─ubuntu--vg-swap_1
252:1   
0  2.5G  0 lvm

sr0                   
11:0   
1  1.1G  0 rom 
/cdrom

loop0                  
7:0   
0   
1G  1 loop /rofs



root@ubuntu:/home/ubuntu# mount /dev/mapper/ubuntu--vg-root
/mnt



root@ubuntu:/home/ubuntu# mount /dev/sda1 /mnt/boot/



root@ubuntu:/home/ubuntu# mount -o bind /dev/ /mnt/dev/



root@ubuntu:/home/ubuntu# chroot /mnt/



root@ubuntu:/# grub-install /dev/sda

Installing for i386-pc platform.

/proc/devices: fopen failed: 没有那个文件或目录

device node not found

device node not found

device node not found

device node not found

device node not found

device node not found

/proc/devices: fopen failed: 没有那个文件或目录

device node not found

/proc/devices: fopen failed: 没有那个文件或目录

device node not found

/proc/devices: fopen failed: 没有那个文件或目录

device node not found

Installation finished. No error reported.



root@ubuntu:/#





环境如下:

划分单独的/boot分区,root在lvm上的一个lv里面。

此例中,/boot为/dev/sda1,root为/dev/mapper/ubuntu--vg-root。

使用ubuntu光盘的live系统来启动,以修复原本硬盘上的grub2。



注意的点:

1、挂载了vg-root的LV之后,还要挂载单独的/boot,即/dev/sda1,而且要挂载到vg-root已挂载的目录里面。

2、一定要把当前系统的/dev绑定到目标系统的/dev里,即/mnt/dev。

3、建议把grub安装到硬盘的整个MBR,而不是单独的sdaX分区,这样会避免很多乱七八糟的问题。

4、Grub安装成功的标志是输出 Installation finished. No error reported.

5、理论上只要有live系统,可以修复任意发行版本的grub2,并不局限于已安装好的ubuntu或是ubuntu的live
iso光盘,毕竟Grub2并不区分发行版。





如果你有兴趣研究一下LVM-root环境下/boot分区是否必要以及相关的知识,可参考(全英文):

http://askubuntu.com/questions/76095/what-is-the-use-of-boot-lvm-based-in-partitioning

修复linux的grub2引导(单独/boot,lvm-root)的更多相关文章

  1. kali linux 更新软件源,安装中文输入法,修复Linux与windows引导菜单解决windows引导丢失

    1. 更新软件源打开sources.list文件,进行添加更新源:leafpad /etc/apt/sources.list 2. 添加软件源#官方源 deb http://http.kali.org ...

  2. 一次修复linux的efi引导的集中方法总结记录

    本文通过MetaWeblog自动发布,原文及更新链接:https://extendswind.top/posts/technical/grub_uefi_repair 起因:EFI分区被删除导致引导问 ...

  3. 日常系统维护之修复linux的grub引导

    恩,不知道怎么表达为win10的更新很烦人,其实我感觉windows用的不是那么顺手,但是制作视频的时候还是要用到,图片的话linux也可以胜任,毕竟GUN IMAGE还是挺不错的,但到了视频制作方面 ...

  4. 重装Windows后修复Linux引导

    装了双系统(Windows和Linux)的机器重新安装Windows后会导致Linux的引导丢失而无法进入原先的Linux系统[其原因是Windows会覆盖原先MBR中的Linux的BootLoade ...

  5. Linux内核升级、GRUB2引导故障处理与密码破解

    目录 内核升级 GRUB2内核启动设置 GRUB2引导菜单加密 GRUB2引导故障及修复 救援模式管理 Rhel7破解root密码 内核升级 查看当前内核版本: uname  -r 查看可升级内核:  ...

  6. U盘+GRUB2引导PE或linux镜像

    利用U盘制作启动盘,引导WinPE.Linux安装的文章多如牛毛,与他们相比本文的特点有: 1.用且仅用grbu2做引导.不使用grub4dos,不是使用msdos mbr转到活动分区,到ntldr, ...

  7. 在grub的rescue模式修复linux引导

    今天在windows 10系统收到系统更新通知,没看清楚就手贱点了马上更新.以为只是像那些普通更新一样重启一下更新就完了,万万没想到这个是覆盖更新,也就是说这是一个全新的系统更新而不是系统补丁.在安装 ...

  8. [FW]修复ubutnu12.04+win7的grub2引导

    [转]修复ubutnu12.04+win7的grub2引导 原文位置:http://wenku.baidu.com/view/b6b7c9926bec0975f465e2f8.html ps:我使用的 ...

  9. 使用grub2引导进入Linux或Window系统

    很多人在一通烂搞之后把自己的grub搞崩了(比如我当时手贱删除了boot分区)虽然后来又装了grub,但是进入grub后还是没有引导,只有一个孤零零的命令行界面 这时候应该怎么办呢?首先当然是想进入系 ...

随机推荐

  1. 移动端 input 获取焦点后弹出带enter(类似于搜索,确定,前往)键盘,以及隐藏系统键盘

    一:调出系统带回车键的键盘 在项目中经常有输入框,当输入完成后点击确定执行相应的动作.但是有些设计没有确定或者搜索按钮,这就需要调用系统键盘,点击系统键盘的确定后执行相应动作. 但是单纯的input是 ...

  2. LeetCode 437. Path Sum III (STL map前缀和)

    找遍所有路径,特判以根为起点的串即可. 代码: /** * Definition for a binary tree node. * struct TreeNode { * int val; * Tr ...

  3. Codeforces 845C. Two TVs 思路:简单贪心算法

    题目: 题目原文链接:http://codeforces.com/contest/845/problem/C 题意:现在我们有一个电视清单,有两个电视,电视清单上有每一个节目的开始时间和结束时间. 电 ...

  4. 如何在SQLServer中处理每天四亿三千万记录的

    项目背景 这是给某数据中心做的一个项目,项目难度之大令人发指,这个项目真正的让我感觉到了,商场如战场,而我只是其中的一个小兵,太多的战术,太多的高层之间的较量,太多的内幕了.具体这个项目的情况,我有空 ...

  5. python 时间差计算

    import time import datetime datebg=input("date begin:") dateed=input("date end:" ...

  6. Dispatch Groups

    Dispatch Groups are objects that allow several tasks to be grouped for later joining. Tasks can be a ...

  7. Python内置数据结构之列表list

    1. Python的数据类型简介 数据结构是以某种方式(如通过编号)组合起来的数据元素(如数.字符乃至其他数据结构)集合.在Python中,最基本的数据结构为序列(sequence). Python内 ...

  8. Hadoop2.x 关于日志文件位置

    查看日志是发现Hadoop问题和解决Hadoop问题的第一步. 开始我不知道该去哪找日志,后来我发现在我启动节点的时候,有打印信息以及明确告诉了日志写在哪. [root@master hadoop]# ...

  9. [六省联考2017]分手是祝愿(期望+DP)

    题解 很容易想出来最优策略是什么. 就是从n到1看到开着的灯就把它关了 我们预处理出当前状态把灯全部关闭后的最少步数cnt 然后我们的主人公就要瞎按... 设dp[i]代表当前状态最优解为i步时走到d ...

  10. redis做成windows服务

    打开cmd切换到redis根目录 执行安装命令  redis-server.exe --service-install redis.windows.conf --loglevel verbose 卸载 ...