How to work from home when you don’t have your company computer

As you may have seen on various news sites, the UK is covered in snow at the moment and we aren’t coping well as a civilisation. I usually leave my work computer in the office unless I am planning to work from home the following day, and since the weather forecast on Tuesday was that it would be easy to get to work on Wednesday I did so.

As it turns out, we got another 2 inches of snow on Tuesday night, and the site at which I work is closed until further notice. Happily, this has not been quite as big a problem as it otherwise would have been for me; and in the interests of (a) bragging and (b) hopefully aiding my colleagues who are in a similar plight, I shall now explain how I got around it.

One option, of course, is to effectively donate one of your own computers to your company, running their stuff on it. This is unattractive because it costs a lot. Obviously, if there were a way to get a free computer to run your company’s programs on this problem would go away. I have an additional complication in that my company prefers Windows on Linux on the desktop, and I prefer OS X.

Enter VirtualBox: a piece of software which when combined with recent hardware allows you to run a second system inside the main operating system of a computer. First step is to get that installed.

Now any system, whether real or in VirtualBox, needs somewhere to store its data. In the case of OS X on my MacBook this goes on an SSD disk built into the machine. One option for the storage for the VirtualBox virtual machines is to allocate some space on this SSD disk for the virtual machine – I chose not to do this because (a) I have better uses for the space and (b) it means you always have to run the virtual machine on the same physical machine every time. Fortunately I have a machine I use as a server which has plenty of spare space: I allocated some of its space and used the open-source iSCSI Enterprise Target software to make it available on my network. VirtualBox accesses the iSCSI disk and presents it to the guest operating system as a local disk, so you don’t need to go trying to find iSCSI initiator software for whatever OS you want to run.

This means I can run the virtual machine on my laptop or on my other mac; if I run it on my other mac I can access it using an RDP client. New in VirtualBox 3.1 is a rather cool feature allowing me to start the VM on one system and later “teleport” it to the other without needing to shut it down or losing any data. This is handy, as my laptop has more CPU grunt, but uses a wireless network whereas my other mac is slower but on the same wired network as the iSCSI server so it can do things which involve a lot of access to the virtual disk much more efficiently. Another problem with running the VM on the laptop and using iSCSI disks over wireless is that if I sleep and wake the laptop the VM software starts wanting to access the disk before the network is available to service the request.

Once I’d set all that up, it was quite simple to follow the instructions to install Ubuntu in the VM, then I downloaded the VPN packages to connect to the office network with my wife’s laptop, installed them, and then it was good to go.

Total elapsed time for the whole project would probably be about 3 hours, most of which is just computers doing things and maybe 30 minutes of human time overall. Once you’ve set it up, it’s not very much slower to use than an actual machine.

Of course, you can use Windows instead of Linux if you have the appropriate licenses (I don’t), and the host operating system can be pretty-much anything.

2 Responses to “How to work from home when you don’t have your company computer”

  1. Russell Finn

    Sounds good Phil. So do you now have a VirtualBox ubuntu image with the AT&T client installed and a minimal set of apps (an editor and Firefox might suffice, at least initially)? How big is the virtual image?

    VirtualBox allows you to dynamically allocate space in the physical file that is used to store the virtual hard disk, so you could have a downloadable image that is eg 2GB big but logically 20GB inside (sounds like the Tardis).

    • Phil

      If you use iSCSI you have to allocate the whole thing in advance, as VirtualBox doesn’t have a way to expand/shrink the disk. So I don’t have any of the kind of image you are talking about there. From within my linux image there seems to be about 4.5Gb used, not counting the contents of my home directory.

      It’s probably quicker to install Karmic and add the IBM layers from scratch than downloading a pre-canned image of that size: the packages are quite well compressed, and you would only download the latest ones, whereas if you got a pre-canned image you would probably spend all the time you saved and more downloading updates.


Leave a Reply

  • (will not be published)

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>