Skip to main content

12 tutorials for building Linux labs

Want to create a home lab environment to test out new Linux skills? These how-tos will help ease your journey.
Image
Two people working on laptops

Photo by Darryl Kelly on Unsplash

People in the IT industry are always learning. Technology changes very quickly, and without continuing education (formal or informal), we struggle to keep up.

In a different professional life, I was a technical instructor. I noticed that some students excelled at learning through books or lectures, but most people learn by doing. One frustration was limited lab time because of the realities of being out of the office, and another was the amount of content I needed to deliver. I also had to keep up with myriad changes to operating systems and network technologies.

All this is to say that I'm a big believer in the value of hands-on opportunities for IT practitioners, whether they're just breaking into the industry or have decades of experience.

As an editor and author for Enable Sysadmin, I'm regularly exposed to creative ideas in the articles I edit. I recently edited two articles that covered home-lab environments, Build a lab in five minutes with three simple commands by Alex Callejas and Build a lab in 36 seconds with Ansible by Ricardo Girardi. After doing some digging on the Enable Sysadmin site, I discovered other articles on the topic. These articles are great (and discussed in more detail below), and I discovered I could expand on some of the topics they cover. These articles inspired me to write several more pieces on creating and using hands-on learning environments.

To help boost your continuing education, this article pulls together Enable Sysadmin's resources on creating a home lab environment.

Is a home lab useful?

IT professionals work with new technology regularly. Exploring new features and technologies enhances our skills, raises our creativity, and boosts our troubleshooting abilities.

Don't just take my word for it; take a look at these articles.

In Sysadmin careers: Overcoming fear and loathing at the keyboard, Christian Trujillo shares how a home lab environment was a key factor in landing his first admin job, serving as a topic of conversation in the interview.

Ricardo Gerardi discusses the importance of a lab environment in preparing for hands-on certification exams, such as the RHCSA and RHCE exams offered by Red Hat. In his article 5 tips to help you prepare for technical certification exams, Ricardo emphasizes the need to do tasks in these exams.

[ Learn more about Linux in the free online course Red Hat Enterprise Linux Technical Overview. ]

Susan Lauber brings a technical instructor's perspective into the discussion in How to learn a new technology. Many students are mystified by how instructors accumulate such vast bodies of knowledge. One secret is a hands-on approach to continual learning.

Finally, How to prepare for Linux system administrator certification exams is my take on how to prepare for the Red Hat certification exams. The article discusses the importance of using a lab environment.

What do I need?

Labs for home or office can require significant hardware resources. One choice is to repurpose older hardware, which can be very cost-effective. Another great option is virtualization. There are also online lab solutions.

My article How to build a home lab to learn new Linux skills provides an overview of the process. I summarize options for bare-metal versus virtualization and general requirements.

Virtual machines

The article that inspired both Ricardo Gerardi and me to write about home labs is Build a lab in five minutes with three simple commands. In it, Alex Callejas shows how to use virsh to quickly deploy a lab environment that consists of Linux-based virtual machines. It's a great approach to creating your own hands-on learning environment.

Ricardo Gerardi credits Alex's article with motivating him to try something similar using Ansible. The result is a lab that builds in 36 seconds. Find out how to deploy your own version by reading Build a lab in 36 seconds with Ansible.

[ Learn more about automation in the free course Ansible Basics: Automation Technical Overview.] 

In The Ansible Tower demo lab mission, Christian Trujillo covers deploying an Ansible environment that's well-suited to testing playbooks—a great way to gain hands-on experience and experiment with different settings and configurations.

Containers

Not all lab environments should be based on virtual machines. There are many great scenarios for deploying services through containers. It's worthwhile to have your own lab to work with this technology.

Recently, I needed a very simple Linux environment with minimal applications, so I created containers to provide the environment rather than using virtual machines. The result is a quick lab setup that allows me to work with container technology while providing prospective students with an efficient tool for working with text editors. Seth Kenlon and I wrote about it in How to build a container lab in five minutes.

Labs as a service?

Not everyone has the resources to create a home lab environment, and frankly, not everyone has the need. The benefits of cloud-based, Anything-as-a-Service IT are clear to everyone, and lab environments are no different.

Red Hat, for example, offers basic labs that you can spin up to practice specific skills without the hassle of deploying your own virtual machines or containers and without the overhead of hardware maintenance. I summarize them in Try 'labs as a service' to learn Linux in the cloud.

I built it, now what do I do with it?

The articles above provide guidance on creating an environment for hands-on opportunities, but they don't really suggest exactly what to do with that environment. Now that you're ready to use your lab, read my 13 exercises to boost your Linux skills for some detailed ideas on what to do with it. Combine my suggestions with workplace responsibilities and certification exam objectives to create a roadmap to get the most out of your lab.

Jörg Kastnig's article 6 resources and 3 tips to help you enter the world of Linux containers gives some great advice for preparing a containers environment and deploying your first container images.

Wrap up

The importance of a lab environment cannot be overstated—it's a critical part of the learning experience. There are many ways to provide yourself a place, including physical systems, virtual machines, and containers, to experiment and learn. There are also online lab solutions, which simplify the process by removing setup requirements.

Once a lab environment is available, the next challenge is how to use it. These articles help you answer these questions. Use the insights and experience of Enable Sysadmin authors to make your IT learning path a little smoother.

Author’s photo

Damon Garn

Damon Garn owns Cogspinner Coaction, LLC, a technical writing, editing, and IT project company based in Colorado Springs, CO. Damon authored many CompTIA Official Instructor and Student Guides (Linux+, Cloud+, Cloud Essentials+, Server+) and developed a broad library of interactive, scored labs. He regularly contributes to Enable Sysadmin, SearchNetworking, and CompTIA article repositories. Damon has 20 years of experience as a technical trainer covering Linux, Windows Server, and security content. He is a former sysadmin for US Figure Skating. He lives in Colorado Springs with his family and is a writer, musician, and amateur genealogist. More about me

Try Red Hat Enterprise Linux

Download it at no charge from the Red Hat Developer program.