As I blogged previously, I've setup a Virtualbox inside Ubuntu Karmic and installed an old copy of WindowsXP and then iTunes.
I needed to upgrade to the latest version of the firmware and after some scouting around, it appeared possible back in v2 of Virtualbox, so I was hoping that v3 would be fine.
At first, it didn't work.
I couldn't work out why, but not long after the upgrade had started, the "preparing" message just kept cycling until a "can't do it" error message popped up. Restart the VM and tried again... nothing.
Then, as a matter of last resort, I noticed that just before the "preparing" message came up, the USB icon in the bottom left didn't flash. I right clicked and noticed that the iPhone had restarted and therefore wasn't checked in the list of USB.
So, if you recheck it each time the iPhone switches mode or restarts, everything works like a charm