由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Linux版 - 紧急求助lvm分区毁坏的问题
相关主题
硬盘空间问题3Tb硬盘如何分区windows也可以读取
请教个fedora磁盘空间的问题。两个物理硬盘,用硬raid还是软raid?
28T分区请问ubuntu下面有没有类似windows 的disk cleanup and defragme
如何恢复rm删除的文件?how to check disk usage per user?
请教grub的问题ext4 usb disk access from 9.04
有几个分区不知道怎么挂载的。。。怎么获取一个ext4的disk image所含的文件列表
请帮忙看看为什么没空间了?linux mount question
Mac 升级带 grub2 的系统要小心一个简单的ubuntu问题,求助
相关话题的讨论汇总
话题: dm话题: lvm话题: parted话题: dev话题: lv
进入Linux版参与讨论
1 (共1页)
y**b
发帖数: 10166
1
今天加装一个12TB的USB3.0硬盘,
rhel6.7的disk utility显示有个12TB hard drive,
我以为就是这个新硬盘,就运行了这个命令:
parted /dev/dm-2
print
然后makelabel gpt
没做其它动作
没想到这是个12TB LVM的分区(6块4TB硬盘分三对组装的raid-1,然后组成LVM),
这下惨了12TB的数据都没了。本来这个错误完全可以避免,唉,不说了。
想请教一下恢复办法,请有经验的大牛细心指点一下,万分感谢。
y**b
发帖数: 10166
2
首次parted /dev/dm-2
print显示的是:
Model: linux device-mapper (linear) (dm)
disk /dev/dm-2: 12.2TB
sector size: 512B/512B
partition table: loop
number start end size filesystem flags
1 0.00B 12.2TB 12.2TB ext4
mklabel gpt之后print显示的是:
Model: linux device-mapper (linear) (dm)
disk /dev/dm-2: 12.2TB
sector size: 512B/512B
partition table: gpt
number start end size filesystem flags
y**b
发帖数: 10166
3
这个/dev/dm-2是个系统虚拟磁盘,对应于那个12.2TB的LVM分区。
那么我是不是没有破坏LVM分区,直接重启机器就可以了?
还是需要parted makelabel loop再重启机器?
a9
发帖数: 21638
4
数据恢复不敢瞎指挥。不过makelabel是不会破坏数据的,但你需要恢复原来的分区表。
This command (normally) won’t technically destroy your data, but it will
make it basically unusable, and you will need to use the rescue command (see
Related information) to recover any partitions.
https://www.gnu.org/software/parted/manual/html_node/mklabel.html#FOOT1

【在 y**b 的大作中提到】
: 这个/dev/dm-2是个系统虚拟磁盘,对应于那个12.2TB的LVM分区。
: 那么我是不是没有破坏LVM分区,直接重启机器就可以了?
: 还是需要parted makelabel loop再重启机器?

y**b
发帖数: 10166
5
是的,我也看到这段了,makelabel只是重建了分区表,没有毁坏数据。
就是还没想好怎么最安全地恢复分区表,工具很多, parted rescue, gdisk, testdisk。
通常是按这个顺序来配置linux磁盘:
parted->pvcreate->vgcreate->lvcreate->mkfs.ext4->mount
也就是说parted一般是对物理磁盘操作的,但GNU Parted does not support LVM and
software RAID in full, but it is still useful when used in combination with
their respective tools. Parted is useful for these tasks:
https://www.gnu.org/software/parted/manual/html_chapter/parted_7.html,也能
对LVM操作。不过网上有抱怨parted操作LVM出问题的,建议用gdisk。
问了 gdisk的作者,反而建议用parted resuce,可能是觉得makelabel已经毁掉了备份
分区表。本来gdisk是能从默认备份分区表进行恢复的。

表。
see

【在 a9 的大作中提到】
: 数据恢复不敢瞎指挥。不过makelabel是不会破坏数据的,但你需要恢复原来的分区表。
: This command (normally) won’t technically destroy your data, but it will
: make it basically unusable, and you will need to use the rescue command (see
: Related information) to recover any partitions.
: https://www.gnu.org/software/parted/manual/html_node/mklabel.html#FOOT1

