qemu-nbd使用教程


服務端

服務器環境

已經安裝過qemu-img的32位ubuntu

ubuntu@ubuntu-virtual-machine:~/laboratory$ uname -a
Linux ubuntu-virtual-machine 3.13.0-46-generic #76-Ubuntu SMP Thu Feb 26 18:52:49 UTC 2015 i686 i686 i686 GNU/Linux

服務端配置

  • 創建一個文件系統為ext3的qcow2文件
ubuntu@ubuntu-virtual-machine:~/laboratory$ qemu-img create data2.img 20M
ubuntu@ubuntu-virtual-machine:~/laboratory$ mkfs.ext3 data.img
ubuntu@ubuntu-virtual-machine:~/laboratory$ qemu-img convert -O qcow2 data.img data.qcow2
  • 不需要加載nbd模塊
root@ubuntu-virtual-machine:~# ls /dev/ | grep nbd
root@ubuntu-virtual-machine:~#
  • 發布文件
root@ubuntu-virtual-machine:~# qemu-nbd -p 8888 -b 0.0.0.0 /home/ubuntu/laboratory/data.qcow2

客戶端

客戶端環境

安裝了libvirt的64位CentOS

[sm@centos ~]$ uname -a
Linux centos 2.6.32-431.el6.x86_64 #1 SMP Fri Nov 22 03:15:09 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

客戶端配置

  • 加載nbd模塊
[root@centos sm]# rmmod nbd
[root@centos sm]# modprobe nbd max_part=8
  • 映射服務器的塊設備到本地nbd設備
[root@centos data]# nbd-client 192.168.100.25 8888 /dev/nbd0
  • 掛載本地nbd設備到文件系統
[root@centos sm]# mount /dev/nbd0 ./data/
[root@centos sm]# cd data
[root@centos sm]# touch mytest.txt
  • 使用完成后斷開設備
[root@centos data]# cd ..
[root@centos sm]# umount ./data/
[root@centos sm]# nbd-client -d /dev/nbd0
Disconnecting: que, disconnect, sock, done

本地使用qemu-nbd訪問qcow2文件

  • 加載nbd模塊
[root@centos sm]# rmmod nbd
[root@centos sm]# modprobe nbd max_part=8
  • 映射qcow2文件到本地nbd設備上
root@ubuntu-virtual-machine:~# qemu-nbd --connect=/dev/nbd0 /home/ubuntu/laboratory/data.qcow2
root@ubuntu-virtual-machine:~# mount /dev/nbd0 ./data/
root@ubuntu-virtual-machine:~# cd data/
root@ubuntu-virtual-machine:~/data# ls
mytest.txt
  • 卸載設備並斷開鏈接
root@ubuntu-virtual-machine:~/data# cd
root@ubuntu-virtual-machine:~# umount /home/ubuntu/data
root@ubuntu-virtual-machine:~# qemu-nbd -d /dev/nbd0
/dev/nbd0 disconnected


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM