Linux… On a Memory Key?

Yes, you heard right, Linux fans. But it’s not as simple as all that.

Today I’m going to be playing around with the new version of ACE management server from VMWare. As you probably know, they’re all for running normal operating systems in completely abnormal ways, and ACE lets us do even more abnormal things – like installing a virtual machine which can run entirely from a memory key, while avoiding touching the host operating system at all.

Of course, you don’t necessarily need to use Linux for this. In fact, any operating system which is supported by VMWare can run in this manner. So if you’d rather run Windows or OpenSolaris, go right ahead. The principle is exactly the same.

The reasons for doing this aren’t immediately apparent, but bear with me. Running virtual machines usually requires VMWare Workstation or a similar product. It’s fine if you’re doing it at home, but what happens if you want to carry your computer in your pocket and run it wherever you are?

For example, a computer on a stick would be perfect for the following uses:

  • Remote workers who need a set level of security, but only have untrusted machines to use.
  • When you’re travelling and only have access to Internet Cafe computers
  • When you’re a massive nerd who gets kicks out of doing stupid things which essentially waste your time.

I’m sure that there are a lot of different reasons you could want to do this sort of thing, but the usefulness of something isn’t always a prime concern to me. The fact that we can do it is cause enough. So let’s get started.

EDIT: Before we begin, there’s a slight problem with this. I barelled into the install thinking that it’d all work just fine, but unfortunately there’s some licensing concernes when it comes to using the PocketACE portion of the ACE environment. So while we can create PocketACE instances, it’s impossible for us to run them without paying upwards of $1700 for licensing. So if anyone at VMWare would like me to show this feature off for them (and my *massive* visitor base) then please let me know. Otherwise, please view this purely as a technical exercise.

The first thing you’ll need is a copy of VMWare Workstation 7, VMWare ACE Management Server Virtual Appliance, and trial keys for each. These can be obtained from the VMWare website, here. They’ll last for 30 days to give you a taste test of the technology, after which you can decide whether or not you want to go ahead and buy a full version.

Installing VMWare workstation shouldn’t be too much of a trouble for anyone with half a brain cell remaining (hell, even I can do it), so I won’t bother doing a step-by-step for it. Once it’s installed and you’ve rebooted your system, we’ll go ahead and load our new ACE virtual appliance. Again, you should know how to load a virtual image, so I won’t go through this.

Boot your new virtual appliance. It’ll go through the standard Linux boot structure and ask you to set the new root password.


Once it’s finished booting, a screen will appear which shows what your ACE server’s details are. Below you can see that my server’s IP address is – the IP it pulled from my DHCP server.


As it says in the banner, we need to configure our server before we go any further. So fire up a browser and go to https://your.server.ip.address:8000 and log in with the root password you created during startup. You’ll then be greeted with the setup screen.


Hit start and enter the license key VMWare gave you, along with your name and company if you wish.


Select a database server, or select the embedded database if you don’t have a database server lying around. Surprisingly, I’m going for the embedded option, but it’s only because I want to keep things simple.


Enter some login details for a local administrator, or use an LDAP domain account. Again, I’m going for the simple option.


Upload custom SSL certificates if you have them, or just hit next to use the one the ACE server pregenerated when it did its initial install.


Boring logging stuff which nobody cares about.


Then hit Restart to make your changes take effect.


The whole virtual appliance won’t restart – it’ll only be the service which runs on the appliance. So it should be quite speedy. Once it’s one, you should be able to go back to VMWare Workstation and connect to your sexy new ACE Management Server.


Enter your IP address, then your password when prompted.


And you’ll drop in to your new ACE Instances screen.


Groovy. So now that we’ve got the framework in place to install our copy of Linux on to a USB memory key, we should probably get ourselves a copy of Linux, right? Well, for those who haven’t installed a version of Linux with VMWare, be prepared to revel in its simplicity.

Create a new Virtual Machine with some very basic hardware requirements. For your hard disk, go about 1Gb less than the actual size of your memory key, as the extra ACE framework will take up a bit of space. In my case, I’ll be using a 4Gb memory key, so I’ll cap my disk space at 3Gb.

Hit go, and your Linux install will complete itself.


And when finished, it’ll drop you to your new desktop.


Right. So now we have the framework, and we have the guest operating system. Time to bring it all home by putting our new operating system on to our memory key. Shut down your shiny new Linux machine and go back to its information page. Click on the option labelled “Enable ACE features”


Then on the next screen, choose the following option


Choose a name for your new ACE package, and select where it will be stored on your computer. This isn’t where your memory key is, this is a hard disk on your local machine. We’ll deploy it to the memory key in a sec.


Next, choose which versions of VMWare player you’re going to install. I’m only going to choose Windows, as that’s all I plan on running this machine on, but if you wanted to run on different flavours of Linux, you’d have those options too.


If you want to set a password to restrict starting of this Virtual Machine, you can do so here. I’ll leave mine blank for now.


Double check your settings and click finish.


VMWare will now go bundle up your virtual machine into a nice little encrypted package which is ready for deployment to your USB memory key. And when I say encrypted, I’m talking about a 128 bit AES cypher. Not too shabby, really.


Once complete, you’ll be able to deploy it to your portable device. Hit finish.


Then choose your USB device.


And hit “Deploy” to begin the process. This will take a little while, depending on the speed of your USB device, so it’s possibly time to go and make a cup of tea.


Is it still going?


Shit. Guess I’ll go and have a smoke too.


It’s done? Hot damn! Ok, let’s unplug the Memory Key and fire it up on another machine. On the root of the memory key is a file called run.exe, so we’ll just run that and…


What? Licenses? But I have trial licenses! It says so on my VMWare account page!

Well, shit. Looks like I just spent a couple of hours writing this for nothing. Well, maybe not for nothing. We have run through an interesting install of a fresh piece of software, and barring the licensing issue, everything went pretty smoothly. If anyone out there would like to send me some screenshots of a PocketACE deployment in action, is the place to do it.
– Leigh Henderson.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s