I encounter a SATA disk virtualization unsupported failure on an AMD64 linux, but I will explain the whole situation for you helping me to sort it out.
Here is my environment : Toshiba laptop dual-core with a Debian Lenny (testing) AMD64 and a "Vista Home Premium 32 bits OEM Toshiba" partition (sda3) on a SATA HDD.
Toshiba only provides a rescue disk that wipes all HDD data and restores the Windows partition and the hidden recovery partition. The Vista serial key I get with it is not compatible with standard Vista Home Premium OEM in my language (I tried 3 different original-made ISOs with no success at registration time), it's only compatible with the Toshiba OEM Vista, so I have no hope to be able using a standard OEM or retail version of Vista with legal means..
So, I cloned the size-modified and flawlessly-running 30 GB SATA Vista partition with partimage, build a flawlessly-running VirtualBox-2.1.2_OSE (both with the standard-way and the package-way, with Sun's build instructions and dpkg-buildpackage respectively) for Debian AMD64, installed a Debian AMD64 on an virtual IDE disk, used partimage to recover this partition on the virtual IDE disk, used testdisk to rebuild virtual NTFS Vista partition boot sector, and finally used a Vista Recovery Disk 32 bits ISO to perform Windows repair wizard, 'chkdsk' (with auto-repair switches),'bootrec /fixboot' and 'bootrec /fixmbr' commands.
Then, when I start the virtual machine and boot Vista in safe mode, it hangs on the 'c:\system\crcdisk.sys' loading, and the repair wizard runs fine but displays a 'corrupted file system' message in logs. From the Vista recovery disk, I can access the file system with DOS command line with no problems.
So, even if I fear some Toshiba laptop drivers are installed in this image and are not compatible with VirtualBox virtual hardware, this error seems to be linked with hard disk (if we consider that 'c:\system\crcdisk.sys' is the currently loading driver, and not the last one successfully loaded. If it's the second solution, I don't know the name of the following driver, that is the faulty one). Backup made with partimage ran flawlessly, so did the restore process, so I believe image is Ok (I could try with CloneZilla so). So, the only reason I can imagine is that the original partition was on a real SATA HDD, and is now on a virtual IDE HDD.
So I tried to shift from virtual IDE to virtual SATA from this command-line, as standard user (virtual machines are not recognized as root, it seems normal) :
Code: Select all
VBoxManage modifyvm vm.name.containing.only.dots.alpha.and.numeric.chars -sata on
VirtualBox Command Line Management Interface Version 2.1.2_OSE
(C) 2005-2009 Sun Microsystems, Inc.
All rights reserved.
[!] FAILED calling machine->GetSATAController(SataCtl.asOutParam()) at line 2596!
[!] Primary RC = NS_ERROR_NOT_IMPLEMENTED (0x80004001) - Not implemented
[!] Full error info present: true , basic error info present: true
[!] Result Code = NS_ERROR_NOT_IMPLEMENTED (0x80004001) - Not implemented
[!] Text = Method GetSATAController is not implemented
[!] Component = Machine, Interface: IMachine, {ea6fb7ea-1993-4642-b113-f29eb39e0df0}
[!] Callee = IMachine, {ea6fb7ea-1993-4642-b113-f29eb39e0df0}
Here is one other strategy I plan, and I hope you can tell me if it's realistic or not : creating a raw virtual HDD, mount the real Vista SATA partition on it (with hardware profiles pre-configured to welcome VirtualBox virtual hardware without problems), and then clone this RAW HDD partition to a VirtualBox virtual partition, that I'll then be able to save as .vdi etc. and use in a virtual IDE HDD. I'll wait your opinion to start it, since it's big-time consuming.
Ok, this is not all-related to VirtualBox, but this situation is complicated but not so rare, and I believe there must be more computering-knowledged people here than on a random "computer.com" forum.
Windows has never been so non-free that when it's sold bound to a specific hardware..
Thanks for help