Code Monkey home page Code Monkey logo

Comments (4)

bacongravy avatar bacongravy commented on July 21, 2024

I'd love to find a way to build a Parallels box without needing another vendor's VM software installed. I've spent many hours looking for a viable solution to creating a Parallels hdd from a raw device or existing macOS disk image (dmg), but have come up short.

If we're going to still require a second vendor's VM software, qemu-img's price does seem appealing, but in my experimentation it seems to have the downside of writing to disk as many bytes as there are in the virtual hard disk itself. The current DMG->VMDK->HDD method only uses ~10GB per step, regardless of how large the virtual hard disk has been sized.

That said, regardless of how much disk space it uses, I would totally accept a PR which added an action to convert from DMG->HDD using qemu-img, and also added internal logic to the cli to choose which actions to use depending on whether VMware or qemu-img is detected. I would be reluctant, however, to entirely remove the VMDK->HDD action unless the new DMG->HDD action had a similar disk footprint, and had no dependencies on anything but the OS or Parallels Desktop.

from macinbox.

bacongravy avatar bacongravy commented on July 21, 2024

@americanhanko Could you provide an example of the qemu-img and prl_convert command-line invocations you used to successfully generate a Parallels HDD from the raw device?

from macinbox.

bacongravy avatar bacongravy commented on July 21, 2024

This approach looks promising: raw2vmdk

The basic idea is to fill in a VMDK template to create a single-extent VMDK whose single extent is backed by the file created by dd-ing the raw device.

One thing I want to try is creating a single-extent VMDK backed by the raw device file (/dev/diskN) of the mounted disk image; I think, depending on what API prl_convert uses to copy the bytes, it might "just work".

This would be similar to how the current dmg->vmdk conversion works; we use vmware-rawdiskCreator to create a "Boot Camp" virtual disk that is backed by a raw device file, and then use vmware-vdiskmanager to convert the "Boot Camp" virtual disk into a flat VMDK. In my testing, prl_convert doesn't support converting directly from rawdisk VMDKs, but maybe we can trick it using the technique I described above.

from macinbox.

bacongravy avatar bacongravy commented on July 21, 2024

This commit closes this issue.

from macinbox.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.