Sergey Malykhin wrote:
Thanks, Nikolay,

I meant that I hacked kernel a little to get information about file, data buffer, buffer size and offset in file. And it's ok. I'm only not sure that I'll have working backup if do it while VB is running. I understand that the best solution - suspend VB and copy, but it's less interestin, because I'll have pauses in VB work.

Sorry to sound a little annoyed, but I really don't understand why adding a little virtualization makes people think they're looking at something they never did before.

Creating a copy of the VDI file (no matter how smart is it done by intercepting file writes and what not) is just like creating a sector-based copy of a hard disk without knowledge of the running guest OS. Without taking special measures (for most OSes I wouldn't know what to do actually) there cannot be any guarantee that the resulting copy is consistent. Even pausing a VM will not fundamentally change this, because the guest OS could have unwritten changes in its filesystem cache, i.e. in RAM. It'll frequently work without noticeable corruption, but it remains a "keep fingers crossed" solution.

The only safe ways to create backups are those which the guest OS is aware of (file-based or guest OS based snapshotting like Nikolay suggested), or completely shut down the guest OS. Using mechanisms like saving state in VirtualBox would require backing up the VM state file as well.

Klaus

Sergey

2010/3/30 Nikolay Igotti <[email protected] <mailto:[email protected]>>

     Hi Sergey,

    Not sure what you mean by "I'm controlling write function to vdi
    file from kernel", but in general it's possible to use FS's (such as
    ZFS) snapshotting capability to take snapshots of live VMs image.
    OTOH to be 100% safe, I would pause VM, flush OS write buffers with
    'sync', and then copy underlying .vdi.
    If you assume image to change insignificantly, maybe it would make
    sense to take snapshot once image stabilized, and only backup
    differences.

    Hope that'll help,
    Nikolay



    Sergey Malykhin пишет:

        Hello,

        I have VB running and want to make backup for vdi file. But I
        only need to have changed sectors. I'm controlling write
        function to vdi file from kernel. Can you please answer is it
        enough just copy it while VM is running or I need to suspend it?

        TIA
        ------------------------------------------------------------------------

        _______________________________________________
        vbox-dev mailing list
        [email protected] <mailto:[email protected]>
        http://vbox.innotek.de/mailman/listinfo/vbox-dev



------------------------------------------------------------------------

_______________________________________________
vbox-dev mailing list
[email protected]
http://vbox.innotek.de/mailman/listinfo/vbox-dev


--
Dr. Klaus Espenlaub
Sun Microsystems GmbH
Werkstrasse 24
71384 Weinstadt
Germany

=====================================================================
Sitz der Gesellschaft:
Sun Microsystems GmbH, Sonnenallee 1, D-85551 Kirchheim-Heimstetten
Amtsgericht Muenchen: HRB 161028
Geschaeftsfuehrer: Thomas Schroeder
=====================================================================

_______________________________________________
vbox-dev mailing list
[email protected]
http://vbox.innotek.de/mailman/listinfo/vbox-dev

Reply via email to