Dept. of Computer Science & Engineering

User Tools

Site Tools


This is an old revision of the document!

Setting up a Virtual Machine

When taking CSE 101, CSE 107, or CSE 113, we recommend that students new to using Linux use a virtual machine. A virtual machine is an emulated computer, which we'll use to run the GNU/Linux operating system from a Windows or Mac OS machine.

For introductory classes, it is especially helpful to use a virtual machine, since you can be sure you have all of the software required with minimal setup. In this guide, we'll walk you through setting up our standard VM image, which comes with everything you'll need for your classes pre-installed.

Downloading Virtual Box and the appliance file

  1. First, you need to determine whether your host OS is 32-bit or 64-bit. This is your processor's architecture.
    • If you are on Windows, follow this guide.
    • If you are on Mac OS, open the Terminal application and run $ uname -a.
      • If the output includes x86_64 somewhere on the line, you have a 64-bit architecture.
      • If the output only includes x86, you have a 32-bit architecture.

  2. Download the Virtual Box release that matches your OS and architecture from the VBox downloads page. Run the installer, when the download has finished.

  3. Now, go to our file server's Appliances folder, and download either Ubuntu 32-bit.ova or Ubuntu 64-bit.ova, depending on your architecture.

  4. Once this download has finished, open the file. Virtual Box should automatically open. On the settings window that appears, check the checkbox that says Reinitialize the MAC address of all network cards or your machine may not work. Then, click the Import button.

  5. Once the import has finished, you can click the green arrow in Virtual Box to start your new VM.

What next?

This machine is yours to break, fool around with, or work on! It's capable of everything you need for our introductory classes.

Learn to use the shell

We recommend checking out The Linux Command Line if you haven't ever used a shell before. Since you'll be spending a lot of your time in a shell from here on, it's good to get familiar with it early.

Back up your files

You should use Dropbox to make sure your files aren't lost, since it can be pretty easy to overwrite something accidentally. We've already installed it for you, so sign up! You should really learn to use our Gitlab, but Dropbox will do the job for now.

Write code!

Your default text editor is Atom, which is made by Github. Atom supports many plugins and themes that make it able to be highly personalized. The iPython shell is also installed, and is useful for writing Python code. Both are great for people learning to code for the first time.

At some point, nearly every person in this department begins to use Vim and/or Emacs. They are extremely powerful, highly customizable tools, and can make writing code faster, easier, and prettier than in other text editors.

  • To learn to use vim, run $ vimtutor.
  • To learn Emacs, run $ emacs, then press ctrl+h, then press t.


If Virtual Box is open but your VM isn't booting, it usually means that either you downloaded a 64-bit architecture on a 32-bit machine or virtualization is disabled in your BIOS. For help with the second issue, follow this guide to re-enable it.

If you're still having trouble, come by Cramer 222 during our office hours and ask us for help.

What's installed on the VM

  • XUbuntu, which is Ubuntu with the XFCE window manager.
  • ZSH with default oh-my-zsh, which makes the command line pretty and adds some basic functionality.
  • The emacs, vim, and atom text editors.
  • Python 2 and 3, with iPython command shells.
  • The GCC and LLVM software suites, including debuggers, and the libsdl2 library.
  • Dropbox, for file backup.

If you want to build your own Linux machine, virtual or otherwise, a basic summary of our setup follows. For a full $ dpkg -l output, please see this page

commons/virtualbox.1473190187.txt.gz · Last modified: 2019/10/16 16:45 (external edit)