Prepare Your Course Workspace
Start inside the Ubuntu VM
Section titled “Start inside the Ubuntu VM”Finish the setup guide for your computer before you start this one. Boot the Ubuntu virtual machine and log in, because everything below happens inside the guest and not on your host.
Open Ubuntu’s application menu, search for Terminal, and open it. A terminal is just a window for talking to the computer in text. Inside it, a program called a shell reads whatever you type. We’ll be living in this window for most of the course.
Before we create anything, let’s confirm this is actually the guest the course expects:
grep '^VERSION_ID=' /etc/os-releaseuname -mpython3 --versionThe first two results must include:
VERSION_ID="24.04"x86_64Python should probably report 3.12.x. If the release or the architecture comes back different, go back to your VM setup guide right now and fix it. Carrying the wrong guest into the later x86-64 labs wastes a lot more of your time than rebuilding does today.
The terminal should show a line similar to:
student@course-vm:~$That line is the prompt, and it means the shell is sitting there waiting for you.
studentis the example username.course-vmis the example computer name.~means your home folder, the normal place for your files.$marks the end of the prompt.
Your username and computer name will probably be different, and that’s fine. The important part is that you never type the prompt itself, so when this page shows a command in a block, type only the command.
Use Ubuntu desktop help if the file or application controls differ from what you expected on your host. The steps here belong to the guest desktop.
Create the course folders
Section titled “Create the course folders”A folder, also called a directory, gives files a named place to live. We’ll keep every bit of course work inside one folder named underdunn-course, so exercises, downloads, and notes are easy to find again.
Type these four commands, pressing Enter after each line:
mkdir -p ~/underdunn-course/exercisesmkdir -p ~/underdunn-course/labsmkdir -p ~/underdunn-course/notesmkdir -p ~/underdunn-course/downloadsmkdir means make directory, and the -p option lets it create a missing parent folder along the way (without -p it would just complain). The / characters separate one folder from the next, so ~/underdunn-course/notes means the notes folder inside underdunn-course, itself inside your home folder.
Before running the next command, predict the four names you expect and whether their order will matter. Now list the contents of the course folder:
ls ~/underdunn-courseYou should see these four names, although the terminal may arrange them on one line:
downloads exercises labs notesNotice they came back in alphabetical order rather than the order you typed them. ls sorts names by default, so the order you created the folders in never mattered.
If one of them is missing, check its spelling against the commands above and run just that one again. Running the same mkdir -p twice is harmless, and it won’t erase the folder or anything inside it.
| Folder | What belongs there |
|---|---|
exercises |
Small files you create while following lessons |
labs |
Working copies of supplied lab files |
notes |
Optional notes and reminders |
downloads |
Original lab archives downloaded from the course |
Save and reopen a file
Section titled “Save and reopen a file”Open Text Editor in Ubuntu. Enter Hello from the course VM, save it as
~/underdunn-course/exercises/hello.txt, then close and reopen it. If the text is
still there, you can create and find the files we’ll use in later lessons.
The notes folder is available if notes help you. Nothing needs to be submitted.
Run these checks in the terminal:
grep '^VERSION_ID=' /etc/os-releaseuname -mpython3 --versionls ~/underdunn-courseCheck for Ubuntu 24.04, x86_64, a Python 3 version, and the four course folders.
If one is missing, return to that setup step before continuing.
Stop a command that keeps running
Section titled “Stop a command that keeps running”Most commands finish on their own and hand the prompt back to you, but some will happily run until you stop them.
Type:
ping 127.0.0.1ping keeps checking whether another network address answers, over and over. The special address 127.0.0.1 points right back at this VM (it is usually called localhost), so this is a completely harmless local test. After two or three lines show up, hold Ctrl and press C.
The command should stop and the prompt should come back. That key combination is written as Ctrl+C, and you’ll want it any time a lesson command keeps running and you need your terminal back.
Closing the terminal window won’t normally delete files you already saved, so if you shut it by accident, just open Terminal again.
Know what a VM restore changes
Section titled “Know what a VM restore changes”Your VM setup guide had you create a snapshot, a checkpoint, or a powered-off copy. That recovery point captured the VM exactly as it was at that moment, and nothing since.
So restoring it rolls the VM’s files back to that earlier moment too. Anything you made afterward can disappear, and that includes the text file you just saved. Before you restore a whole VM, copy any notes you care about somewhere outside it, and I’d reach for a lab’s own reset instructions first whenever they exist.
You don’t need to test a restore right now. Just confirm the recovery point actually exists in VMware Workstation, Hyper-V, or UTM, and if it doesn’t, go back to the last section of your setup guide and make one before continuing.
Where future downloads go
Section titled “Where future downloads go”Later labs hand you download links, and those files belong in ~/underdunn-course/downloads. If your browser drops one into ~/Downloads instead, move it over with Ubuntu’s Files application.
Don’t extract or run a downloaded lab file until its instructions tell you to. The first lab introduces archives and checksum verification using the file you download there.
Your workspace is ready
Section titled “Your workspace is ready”You’ve now got one place for course work, a saved text file, and a way to stop a command. You also know to copy any work you want to keep outside the VM before restoring it. Continue to Linux Foundations, where we start pulling apart what those commands actually mean and how to read what they hand back.
Check your understanding
Section titled “Check your understanding”Knowledge check
Question 1 of 2
Practice complete
You've checked the key ideas. Revisit any explanation you need, then continue when it makes sense.