【LVM】系统重装后LVM分区挂载的坑

2023-10-11 16:10
文章标签 分区 挂载 lvm 系统重装

本文主要是介绍【LVM】系统重装后LVM分区挂载的坑,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

遇到的问题:

系统重装前有个LVM 做过扩容。重装后后手动挂载是可以的。系统重启后挂载失败。

 


 

原ubuntu12.04 server 版本分区如下。

磁盘配置磁盘配置

 

由于在升级glibc 导致系统重启后无法启动,做系统修复操作后还是错。于是重装系统。

重装工程中对原 ext4分区进行格式化,LVM 未做改动。

新系统磁盘分配新系统磁盘分配

 

系统安装后安装完。执行以下命令后可以正常挂载访问。

e2label /dev/vgjenkins/lvjenkins /jenkinse2label /dev/vgbuild/lvlocaldata /localdatamkdir  /mnt/jenkins/mkdir  /mnt/localdatamount -L /jenkins /mnt/jenkinsmount -L  /localdata /mnt/localdata

修改 /etc/fstab

vim /etc/fstab#--add below
LABEL=/localdata  /mnt/localdata ext4        defaults,relatime,usrquota,data=writeback                    0       2
LABEL=/jenkins       /mnt/jenkins  ext4        defaults                    0       2

重启系统提示 /locadaldata 无法挂载。按S后跳过挂载开机。检查LVM 配置如下

 vgdisplayCouldn't find device with uuid n3lryH-nt0A-8H1g-6Dz3-gR43-8DKE-BvRXcc.--- Volume group ---VG Name               vgbuildSystem IDFormat                lvm2Metadata Areas        1Metadata Sequence No  5VG Access             read/writeVG Status             resizableMAX LV                0Cur LV                1Open LV               0Max PV                0Cur PV                2Act PV                1VG Size               6.94 TiBPE Size               4.00 MiBTotal PE              1819968Alloc PE / Size       1819592 / 6.94 TiBFree  PE / Size       376 / 1.47 GiBVG UUID               qM5sXD-YUFC-Ylwq-0VM1-qpI7-OvAc-CLdFJt--- Volume group ---VG Name               vgjenkinsSystem IDFormat                lvm2Metadata Areas        1Metadata Sequence No  2VG Access             read/writeVG Status             resizableMAX LV                0Cur LV                1Open LV               1Max PV                0Cur PV                1Act PV                1VG Size               465.66 GiBPE Size               4.00 MiBTotal PE              119209Alloc PE / Size       119209 / 465.66 GiBFree  PE / Size       0 / 0VG UUID               dVGlj7-nF52-csCj-8oMg-tddl-1WtY-Zn7IeWroot@xmbuilder02:~# vgscanReading all physical volumes.  This may take a while...Couldn't find device with uuid n3lryH-nt0A-8H1g-6Dz3-gR43-8DKE-BvRXcc.Found volume group "vgbuild" using metadata type lvm2Found volume group "vgjenkins" using metadata type lvm2
root@xmbuilder02:~# lvscanCouldn't find device with uuid n3lryH-nt0A-8H1g-6Dz3-gR43-8DKE-BvRXcc.inactive          '/dev/vgbuild/lvlocaldata' [6.94 TiB] inheritACTIVE            '/dev/vgjenkins/lvjenkins' [465.66 GiB] inherit

查看磁盘的物理卷组

# pvdisplayCouldn't find device with uuid n3lryH-nt0A-8H1g-6Dz3-gR43-8DKE-BvRXcc.--- Physical volume ---PV Name               /dev/sda9VG Name               vgbuildPV Size               4.22 TiB / not usable 1.00 MiBAllocatable           yes (but full)PE Size               4.00 MiBTotal PE              1105249Free PE               0Allocated PE          1105249PV UUID               0YRTc9-dBEp-Q6Oc-sqyX-PTzh-oqzj-AVUXHM--- Physical volume ---PV Name               unknown deviceVG Name               vgbuildPV Size               2.73 TiB / not usable 4.00 MiBAllocatable           yesPE Size               4.00 MiBTotal PE              714719Free PE               376Allocated PE          714343PV UUID               n3lryH-nt0A-8H1g-6Dz3-gR43-8DKE-BvRXcc--- Physical volume ---PV Name               /dev/sda8VG Name               vgjenkinsPV Size               465.66 GiB / not usable 1.00 MiBAllocatable           yes (but full)PE Size               4.00 MiBTotal PE              119209Free PE               0Allocated PE          119209PV UUID               cTpMy1-ml54-jMFu-UN09-KR9E-4XT7-gStZ49

