Configuring Your VM

Table of contents

  1. Prep Your Machine
  2. Install your vm software
  3. Install ubuntu
  4. Powering off your VM
  5. Install required software and setup
    1. Required tools
    2. Interfacing with your VM
  6. See Also:

Prep Your Machine

These instructions (especially the software versions) are only applicable for Spring 2024 (Either Section). If you are viewing this in the future or for a different class or section, these instruction may be different, or require different software. Check with your instructor.

Before you begin, make sure that you have downloaded the ubuntu image for your class and your architecture. This is ubuntu 22.04 in either x86 or arm. You may see an extra number, like 22.04.03. That is just a slightly newer release, and is perfectly fine.

For Any system, You want the 22.04 Server versions

  • If you have an Apple silicon mac (M1, M2, etc), You will need to use the arm64 versions.
  • If you have a Intel/AMD windows computer, you will need the amd64 version.
  • If you have an Intel Mac, follow the windows instructions
  • If your configuration is not one of these, please contact a Jess or TA during lab sections.

You will also need quite a bit (minimum 20gb, ideally 40gb) of free space. If you do not have any free space, make some now.

Install your vm software

For Apple Silicon mac users

For Other systems

DO NOT try to use WSL. Other Virtual Machine platforms are possible, but not recommended or supported.

Install ubuntu

These instructions have been configured for Ubuntu 22.04 Server

Powering off your VM

Be sure to NEVER forcefully power off your vm.

If you’re using virtualbox, this means only using the “Send the shutdown signal” option, the “Save state” option (this is not the same thing as shutting down, and requires disk space), or using the terminal to shutdown. In UTM, you can hold the power button in the toolbar and select “Request power down”. To shutdown your vm from the terminal, you can use sudo shutdown -h now.

Install required software and setup

We now have a virtual machine, but while we can use it right now, there are many tools that we need for this class, and some tools that we can use to simplify this process.

Required tools

This is not the definitive list of everything we need for this class. It is only what you need to get started with the first few assignments. As the class progresses, you will be given more software you will need to install. Thus, it is best that you familiarize yourself with unix commands. Guides to how to install these are here

  • ssh
  • git
  • clang
  • clang-format
  • clang-tools
  • valgrind
  • make

Interfacing with your VM

To make your life much easier, we require that you follow the steps in interfacing with your vm now. This will enable you to do things like copy/paste, and resize your VM window.

You must do these steps.

See Also: