(Part 2 of series Blueprint for a Modern Research Computing Environment)
Follow me :
This article sets Ubuntu as your default terminal, teaches the core navigation commands (pwd, ls, cd, mkdir, cp, mv), and establishes the code-vs-data convention you’ll follow for the rest of the series: code lives in /home, data lives on your mounted Windows drives (/mnt). By the end, you’ll have your first project folder created.
In Part 1, we installed WSL2, Ubuntu, and Miniconda. We also noted that projects should live in your Linux home directory — but didn’t create that structure yet.
In this article, we’ll get comfortable using Ubuntu and build that structure properly.
By the end, you’ll have:
AI tools (like Claude, Grok, Gemini, or ChatGPT) give the best troubleshooting advice when they have the exact text of the tutorial. To ensure the AI understands what you are trying to build, we will give it the actual file.
1. Download the tutorial file
2. Upload it to your AI
Part2.md into the chat).3. Ask for Help Copy and paste this exact prompt into the chat along with your file:
I have attached the markdown file for the tutorial I am following. Please read it so you understand the specific environment I am trying to build.
I need help with the following:
Step [X]: [paste exact step text from the blog]
Command I ran: [paste exact command]
What happened: [paste full output/error — if the terminal was truly blank, say so explicitly]
Please help me troubleshoot and fix this error. You can use your general knowledge to solve the problem, but your solution MUST align with the architecture and tools taught in the attached file. Do not suggest alternative setups that contradict the tutorial. Once fixed, tell me what to do next in the article.
To go deeper on a step before you run a command:
I have attached the
Part2.mdfile. Look at Step [X] and explain exactly what the command does and why we are doing it before I run it.
Think of this series as the roadmap and your AI assistant as your learning companion.
Right now, Windows Terminal opens PowerShell by default. We’ll change that to Ubuntu so you don’t have to switch manually every time.
∨ next to the + tab buttonFrom now on, every new Windows Terminal window opens Ubuntu directly.
Click the + button in Windows Terminal.
A new Ubuntu tab opens. You can run multiple tabs at the same time — useful when running a script in one tab while working in another.
When Ubuntu opens, you’ll see something like:
(base) abhigyan@DESKTOP-XXXX:~$
| Part | What it means |
|---|---|
(base) |
The active Conda environment |
abhigyan |
Your Ubuntu username |
DESKTOP-XXXX |
Your Windows machine name |
~ |
Your current location (home directory) |
$ |
You are a regular user (not admin) |
You first saw this prompt at the end of Part 1. Now we’ll understand what you can do with it.
Additional side note:
pwd
pwd means present working directory. Shows the path of the folder where you are currectly located
if you are inside your /home directory, then if you run pwd. It should show something like Output:
/home/abhigyan
This is your Linux home directory. Same as ~. You saw this briefly in Part 1 — now we’ll use it actively.
ls
. are hidden by default. Your Conda configuration lives in one of these hidden files.
ls -a
mkdir projects
cd projects
Move one level up:
cd ..
Go back to your home directory from anywhere:
cd ~
touch file.txt
backup.txt.
cp file.txt backup.txt
cp file.txt ~/Projects2/file.txt
mv file.txt ~/Projects2/file2.txt
mv old_name.txt new_name.txt
In Part 1, we established that /home/yourusername is your Linux home and /mnt/c, /mnt/d etc. are your Windows drives mounted inside Linux.
Now we go one step further — this is the rule you’ll follow throughout this series:
Code and projects → /home/yourusername/projects/
Data and large files → /mnt/d/ (or whichever Windows drive you use for storage)
Why this split?
/mnt/c)/mnt/d) means they’re accessible from both Windows and Linux, easy to back up, and don’t clutter your Linux environmentThink of it this way: your Linux home is your workbench. Your Windows drives are your storage shelves.
Run these commands one by one:
cd ~
mkdir project_1
cd project_1
pwd
Output:
/home/abhigyan/project_1
If you are on WSL2: Your Windows drives are mounted inside Linux. Access them like this:
ls /mnt/d/
Replace d with whichever drive letter you use for storage.
If you are on native Linux: Your data lives on a separate drive or folder on your Linux filesystem. Use ls to navigate to wherever you store your data.
You don’t need to create anything here. Just confirm you can access your storage location from the terminal.
When you install software inside Ubuntu — including Miniconda and all Python packages — it lives inside Linux, not on your Windows drive.
Miniconda lives at:
ls ~/miniconda3/
You never need to go there directly. But knowing it’s inside Linux explains why software installed in Ubuntu is invisible from Windows Explorer — they are separate filesystems.
What You’ve Done:
pwd, ls, cd, mkdir, cp, mv/home for code, /mnt for data~/project_1 folderWant to go deeper on Linux and terminal basics? Software Carpentry has a free, beginner-friendly course that complements this part well: The Unix Shell — Software Carpentry
Next: Part 3 — Managing Projects with Conda Environments | Previous: Part 1 — Installing WSL2 with Ubuntu, and Miniconda