通过vdi备份linux,centos/ubuntu挂载vmdk、 vdi为块设备的方法(非vdfuse)

因vdfuse只支持virtualbox4.x,目前已经在新版ubuntu或centos中取消,换个思路,可以使用qemu+nbd的方法挂载vmdk,vdi,vhd,vhdx等格式的磁盘。

以下方法在centos7上实现。

1、编译内核,编译nbd为模块。yum groupinstall "DevelopmentTools"

yum install gcc ncurses ncurses-devel bc

yum update

wget https://www.kernel.org/pub/linux/kernel/v4.x/linux-4.0.tar.xz

tar -xf linux-4.0.tar.xz -C /usr/src/

cd /usr/src/linux-4.0/

make menuconfig

在配置界面,进入菜单

Device Drivers → Block devices

选中:

  Network block device support

保存,退出:

大致如下图:

.config - Linux/x86 4.0.0 Kernel Configuration

→ Device Drivers → Block devices ─────────────────────────────────────────────

┌─────────────────────────────Block devices─────────────────────────────┐

│Arrow keys navigate the menu.  selects submenus ---> (or empty │

│submenus ----).  Highlighted letters are hotkeys.  Pressing         │

│includes, excludes, modularizes features.  Press to │

│exit, > for Help, > for Search.  Legend: [*] built-in  [ ]         │

│┌────↑(-)─────────────────────────────────────────────────────────────┐│

││    [*]Compressed RAM block device debug support││

││    < >Compaq Smart Array 5xxx support││

││    < >   Mylex DAC960/DAC1100 PCI RAID Controller support││

││< >   Micro Memory MM5415 Battery Backed RAM support││

││Loopback device support││

││(0)     Number of loop devices to pre-create at init time││

││< >Cryptoloop Support││

││< >DRBD Distributed Replicated Block Device support││

││   Network block device support││

││   NVM Express block device││

│└────↓(+)─────────────────────────────────────────────────────────────┘│

├─────────────────────────────────────────────────────────────────────────┤

│            │

└─────────────────────────────────────────────────────────────────────────┘

再编译内核:

make

make modules_install install

完成后,reboot

2、修改配置:

设置新内核为自动启动:grub2-set-default 0

设置nbd模块自动加载:

建立文件:/etc/sysconfig/modules/nbd.modules

内容:modprobe nbd max_part=16

重启。

3、安装配置qemu-img与qemu-nbdyum install qemu-img

4、创建文件并挂载:qemu-img create -f vpc test.vhd 10G //创建一个动态模式的10G VHD格式文件

qemu-img create -f vmdk test.vmdk 10G //创建一个动态模式的10G VMDK格式文件

qemu-nbd -c /dev/nbd0 test.vmdk //将test.vmdk挂载到/dev/nbd0设备文件上

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值