openstack 虚拟机系统盘故障 挂载到别的虚拟机修复/找回文件(后端存储ceph)
系统盘对应的卷id根据卷ID在ceph找到对应的块文件导出需要修复的磁盘# rbd export volumes/volume-4e814920-763e-4fae-b566-fa51e770dbca wxdiskExporting image: 100% complete...done.在界面上创建一个大小同故障虚拟机系统盘大小相同的卷删除...

系统盘对应的卷id

根据卷ID在ceph找到对应的块文件
导出需要修复的磁盘
# rbd export volumes/volume-4e814920-763e-4fae-b566-fa51e770dbca wxdisk
Exporting image: 100% complete...done.
在界面上创建一个大小同故障虚拟机系统盘大小相同的卷

删除刚才创建的卷(注意一定要使用rbd命令删除 不要在界面上删除)
# rbd ls volumes |grep b7daee6d-5f6b-4ef1-8331-09b3a797ef9c
volume-b7daee6d-5f6b-4ef1-8331-09b3a797ef9c
# rbd rm volumes/volume-b7daee6d-5f6b-4ef1-8331-09b3a797ef9c
Removing image: 100% complete...done.
将刚才导出的故障虚拟机系统盘 导入到刚才删除卷中(名称需要保持一致)
# rbd import wxdisk volumes/volume-b7daee6d-5f6b-4ef1-8331-09b3a797ef9c
Importing image: 100% complete...done.
导入完成后将此卷挂载到一台正常的虚拟机中 当作虚拟机的数据盘

进入正常的虚拟机 挂载 进行修复或查找所需要的文件
# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vda 253:0 0 1G 0 disk
`-vda1 253:1 0 1011.9M 0 part /
sr0 11:0 1 458K 0 rom
vdb 253:16 0 1G 0 disk
`-vdb1 253:17 0 1011.9M 0 part
# mount /dev/vdb1 /mnt/
# ls /mnt/root/
test1 test2 test3
更多推荐



所有评论(0)