修改根目录所在VG名称

修改根目录所在VG名称

1 情况描述

  1. 第三方工程师修改 vg 名称导致系统无法启动
  2. 检查结果为系统进入维护模式(当前模式下无网络连接,第三方无法远程连接)
  3. 通过云平台控制台登录,修改回 vg 名称,此时重启系统应当无问题
  4. 帮忙修改 vg 名称为 vgdata,直接使用了 vgrename 修改,同时修改了 /etc/fstab 文件 但是系统无法启动,报错如下:
报错

2 解决思路

  1. 根据报错可以看到,grub 引导的时候找不到引导的 lvm 卷导致启动失败,那么除了 /etc/fstab 配置文件外还需要修改 grub 的相关配置
  2. 系统目前进入了 dracut 工具的紧急 shell 界面
  3. 通过 livedvd chroot 到当前根目录,修改 grub 配置文件,重启

dracut :

  1. dracut创建虚拟磁盘映像,提供给内核,预加载块设备模块(例如 IDE,SCSI或者RAID),通过加载这些设备模块访问根文件系统
  2. 紧急 shell 界面的操作 man -7 dracut.cmdline

3 操作流程

3.1 vgrename 正确操作流程

3.1.1 使用 vgrename 修改 VG 名称

# vgs 

VG     #PV #LV #SN Attr   VSize   VFree
centos   1   1   0 wz--n- <19.51g    0

# vgrename centos vgtest

3.1.2 修改 fstab 文件

# grep -v \# /etc/fstab

/dev/mapper/vgtest-root /                       xfs     defaults        0 0                                     UUID=6747911d-d990-4169-bc40-45ff91c9f3a0 /boot                   ext4    defaults        1 2    

# sed 's/centos-root/vgtest-root/g' /etc/fstab | grep vgtest

/dev/mapper/vgtest-root /                       xfs     defaults        0 0

3.1.3 grub2 修改内容说明

# vi /etc/default/grub

GRUB_TIMEOUT=5                                                              # 指定默认倒数读秒的秒数
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"           
GRUB_DEFAULT=saved                                                          # 指定默认由哪一个菜单来开机,默认开机菜单之意
GRUB_DISABLE_SUBMENU=true                                                   # 是否要隐藏次菜单,通常是藏起来的好
GRUB_TERMINAL_OUTPUT="console"                                              # 指定数据输出的终端机格式,默认是通过文字终端机
GRUB_CMDLINE_LINUX="rd.lvm.lv=vgtest/root rhgb quiet"                       # 就是在 menuentry 括号内的 linux16 项目后续的核心参数
GRUB_DISABLE_RECOVERY="true"                                                # 取消救援菜单的制作

  修改 GRUB_CMDLINE_LINUX="rd.lvm.lv=vgtest/root rhgb quiet" 行,系统重启后可以使用 grub2-mkconfig -o /boot/grub2/grub.cfg 重建引导程序。

# vi /boot/grub2/grub.cfg

#
# DO NOT EDIT THIS FILE
……              ## 略
### BEGIN /etc/grub.d/10_linux ###
menuentry 'CentOS Linux (3.10.0-693.el7.x86_64) 7 (Core)' --class centos --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-3.10.0-693.el7.x86_64-advanced-7513d5e4-7cf6-427b-be9b-6f5afdfc255d' {
        load_video
        set gfxpayload=keep
        insmod gzio
        insmod part_msdos
        insmod ext2
        set root='hd0,msdos1'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 --hint='hd0,msdos1'  6747911d-d990-4169-bc40-45ff91c9f3a0
        else
          search --no-floppy --fs-uuid --set=root 6747911d-d990-4169-bc40-45ff91c9f3a0
        fi
        linux16 /vmlinuz-3.10.0-693.el7.x86_64 root=/dev/mapper/vgtest-root ro rd.lvm.lv=vgtest/root rhgb quiet         ## 修改此行
        initrd16 /initramfs-3.10.0-693.el7.x86_64.img
}
menuentry 'CentOS Linux (0-rescue-83251c6729fc4a02b763e39714c43a2d) 7 (Core)' --class centos --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-0-rescue-83251c6729fc4a02b763e39714c43a2d-advanced-7513d5e4-7cf6-427b-be9b-6f5afdfc255d' {
        load_video
        insmod gzio
        insmod part_msdos
        insmod ext2
        set root='hd0,msdos1'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 --hint='hd0,msdos1'  6747911d-d990-4169-bc40-45ff91c9f3a0
        else
          search --no-floppy --fs-uuid --set=root 6747911d-d990-4169-bc40-45ff91c9f3a0
        fi
        linux16 /vmlinuz-0-rescue-83251c6729fc4a02b763e39714c43a2d root=/dev/mapper/vgtest-root ro rd.lvm.lv=vgtest/root rhgb quiet         ## 修改此行
        initrd16 /initramfs-0-rescue-83251c6729fc4a02b763e39714c43a2d.img
}
if [ "x$default" = 'CentOS Linux (3.10.0-693.el7.x86_64) 7 (Core)' ]; then default='Advanced options for CentOS Linux>CentOS Linux (3.10.0-693.el7.x86_64) 7 (Core)'; fi;
### END /etc/grub.d/10_linux ###
……              ## 略
### END /etc/grub.d/41_custom ###

3.1.4 重启系统

  重建引导配置文件

grub2-mkconfig -o /boot/grub2/grub.cfg

3.2 生产环境问题重现

3.2.1 修改 VG 名称

# vgs

VG     #PV #LV #SN Attr   VSize   VFree
vgtest   1   1   0 wz--n- <19.51g    0 

# vgrename vgtest newvg

Volume group "vgtest" successfully renamed to "newvg"

3.2.2 修改 fstab 文件

# sed 's/vgtest-root/newvg-root/g' /etc/fstab | grep newvg

/dev/mapper/newvg-root /                       xfs     defaults        0 0

3.2.3 重启系统

  报错完全一致

报错模拟

3.3 问题修复

  对 dracut 紧急 shell 不是很了解,这里采用 livedvd 修改 grub.cfg 文件

  没有合适的 livedvd 直接下载了 archlinux 的安装镜像来用(体积较小)

  重启主机,从 archlinux 的安装镜像启动

  挂载系统分区,修改相文件(此处修改 /mnt/boot/grub/grub.cfg 文件和 /mnt/etc/default/grub),修改内容见 3.1

挂载

  重启系统,重建 grub 引导 grub2-mkconfig -o /boot/grub2/grub.cfg

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 119,603评论 1 241
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 52,288评论 1 201
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 74,998评论 0 167
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 36,690评论 0 128
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 43,513评论 1 206
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 36,111评论 1 127
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 28,089评论 2 209
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 27,218评论 0 120
  • 想象着我的养父在大火中拼命挣扎,窒息,最后皮肤化为焦炭。我心中就已经是抑制不住地欢快,这就叫做以其人之道,还治其人...
    爱写小说的胖达阅读 26,166评论 5 173
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 30,283评论 0 178
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 27,494评论 1 170
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 28,721评论 1 178
  • 白月光回国,霸总把我这个替身辞退。还一脸阴沉的警告我。[不要出现在思思面前, 不然我有一百种方法让你生不如死。]我...
    爱写小说的胖达阅读 23,022评论 0 25
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 25,646评论 2 164
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 29,520评论 3 174
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 24,496评论 0 4
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 24,496评论 0 113
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 30,720评论 2 189
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 31,129评论 2 189