If you’re new to Linux, it can be overwhelming to sort through all of the info online. What should you do next? How do I even use Linux?
There are TONS of things you can do with Linux, but let’s assume you’re learning it to further your career and open up additional opportunities.
Here’s a few resources to get you started:
Learn the Command Line
The command line is the all-mighty interface into interacting with Linux. Hardly any real-world Linux system is administered via a GUI
Don’t be too intimidated by the command-line, after some practice, it can become second nature. Anytime you’re feeling confused about a command, you can run man <command>
to get the “manual page” for a specified command. eg. man ls
will give you more info on the list command and flags to use with it (those parameters that look like -l
on the back end of the command).
From the command line you can create files and directories, administer the entire system and write scripts to automate away manual work.
Digital Ocean’s blog has some awesome resources for Learning Linux and is a great place to start.
Learn how the System Actually Operates
It’s a good idea to get an idea on how the Linux system actually operates…
Knowing this will give you more holistic knowledge on Linux.
topics like:
- The Terminal (that thing up above)
- Boot Process
- File System Structure (wtf is an /etc/??)
- Disk and files
- system config
- The Kernel (not the KFC one)
- Networking
- Shell Scripts
I’d recommend How Linux Works, available from No Starch Press.
Follow Your Curiosity!
For me, a big driver of learning Linux has been in using the Raspberry Pi platform. Following your curiosity and building “fun” projects is a great way to learn.
Over the past few years, here’s a few projects I’ve built that have helped me to learn Linux:
Hosting Your Own Websites on a VPS
Cheap hosting is available from cloud-providers like AWS, DigitalOcean, Ramnode, Linode and countless others. Operating a Linux-based web-server on one of these platforms is typically ~5 bucks/mo (sometimes less). You’ll learn a ton about installing a web server like Nginx or Apache, monitoring, networking, deploying new changes, and more.
PiHole
A network-wide ad blocking filter for your home network
The Pwnagotchi, a hand-held raspi that sniffs and captures WiFi handshakes and other data
- A hand-held GPS tracking device based on a Raspberry Pi, outputting my real-time coordinates to an e-ink screen. This required me to learn how to read serial data from
/dev/ttyUSB0
from a cheap ebay GPS module. - A plane tracking device that receives ADS-B messages over Software Defined Radio
Conclusion
The possibilities for using Linux are endless. Learning Linux is a great foundation for an entry into many jobs in IT. The biggest companies in the world use it to host their applications and to keep their systems secure. I’d recommend basic Linux skills for anyone working in IT.