Transferring the Root Filesystem to an SD Card

A project log for Hacking an Iris 3000 Videophone

This project has to do with my attempt of gaining full access to an ACN Iris 3000 videophone.

The SycoraxThe Sycorax 12/31/2020 at 03:390 Comments

[Continued from previous log entry]

To get the virtual partitions within the QCOW2 image transferred to the SD card I went back the second tutorial that I found, which I've mentioned in one of my previous log entries. That tutorial however, did not provide the appropriate information for transferring a QCOW2 image to an SD card. It only provides a way to convert a QCOW image to a raw format image, then using kpartx to mount the partitions within the image, and then using rsync to transfer the mounted partitions to a USB stick. This would work in theory but it is very inefficient and time consuming so I decided to not go this route. I had to find other options.

Doing more research, I found a Stack Exchange question that was posted by a user in 2011 which has to do with transferring a QCOW2 image to a physical drive. The solution provided in the post was enough information for me to successfully do the same thing. The following command is the solution for the user's question. 

qemu-img convert -f qcow2 -O raw my-qcow2.img /dev/sdb

Just like the in the second tutorial that I found, this solution uses the qemu-img command but with different arguments that allows for the direct transfer of QCOW2 virtual partitions and data to physical media.  I altered the command arguments to include the QCOW2 image for the RootFS and the storage device where I wanted it to be transferred to. I included the -p argument in order to view the progress of the transfer. The final command is as follows:

sudo qemu-img convert -p -f qcow2 -O raw debian_squeeze_armel_standard.qcow2 /dev/sdb 

Before running the command I used Gparted to unformat the SD card with unallocated space just to make sure that a had a clean slate before proceeding and to avoid any potential errors. I did not test weather this was needed though. For anyone wondering, tutorials on how to unformat drives using Gparted can be easily found using Google.

I ran the command and the transfer of the compressed QCOW2 image began. The transfer took about 30 minuets. When it was complete I saw that the SD card was mounted properly and had the entire RootFS of Debian Squeeze on it. Out of curiosity I went back into Gparted and saw that, not only was the Root partition transferred but also two additional SWAP partitions, along with the respective file system formats of each partition. This was great, and meant that I could now put the SD card into an ACN Iris 3000 and switch over it's internal RootFS to the new one that is loaded on the SD card.

[To be continued in next log entry...]