可以确定是 /dev/sdb 丢了

#lvscanCouldn't find device with uuid n3lryH-nt0A-8H1g-6Dz3-gR43-8DKE-BvRXcc.inactive          '/dev/vgbuild/lvlocaldata' [6.94 TiB] inheritACTIVE            '/dev/vgjenkins/lvjenkins' [465.66 GiB] inherit#  pvdisplayCouldn't find device with uuid n3lryH-nt0A-8H1g-6Dz3-gR43-8DKE-BvRXcc.--- Physical volume ---PV Name               unknown deviceVG Name               vgbuildPV Size               2.73 TiB / not usable 4.00 MiBAllocatable           yesPE Size               4.00 MiBTotal PE              714719Free PE               376Allocated PE          714343PV UUID               n3lryH-nt0A-8H1g-6Dz3-gR43-8DKE-BvRXcc

 

 

 


fdisk 命令查看磁盘

 #fdisk -lWARNING: GPT (GUID Partition Table) detected on '/dev/sdb'! The util fdisk doesn't support GPT. Use GNU Parted.Disk /dev/sdb: 2997.8 GB, 2997752954880 bytes
255 heads, 63 sectors/track, 364456 cylinders, total 5854986240 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1  4294967295  2147483647+  ee  GPTWARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util fdisk doesn't support GPT. Use GNU Parted.Disk /dev/sda: 5396.0 GB, 5395955318784 bytes
255 heads, 63 sectors/track, 656020 cylinders, total 10538975232 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1  4294967295  2147483647+  ee  GPTDisk /dev/mapper/vgjenkins-lvjenkins: 500.0 GB, 499998785536 bytes
255 heads, 63 sectors/track, 60788 cylinders, total 976560128 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000Disk /dev/mapper/vgjenkins-lvjenkins doesn't contain a valid partition table

 

分析:

   1.   找了不少信息,也在不少技术群里问了,都没人回答,其实 想知道我要是用pvcreate 创建/dev/sdb1会导致之前数据丢失么。要不我很想试试这个命令 来新建丢失的PV

pvcreate /dev/sdb1 --u n3lryH-nt0A-8H1g-6Dz3-gR43-8DKE-BvRXcc --norestorefile

2.  或者考虑 vgreduce或者 pvremove  来移除这个  PV Name   unknown devicec,然后再添加上去。

但是vgreduce和命令不是太熟悉 pvremove 

vgreduce 和pvremove 区别
 vgreducepvremove
作用vgreduce命令通过删除LVM卷组中的物理卷来减少卷组容量。不能删除LVM卷组中剩余的最后一个物理卷。pvremove命令用于删除一个存在的物理卷。使用pvremove指令删除物理卷时,
 它将LVM分区上的物理卷信息删除,使其不再被视为一个物理卷。
语法vgreduce(选项)(参数)pvremove(选项)(参数)
选项

-a:如果命令行中没有指定要删除的物理卷,则删除所有的空物理卷;

--removemissing:删除卷组中丢失的物理卷,使卷组恢复正常状态。

-d:调试模式; 
-f:强制删除; 
-y:对提问回答“yes”。
实例

使用vgreduce命令从卷组"vg2000"中移除物理卷/dev/sdb2。

 在命令行中输入下面的命令:

[root@localhost ~]# vgreduce vg2000 /dev/sdb2 #将物理卷"/dev/sdb2"从卷组"vg2000"中删除

 输出信息如下: Removed "/dev/sdb2" from volume group "vg2000"