a9
发帖数: 21638
6
以前恢复分区表的时候是扫描整个盘可能可以找到分区表。
如果只是坏了分区表,应该跟lvm就没什么关系了。lvm信息也是写到分区里的吧。

testdisk。
and
with
will

【在 y**b 的大作中提到】
: 是的,我也看到这段了,makelabel只是重建了分区表,没有毁坏数据。
: 就是还没想好怎么最安全地恢复分区表,工具很多, parted rescue, gdisk, testdisk。
: 通常是按这个顺序来配置linux磁盘:
: parted->pvcreate->vgcreate->lvcreate->mkfs.ext4->mount
: 也就是说parted一般是对物理磁盘操作的,但GNU Parted does not support LVM and
: software RAID in full, but it is still useful when used in combination with
: their respective tools. Parted is useful for these tasks:
: https://www.gnu.org/software/parted/manual/html_chapter/parted_7.html,也能
: 对LVM操作。不过网上有抱怨parted操作LVM出问题的,建议用gdisk。
: 问了 gdisk的作者,反而建议用parted resuce,可能是觉得makelabel已经毁掉了备份

y**b
发帖数: 10166
7
lvm是方便,可是增加了一层东西,就不像以前直接对物理硬盘操作那样清楚了。
parted对lvm操作的话,肯定是对lv那一层的逻辑分区吧,不会对硬盘分区进行操作了
吧。
也就是说在parted->pvcreate->vgcreate->lvcreate->mkfs.ext4->mount里面,是对第
四步进行操作,而不是第一步。
y**b
发帖数: 10166
8
这个假设可能不对。既然/dev/dm-2和某个lv分区映射,makelabel的改动应该影响到了
lv。

【在 y**b 的大作中提到】
: 这个/dev/dm-2是个系统虚拟磁盘,对应于那个12.2TB的LVM分区。
: 那么我是不是没有破坏LVM分区,直接重启机器就可以了?
: 还是需要parted makelabel loop再重启机器?

y**b
发帖数: 10166
9
我把这些信息给gdisk作者:
soilblast2[/home/yanb]# ll /dev/mapper/
total 0
crw-rw----. 1 root root 10, 58 Feb 18 18:23 control
lrwxrwxrwx. 1 root root 7 Feb 18 18:24 vg_soilblast2-lv_home -> ../dm-2
lrwxrwxrwx. 1 root root 7 Feb 18 18:24 vg_soilblast2-lv_root -> ../dm-0
lrwxrwxrwx. 1 root root 7 Feb 18 18:23 vg_soilblast2-lv_swap -> ../dm-1
soilblast2[/home/yanb]# ll /dev/dm*
brw-rw----. 1 root disk 253, 0 Feb 18 18:24 /dev/dm-0
brw-rw----. 1 root disk 253, 1 Feb 18 18:23 /dev/dm-1
brw-rw----. 1 root disk 253, 2 Feb 18 18:24 /dev/dm-2
他说:It looks like /dev/mapper/g_soilblast2-lv_home is a symbolic link to /
dev/dm-2. Thus, if you've done a "mklabel gpt" on /dev/dm-2, you've done at
least some damage to your /home directory. That's a FILESYSTEM, not a DISK
PARTITION TABLE, so you should **NOT** be using parted, gdisk, or any other
partitioning tool on it. The fsck tool might be able to repair the damage,
or it might make things worse.
Your best bet for safety is to back up everything off of /home onto some
other medium. That way, if things fall apart even worse than they are now,
you'll be able to recover your data relatively easily.
难道文件系统给破坏了?
为什么symbolic link的话就会破坏文件系统呢。
y**b
发帖数: 10166
10
搞定了!
gdisk作者判断得不错,应该是filesystem出问题,而不是分区表,至少分区表不该修
理,这点极其重要,不然后面修复动作错了可能就玩完了。
parted对lvm LV那么一个操作(makelabel gpt;makelabel loop), 第一不会破坏磁盘
文件;第二也不会破坏分区表,因为LV里面就没有分区表概念,lvm另有一套管理方式(
细节我不懂)。
我试图用fsck修理/dev/vg_soilblast/lv_home,可是这个需要清理进程,运行fuser -
km /home之后整个os动弹不得,只得重启。
偏偏重启出现hub over-current change on port无限刷屏,开始也没明白是啥含义,
只好用rhel安装盘进入rescue模式。发现lv_home不见了,大急,用lvdisplay查看显示
status not available,于是:
lvchange -ay /dev/vg_soilblast/lv_home (用于激活该LV)
mount -t ext4 /dev/mapper/vg_soilblast-lv_home /home
这下看见/home下面的东西了,心想有救了,虽然df -h显示容量不对。
再重启,又出现hub over-current change on port无限刷屏,一搜发现是usb电流过载
,立即把那个用来插12TB外置硬盘的usb 3.0卡拔掉,再启动就OS就自动fsck /dev/vg_
soilblast/lv_home,检查完毕就顺利进入kde,df -h显示容量正确。
我在想如果不是hub over-current change on port无限刷屏,是不是重启自动fsck,
会自动解决问题呢,甚至连lvchange都不需要?当然需要lvchange的可能还是很大,因
为makelabel gpt还是对lv做了某种改动。
w*r
发帖数: 2421
11
好命大啊!!!!!
教你个乖,看到不认识的device别动手啊,去dmsg查清楚
你这个是公司的系统的话可以算是在鬼门关前转了个圈
y**b
发帖数: 10166
12
确实侥幸。makelabel之后我要没停住,加一个命令那真是玩完,一瞬间意识到了赶紧
停手,紧张得抽了自己两耳光。以前比这复杂十倍百倍的事,命令行都先一步一步写好
,反复检查之后才敢操作。
不能太兴奋,上午一个快6千刀的软件授权被我800刀买定,中午老板因其它原因请吃饭
,吃饱之后犯晕,竟弄出这事来,后怕。
是个大教训。
S*****e
发帖数: 6676
13

