Skip to main content

Learning the Unix OS

LearningTheUnixOS_OReilly.jpgLearning the Unix OS - 5th Edition
Jerry Peek, Grace Todino & John Strang ( O'Reilly, 2002 )

This book is now over 20 years old, yet it has aged gracefully.
Roughly 90% of the information inside is still relevant today and the other 10% can be treated as a history lesson. 

The reason can be found in the book's preface.

This book teaches basic system utility commands to get you started with Unix... We cover a commands most useful features...

And it more than lives up to its purpose. While Linux & Unix have changed a lot over the years the command line itself hasn't changed radically. The reason why the commands shown are interchangeable is that many of the core commands are identical in terms of syntax and functionality between Unix & Linux. There are of course some differences, but they are not enough to be a problem at our current level. We won't learn about Modern Filesystems or Containers, but we will learn enough to get even more confident with working through Linux.

Book Overview

Our next step in the systems fundamentals course will be Learning The Unix OS by O'Reilly. You may treat this book as a Practical Guide to Unix. This book is 157 pages long and will take you 7 days to finish if you dedicate between 2-3 hours every day to work through it.

When you look at the title you will notice the word Unix, but don't let the word Unix discourage you. Much of what we will be going over will be regarding the Command Line Interface. Which for our purposes is practically interchangeable with Linux. Don't misunderstand, they are two different operating systems, with the key difference being that Linux is Open-Source while Unix is Proprietary

The main goal of this book is to serve as a Practical Starter Guide, covering the main essentials of the CLI and Unix OS. That is why this book is still remains relevant even today. While we did go through an introductory course already, that being the Linux Upskill Challenge, there are some nuances that that this book goes through that will be very helpful to us.
We'll explore the various types of commands, Windows Systems, basic File Management, I/O-Redirection and even some interesting pieces of Linux history. When I finished going through this book, I felt confident that I could start working on this roadmap and bring something interesting to the table. We still have a long way to go before we can call ourselves true adepts, but steadily, we are making progress.

Goals of this Book
  • Gain a basic understanding of the various use cases for Linux as well as cover its strengths and weaknesses
  • Learn how to find the current shell you're working in
Personal Note

( The following has been added to the overview page. But I am keeping this here as this was when I thought of the idea. )
Throughout this journey I will do my best to be as objective as I can. However, I am still in the middle of my learning and I am only human. While technology itself is neutral, the way we use it, how we think about it, what we think is best moving forward and so on, are things that are human viewpoints. There are of course times when things are simply 0 or 1, but as you go through your own journey you will find that you will have to come up with your own definitions and reasons for doing things backed by personal preference or well researched analysis or simply that's the way things are done. 
So, to carry on with that spirit I will place the sparkling star icon✨ whenever certain notes or topics are things I am speaking my own mind on. I encourage you to come up with your own analysis or thoughts on those topics.

Goals of this Book
  • Gain a basic understanding of the various use cases for Linux as well as cover its strengths and weaknesses
  • Learn how to find the current shell you're working in: ps $$ & echo $SHELL
  • Cover the formatting of Unix command arguments
  • Go over Jobs and how to: show, restart, stop and kill them: jobs | fg | ctrl-z | kill %
  • Cover Window Systems going over virtual consoles, terminal windows vs alphanumeric terminals
  • Root vs relative path names
  • 3 permission types of files and directories
  • Understand group ownership and how to give specific groups access to files and directories
  • How to remove files with spaces between them
  • Cover the Primary Wildcards ( *, ?, [ ] )
  • Go over the main ways to find files in Unix ( find | locate )
  • I/O Redirection with: ( >, >>, <,  |, grep, sort )
  • Pager program commands ( less | more | pg )
  • Examine CLI web browsers and their use case
Course Notes

I quite enjoyed making the notes for this book since it led me to making several web searches on various different topics about Linux both old and new. 

  • ✨Why should we use Linux?
    • The FOSS nature of the OS allows groups to have a very powerful tool. Making it a great choice for smaller teams or groups without much money.
    • Linux is also made to be run on practically anything. From the weakest hardware to the most powerful, although Linux's best potential can be extracted on more powerful systems.
    • As another note, Linux supports both windowed and non-windowed systems.
  • Chapter 1 Notes
Required Reading

Section Projects