使用pvremove指令删除物理卷/dev/sdb2。

 在命令行中输入下面的命令: pvremove /dev/sdb2 #删除物理卷

Labels on physical volume "/dev/sdb2" successfully wiped

   

3. 害怕数据丢失,还是来回顾一下之前添加扩容的过程吧

解决方法:

 

1  单纯的移除 vgbuild 中丢失的部分是不行的因为 VG vgbuild 中有一部分扩容,出问题的刚好是扩容的那部分。

root@xmbuilder02:/etc/lvm/backup# pvsCouldn't find device with uuid n3lryH-nt0A-8H1g-6Dz3-gR43-8DKE-BvRXcc.PV             VG        Fmt  Attr PSize   PFree/dev/sda8      vgjenkins lvm2 a--  465.66g    0/dev/sda9      vgbuild   lvm2 a--    4.22t    0unknown device vgbuild   lvm2 a-m    2.73t 1.47g
root@xmbuilder02:/etc/lvm/backup# vgreduce --removemissing vgbuildCouldn't find device with uuid n3lryH-nt0A-8H1g-6Dz3-gR43-8DKE-BvRXcc.WARNING: Partial LV lvlocaldata needs to be repaired or removed.There are still partial LVs in VG vgbuild.To remove them unconditionally use: vgreduce --removemissing --force.Proceeding to remove empty missing PVs.

   

 

打算重建PV了,用pvcreate 后sdb 是有了。

#pvcreate -u n3lryH-nt0A-8H1g-6Dz3-gR43-8DKE-BvRXcc --restorefile /etc/lvm/backup/vgbuild /dev/sdbCouldn't find device with uuid n3lryH-nt0A-8H1g-6Dz3-gR43-8DKE-BvRXcc.Physical volume "/dev/sdb" successfully created
root@xmbuilder02:~# pvsPV         VG        Fmt  Attr PSize   PFree/dev/sda8  vgjenkins lvm2 a--  465.66g    0/dev/sda9  vgbuild   lvm2 a--    4.22t    0/dev/sdb   vgbuild   lvm2 a-m    2.73t 1.47g

 

于是在做个reteore试试

root@xmbuilder02:~#vgcfgrestore vgbuild
root@xmbuilder02:~# vgcfgrestore vgbuildRestored volume group vgbuild
root@xmbuilder02:~# pvsPV         VG        Fmt  Attr PSize   PFree/dev/sda8  vgjenkins lvm2 a--  465.66g    0/dev/sda9  vgbuild   lvm2 a--    4.22t    0/dev/sdb   vgbuild   lvm2 a--    2.73t 1.47g

最终的记录