恭喜恭喜

【在 y**b 的大作中提到】
: 确实侥幸。makelabel之后我要没停住,加一个命令那真是玩完,一瞬间意识到了赶紧
: 停手,紧张得抽了自己两耳光。以前比这复杂十倍百倍的事,命令行都先一步一步写好
: ,反复检查之后才敢操作。
: 不能太兴奋,上午一个快6千刀的软件授权被我800刀买定,中午老板因其它原因请吃饭
: ,吃饱之后犯晕,竟弄出这事来,后怕。
: 是个大教训。

a9
发帖数: 21638
14
呃,一开始我没看清你是parted 到lv上了。我理解错了。
你也够糊涂的,怎么可能以为/dev/dm-x下面是物理盘。。。。
总之恭喜了

式(
-

【在 y**b 的大作中提到】
: 搞定了!
: gdisk作者判断得不错,应该是filesystem出问题,而不是分区表,至少分区表不该修
: 理,这点极其重要,不然后面修复动作错了可能就玩完了。
: parted对lvm LV那么一个操作(makelabel gpt;makelabel loop), 第一不会破坏磁盘
: 文件;第二也不会破坏分区表,因为LV里面就没有分区表概念,lvm另有一套管理方式(
: 细节我不懂)。
: 我试图用fsck修理/dev/vg_soilblast/lv_home,可是这个需要清理进程,运行fuser -
: km /home之后整个os动弹不得,只得重启。
: 偏偏重启出现hub over-current change on port无限刷屏,开始也没明白是啥含义,
: 只好用rhel安装盘进入rescue模式。发现lv_home不见了,大急,用lvdisplay查看显示

1 (共1页)
进入Linux版参与讨论
相关主题
一个简单的ubuntu问题,求助请教grub的问题
安装ububntu的时候看不到硬盘分区时怎么回事?有几个分区不知道怎么挂载的。。。
求助, XFS盘出问题了。请帮忙看看为什么没空间了?
用 rsync -a 拷 windows 系统盘成么?Mac 升级带 grub2 的系统要小心
硬盘空间问题3Tb硬盘如何分区windows也可以读取
请教个fedora磁盘空间的问题。两个物理硬盘,用硬raid还是软raid?
28T分区请问ubuntu下面有没有类似windows 的disk cleanup and defragme
如何恢复rm删除的文件?how to check disk usage per user?
相关话题的讨论汇总
话题: dm话题: lvm话题: parted话题: dev话题: lv