您的位置:首页 > 其它

kvm镜像文件修改

2017-02-19 14:54 351 查看
运维常常会碰到某某库(例如libc库)被更换导致系统崩溃的问题,在物理机操作的时候比较好办,只需要进入救援模式或者启动u盘上的linux系统即可以把被更换的文件替换回来。但在kvm等虚拟机上如果某个库文件被替换了,导致虚拟机系统出问题的时候,就无法使用救援模式去把被更换的文件替换回来了,此时需要在物理机挂载虚拟机镜像文件,然后进行修改。

修改文件的操作步骤如下(参考:http://www.jb51.net/LINUXjishu/390511.html):

1: 把虚拟镜像文件mapper成loop伪设备

kpartx -av xxx.img

会有如下输出:

add map loop0p1 (253:0): 0 409600 linear /dev/loop0 2048
add map loop0p2 (253:1): 0 83886080 linear /dev/loop0 411648
add map loop0p3 (253:2): 0 2097152 linear /dev/loop0 84297728
add map loop0p4 (253:3): 0 2 linear /dev/loop0 86394880
add map loop0p5 (253:4): 0 123318272 linear /dev/loop0 86396928

2: 挂载loop伪设备,然后修改里面的文件。(要改动哪个分区的就mount哪个分区的)

例如:mount /dev/mapper/loop0p1 /mnt/p1

改动完成后,需要还原成虚拟镜像,操作步骤如下:

1: umount伪设备

umount /mnt/p1

2: 然后还原镜像文件

kpartx -d xxx.img
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息