root@xmbuilder02:~# pvsPV         VG        Fmt  Attr PSize   PFree/dev/sda8  vgjenkins lvm2 a--  465.66g    0/dev/sda9  vgbuild   lvm2 a--    4.22t    0/dev/sdb   vgbuild   lvm2 a--    2.73t 1.47g
root@xmbuilder02:~# vgscanReading all physical volumes.  This may take a while...Found volume group "vgbuild" using metadata type lvm2Found volume group "vgjenkins" using metadata type lvm2
root@xmbuilder02:~# lvscanACTIVE            '/dev/vgbuild/lvlocaldata' [6.94 TiB] inheritACTIVE            '/dev/vgjenkins/lvjenkins' [465.66 GiB] inherit
root@xmbuilder02:~# vgdisplay--- Volume group ---VG Name               vgbuildSystem IDFormat                lvm2Metadata Areas        2Metadata Sequence No  10VG Access             read/writeVG Status             resizableMAX LV                0Cur LV                1Open LV               0Max PV                0Cur PV                2Act PV                2VG Size               6.94 TiBPE Size               4.00 MiBTotal PE              1819968Alloc PE / Size       1819592 / 6.94 TiBFree  PE / Size       376 / 1.47 GiBVG UUID               qM5sXD-YUFC-Ylwq-0VM1-qpI7-OvAc-CLdFJt--- Volume group ---VG Name               vgjenkinsSystem IDFormat                lvm2Metadata Areas        1Metadata Sequence No  2VG Access             read/writeVG Status             resizableMAX LV                0Cur LV                1Open LV               1Max PV                0Cur PV                1Act PV                1VG Size               465.66 GiBPE Size               4.00 MiBTotal PE              119209Alloc PE / Size       119209 / 465.66 GiBFree  PE / Size       0 / 0VG UUID               dVGlj7-nF52-csCj-8oMg-tddl-1WtY-Zn7IeWroot@xmbuilder02:~# pvdisplay--- Physical volume ---PV Name               /dev/sda9VG Name               vgbuildPV Size               4.22 TiB / not usable 1.00 MiBAllocatable           yes (but full)PE Size               4.00 MiBTotal PE              1105249Free PE               0Allocated PE          1105249PV UUID               0YRTc9-dBEp-Q6Oc-sqyX-PTzh-oqzj-AVUXHM--- Physical volume ---PV Name               /dev/sdbVG Name               vgbuildPV Size               2.73 TiB / not usable 4.00 MiBAllocatable           yesPE Size               4.00 MiBTotal PE              714719Free PE               376Allocated PE          714343PV UUID               n3lryH-nt0A-8H1g-6Dz3-gR43-8DKE-BvRXcc--- Physical volume ---PV Name               /dev/sda8VG Name               vgjenkinsPV Size               465.66 GiB / not usable 1.00 MiBAllocatable           yes (but full)PE Size               4.00 MiBTotal PE              119209Free PE               0Allocated PE          119209PV UUID               cTpMy1-ml54-jMFu-UN09-KR9E-4XT7-gStZ49

 

 

最终的结果,东西没丢,舒心一笑。

root@xmbuilder02:~# e2label /dev/vgbuild/lvlocaldata /localdata
root@xmbuilder02:~# mount -L  /localdata /mnt/localdata
root@xmbuilder02:~# df -h
Filesystem                       Size  Used Avail Use% Mounted on
udev                              63G   12K   63G   1% /dev
tmpfs                             13G  1.9M   13G   1% /run
/dev/sda2                        184G  400M  174G   1% /
none                             4.0K     0  4.0K   0% /sys/fs/cgroup
none                             5.0M     0  5.0M   0% /run/lock
none                              63G     0   63G   0% /run/shm
none                             100M     0  100M   0% /run/user
/dev/sda5                        9.1G   21M  8.6G   1% /tmp
/dev/sda3                        181M   38M  131M  23% /boot
/dev/sda6                        9.1G  557M  8.1G   7% /usr
/dev/sda7                        9.1G  350M  8.3G   4% /var
/dev/mapper/vgjenkins-lvjenkins  459G  324G  136G  71% /mnt/jenkins
/dev/mapper/vgbuild-lvlocaldata  6.9T  6.8T  156G  98% /mnt/localdata

 

这篇关于【LVM】系统重装后LVM分区挂载的坑的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/189225

相关文章

mysql数据库分区的使用

《mysql数据库分区的使用》MySQL分区技术通过将大表分割成多个较小片段,提高查询性能、管理效率和数据存储效率,本文就来介绍一下mysql数据库分区的使用,感兴趣的可以了解一下... 目录【一】分区的基本概念【1】物理存储与逻辑分割【2】查询性能提升【3】数据管理与维护【4】扩展性与并行处理【二】分区的

Linux磁盘分区、格式化和挂载方式

《Linux磁盘分区、格式化和挂载方式》本文详细介绍了Linux系统中磁盘分区、格式化和挂载的基本操作步骤和命令,包括MBR和GPT分区表的区别、fdisk和gdisk命令的使用、常见的文件系统格式以... 目录一、磁盘分区表分类二、fdisk命令创建分区1、交互式的命令2、分区主分区3、创建扩展分区,然后

开发板NFS挂载文件目录

文章目录 序NFS1. 安装 NFS 服务器和客户端在服务器上(NFS 服务器端)在客户端上(NFS 客户端) 2. 配置 NFS 服务器创建共享目录编辑 `/etc/exports` 文件启动 NFS 服务 3. 在客户端挂载 NFS 共享创建挂载点挂载 NFS 共享验证挂载 4. 设置开机自动挂载5. 解决权限问题 序 本节主要实现虚拟机(服务器)与开发板(客户端)通过N

数据库系统 第41节 数据库分区简介

数据库分区是一种数据库设计技术,用于将大型表或索引的数据分布到不同的物理区域,以提高查询性能、优化数据管理、简化维护任务,并提高数据的可用性。下面我将详细介绍每种分区类型,并结合伪代码或概念性的源代码来说明其实现方式。 1. 范围分区 (Range Partitioning) 范围分区是根据某个列的值范围来划分数据。例如,可以按照日期或数值范围来分区。 示例场景:一个订单表,按年份分区。

Windows环境下SD卡多分区 隐藏分区 解决python裸读写扇区失败

SD卡分区 右键“我的电脑”->“管理”->“磁盘管理”; 如果SD卡有文件系统,点击"删除卷",重新做卡; 删除文件系统后如下图,点击“新建简单卷”; 在导航页“指定卷大小”,设置分区的大小,留出剩余的空间; python读写SD卡 这里需要注意的是,写SD卡需要加锁,否则写不成功 #带文件系统,需要锁定卷,否则无法写扇区@contextlib.contextmanagerd

在不损坏数据的情况下给WIN7重新划分分区

小易接到个求助电话:我的机器上已经装好了系统,但是只有一个分区。我不想重装系统重新分区,能不能再分出一个分区?   这个故障可能是困惑很多网友的一个故障。一般,有一些第三方的软件可以实现这些功能。但是,现在在 Windows Vista/Windows 7 里允许你对现有分区大小进行一定范围的调整。   来看一下操作办法:   准备工作   这个操作必须要求你的文件系统是 N

如何调整c盘分区大小,怎样把c盘空间调整小些

新买的笔记本电脑回来后发现电脑只分了C盘和D盘两个区,C盘就占了很大的空间,如何调整c盘分区大小,这样可以多腾些空间出来利用呢?虽然Win7有磁盘管理器可以压缩分区实现把C盘调小些,但是它的功能有限,压缩后也是很大一部分空间在C盘浪费,那怎样把c盘空间调整小些呢,下载我们介绍一个工具来完成这些复杂的动作:   1、下载安装分区助手DiskTool中文版。   在主界面上你可以看到C盘有60

win10 gpt分区+uefi引导 卸载双系统ubuntu

1、首先暴力卸载ubuntu 在win10里面磁盘管理中找到对应的linux磁盘分区 删除卷OK 2、重启 出现下面(根据机型不同界面可能不一样 ) 3、exit 退出grub引导 进入uefi引导  选择win10引导项 (当然你要是一直按着进入bios boot的那个按键的话 也不用看第二步了 直接选择windows启动项进去 dell的话是F12) 4、进入

Kafka【十二】消费者拉取主题分区的分配策略

【1】消费者组、leader和follower 消费者想要拉取主题分区的数据,首先必须要加入到一个组中。 但是一个组中有多个消费者的话,那么每一个消费者该如何消费呢,是不是像图中一样的消费策略呢?如果是的话,那假设消费者组中只有2个消费者或有4个消费者,和分区的数量不匹配,怎么办? 所以这里,我们需要学习Kafka中基本的消费者组中的消费者和分区之间的分配规则: 同一个消费者组的消费者都订

说说Flink DataStream的八种物理分区逻辑

By 大数据技术与架构 场景描述:Spark的RDD有分区的概念,Flink的DataStream同样也有,只不过没有RDD那么显式而已。Flink通过流分区器StreamPartitioner来控制DataStream中的元素往下游的流向。 Spark的RDD有分区的概念,Flink的DataStream同样也有,只不过没有RDD那么显式而已。Flink通过流分区器StreamPartitio