Experimenting with Linux

Impressions after installing Ubuntu on an external hard drive

Intro

Hello and welcome to another blog post for Anthony’s Techie Thoughts! If you’re new here, my name is Anthony and I’m studying programming to make a career change from mathematics teacher to a frontend web developer. In my blog posts, I reflect on my journey and share things I’m learning along the way. You can find me on Mastodon, GitHub, LinkedIn, Hashnode, DEV.to, and CodeNewbie.

In this blog post, I share my experience with installing Ubuntu on an external hard drive. This article is more of a reflection of my experience and impressions of Ubuntu and not so much a “how-to” guide, but I will include links to the resources I used for learning about Linux and how to install Ubuntu. Alright, let’s get to it!

Free time to explore

During the weeks of March 27 to April 16, I had the good fortune to be on a mid-term break from my teaching job. One of those weeks was spent on a (much-needed) vacation, but the remainder were (mostly) dedicated to studying. Along with continuing the interactive videos and projects on Scrimba.com, I started exploring other tutorials within the realm of computers, programming, etc.

Before I dive too deeply into the Linux crash course I completed and how I installed Ubuntu on an external hard drive, let’s take a quick look at what Linux is and how it got started.

What is Linux

Disclaimer: I am by no means an expert on Linux and its various distributions (or distros), but here’s a basic overview based on my limited experience with the OS. Please forgive if I make any errors and if you know more about Linux, feel free to correct my misunderstandings or misinterpretations. Thank you.

Linux is a family of free and open-source operating systems based on the Unix operating system. These are based on the Linux kernel first released by Linus Torvalds on September 17, 1991.

There are a huge variety of Linux distributions (or distros) but the most popular include Debian, Fedora, Linux, and Ubuntu. The advantage of these operating systems is that they are open-source. This means that their source code is freely available for anyone to inspect and improve. This makes them very secure and reliable to use.

You can learn more about Linux at linux.org or on the Linux Wikipedia page (both of which were helpful to me in writing this section)

Taking a crash course and using Ubuntu

During my break, one of the tutorials I stumbled across (or perhaps saved — I can’t remember) was freeCodeCamp’s “Linux Operating System - Crash Course for Beginners” taught by KeepItTechie. I enjoyed the course and found it very accessible. Josh (KeepItTechie) does a great job of guiding beginners through the installation and basic usage of the operating system.

I will note that the installation instructions on the video did not work for me. I think it’s simply a matter of the video was record a year or so ago and the Virtual Machine software has since been updated. I found these instructions from Ubuntu to run desktop on a virtual machine very helpful.

The course covers the following topics:

  • Terminal commands

  • Working with directories

  • Working with files

  • Working with file content

  • Linux file structure

  • System information

  • Networking

  • Package manager

  • Text editors

Overall, it was a great introduction to Linux/Ubuntu. It helped me get some exposure to the operating system and it helped boost my confidence in using the command line interface. However, I was curious to know more about Linux and what you could do with it. So I started searching the Internet and YouTube. That’s when I discovered you could install and run Linux on a USB drive or an external hard drive.

Installing Ubuntu on an external hard drive

One of the valuable resources I found after doing those Internet and YouTube searches was the Switch to Linux YouTube channel. I found the tutorials here very helpful in getting a better understanding of the process of installing Linux to a USB flash drive or an external hard drive.

First I created a bootable USB stick with Ubuntu 22.04 installed on it. This allowed me to “try out” the OS without having to do a complete install. I have MacOS so I used this installation tutorial for MacOS from Ubuntu.com, but they also have an installation tutorial for Windows users.

However, having a bootable USB stick only allows you to test drive the OS or install it on a machine. I wanted to have it installed and operational on an external hard drive so that I could have persistence (more on that in this YouTube video by Switch to Linux).

After doing some sleuthing on the Internet, I found this installation guide on UbuntuHandbook.com which helped me install Ubuntu 22.04 onto an external hard drive, including how to encrypt the drive.

Once I had Ubuntu installed on the hard drive, I was ready to get a deeper feel for the OS. I decided to complete my solo project, Tindog, for Module 7 of Scrimba.com’s Frontend Developer Career path.

Impressions

Overall, this was a great experience and I look forward to exploring more of Ubuntu and Linux. I’ve used MacOS for close to 7 years now and Ubuntu, in terms of looks, wasn’t too dissimilar so there wasn’t a big adjustment there. I have used Windows in the past (and still use it at my place of employment) so I could see Ubuntu being a harder adjustment for a Windows user who’s not used to using different operating systems. However, I do know there are Windows-like Linux distros for Windows users looking to try Linux but don’t want too big of a change.

As of right now, I’m not sure if I’m interested in going into back-end development or working with operating systems. I’m still very early in my career change, but I did appreciate that this experience of installing Ubuntu onto an external hard drive taught me a little bit about how computer drives are partitioned. I won’t claim to have a full and deep understanding of it, but I am grateful I know a little bit more than I did before this experience.

I’m also grateful that I am now no longer using GitHub Desktop to manage my repositories. Instead, I am now working directly in the command line interface. I purposefully did not install GitHub Desktop onto the Ubuntu “computer” I created with the external hard drive. I have been studying how to use Git within the command line interface, but having GitHub Desktop installed on my computer made it a bit of a crutch. Why open up a terminal window and manually type commands when you can just click to update that repo on GitHub, right?

Well, I wanted to put add another layer of learning to the project I was working on so I decided to use the command line interface and directly update my repo using the Git commands. This helped me gain a deeper understanding of how these commands are used and create a habit ofw using them. I have now uninstalled GitHub Desktop and use the terminal for updating my remote repos, but I will say that using GitHub Desktop as a beginner was a great stepping stone to getting where I’m at now with using the Git commands.

Lastly, I like the spirit and philosophy that comes with using Linux and other open-source software. One of the key advantages of using a Linux distro is that oftentimes you can install it on older hardware and runs great.

This helps bring old computers back to life and extends their usage. I like this idea because it helps reduce tech waste as well as gives me (us) an option for getting off the consumerism treadmill of always “needing” the latest and greatest device.

Further, there are privacy concerns with using proprietary software such as MacOS or Windows, but I think that discussion is outside the scope of this post.

Ultimately, I love the idea of being able to extend my current computer’s lifespan with a Linux distro because that means I can save the money I would have spent on a new computer for other things like life experiences (e.g., travel).

Thanks for reading

Thanks so much for reading this post. I hope you found it helpful and enlightening.

Have you tried a Linux distribution like Ubuntu before? How did you feel about it? Leave your thoughts in the comments below.

Hearing your thoughts makes this more of a conversation and helps us all learn. See you next time.