For some reason, I had to mount a QEmu qcow2 image in the host system. I googled around and found some post on the qemu-dev list. Also, the QEmu FAQ answers whether one can mount any QEmu image, but it’s not very verbose. So I went and tried and voila: It works 🙂
muelli@xbox:~$ qemu-nbd --read-only --partition=1 --snapshot winxp.img & muelli@xbox:~$ sudo nbd-client localhost 1024 /dev/nbd0 Negotiation: ..size = 31447206KB bs=1024, sz=31447206 muelli@xbox:~$ sudo mount /dev/nbd0 -oloop ~/empty/ muelli@xbox:~$ ls -l /home/muelli/empty/ total 1744981 -rwxrwxrwx 1 root root 0 2009-03-13 18:35 AUTOEXEC.BAT -rwxrwxrwx 1 root root 4952 2008-04-14 09:00 bootfont.bin -rwxrwxrwx 1 root root 207 2009-03-13 18:27 boot.ini -rwxrwxrwx 1 root root 0 2009-03-13 18:35 CONFIG.SYS drwxrwxrwx 1 root root 4096 2009-03-13 19:17 Dokumente und Einstellungen drwxrwxrwx 1 root root 0 2009-03-13 22:02 Driver -rwxrwxrwx 1 root root 536399872 2009-04-04 14:37 hiberfil.sys -rwxrwxrwx 1 root root 0 2009-03-13 18:35 IO.SYS -rwxrwxrwx 1 root root 0 2009-03-13 18:35 MSDOS.SYS drwxrwxrwx 1 root root 4096 2009-03-13 22:29 nlite -rwxrwxrwx 1 root root 47564 2008-04-14 09:00 NTDETECT.COM -rwxrwxrwx 1 root root 251712 2008-04-14 09:00 ntldr -rwxrwxrwx 1 root root 805306368 2009-04-04 14:37 pagefile.sys drwxrwxrwx 1 root root 0 2009-03-13 19:03 Postinstall drwxrwxrwx 1 root root 4096 2009-03-13 20:59 Programme drwxrwxrwx 1 root root 4096 2009-03-13 19:06 System Volume Information drwxrwxrwx 1 root root 32768 2009-04-04 14:40 WINXP muelli@xbox:~$
It uses a technology I’ve never heard of: Network Block Device (NBD). Now I’m a bit smarter. And I hope you can make use of this information 🙂