Study notes covering Identifying Basic Linux Concepts.
Author: Dylan Barrett
Date: 01/12/2026
📖 Useful Vocabulary / Acronyms
| Terminology | Definition |
|---|---|
| Devops | A Combination of software development and system operations, and refers to the practice of integrating one discipline with the other |
| DevSecOps | A Combination of software development, security operations, and systems operations, and refers to the practice of integrating each discipline with others. |
| Distribution (Distro) | A packaged version of Linux that includes the kernel, system tools, libraries, and software. |
| Kernel | The core of the Linux operating system that manages hardware and system resources. |
| CLI (Command Line Interface) | A text-based interface used to interact with the operating system by typing commands. |
| GUI (Graphical User Interface) | A visual interface that allows users to interact with the system using windows, icons, and menus. |
| Shell | A program that interprets and executes user commands (e.g., Bash, Zsh, PowerShell). |
| Bash (Bourne Again Shell) | The default command-line shell for most Linux distributions. |
| Option (Switch) | A modifier that changes how a command behaves (e.g., -l in ls -l). |
| Argument | The target or object a command operates on (e.g., a file or directory name). |
| Man Page | The built-in Linux manual that documents commands and configuration files. |
| Tab Completion | A shell feature that automatically completes command or file names. |
| Command History | A record of previously executed commands stored by the shell. |
| FHS (Filesystem Hierarchy Standard) | A standard that defines the directory structure and file locations in Linux. |
| Root Account | The superuser account with unrestricted access to the system. |
| sudo | A command that allows permitted users to run commands with elevated privileges. |
| su (Switch User) | A command used to change the current user, often to the root account. |
| Text Editor | A program used to modify configuration files (e.g., Vim, Nano). |
| Vim | A powerful modal text editor commonly used on Linux systems. |
| Nano | A simple, user-friendly command-line text editor. |
| Open Source | Software whose source code is publicly available and can be modified and redistributed. |
Use Linux Basics
Linux Distributions
Linux is an Open Source Operating System, because of the fact that anyone can create their own there are thousands of different Distributions (Distros). Though Many of the Distributions trace back to one of two, either Red Hat Linux or Debian
Some of the most common distros are
- Fedora Linux
- Ubuntu Desktop, Server, Core
- Red Hat Enterprise Linux (RHEL)
- Rocky Linux
- AlmaLinux
- Linux Mint
- Debian
- openSUSE
Linux Server
- Linux server deployment can be used to
- Webservers
- Domain Name System (DNS) Server
- File Server
- Print Server
- Log Server
- Virtualization Container Server
- Database Server
- Cluster Server
Linux Interfaces
Linux frequently uses the Command Line Interface(CLI), while administrators for other Operating systems commonly use a Graphical User interface.
Command Line Interface- Characteristics
- Speed - Usually quicker to execute a series of commands at the CLI
- Performance - Usually consumes fewer hardware resources, leaving those resources free to support the server's purpose.
- Scriptability - You can write CLI commands to a text file, which the system then reads and executes in a consistent efficient, repeatable, and scheduled manner
- Nonintuitive commands are often difficult to relate to or understand.
- Inconsistent - Many Commands differ from each other in small but distinctive ways, making it difficult to recall exactly how to use them
Common Shells for Command Line Interfaces
- PowerShell (Windows)
- CMD (Windows)
- Bash (Linux and Mac)
- ksh (Linux)
- KornShell (Unix)
- Zsh or Z Shell
- Fish
Common Linux Graphical User Interfaces
- GNOME (Ubuntu)
- KDE Plasma (Kali)
- Cinnamon
- Mate (Parrot)
- Cosmic (PopOS!)
Bash Characteristics and Syntax
Syntax
- Syntax Components
- Command - The Primary Instruction given to the system
- Sub-Command - A secondary, more detailed instruction supporting the primary command
- Option - A command Modifier that slightly changes the way the system processes a command
- Argument - The object on which the command acts
ip # Command
ip addr # Command + SubCommand
ls # Command
ls -l # Command + Argument
ls /var/log -l # Command + Option + Argument
Bash Command Strategies
- Bash Support Tab Completion, which means if you type enough of the command, you can press tab to finish it
- Bash also keeps a record of previously entered commands in a history file. You, can reference this file and use it to repeat or edit commands
- The Simplest way to interact with your bash history is with the up and down arrow keys
- You can type history and it will display the contents of the history file. Each entry in the history file is a number you can type! and the number to execute that command
history
1 ls
2 whoami
3 clear
!2
- Some Shells store commands in memory, meaning once the computer is rebooted, the command history will no longer be available
- Bash stores command history in a file on the disk, meaning it is persistent across reboots
Interface Login Elements
- Some versions of Linux have you boot and log in to a command line interface, and will prompt you to log in
- Some Versions of Linux will have you boot login to a gui and will prompt you to log in
Documentation and Manual Pages
If you need assistance with the syntax of a command, you can use the manual for that command
man ls
Man Page Elements
- The TITLE section - Usually the first line of the man page
- The Name Section - Displays the name of the command or file and a summary
- The SYNOPSIS section - Reviews the syntax for the command or provides a brief overview of what the config file is used for
- The AUTHOR Section - Displays the name of the programmer who wrote the command
- The REPORTING BUGS Section - Provides the contact information for where to report bugs
- The COPYRIGHT Section - Identifies who owns the copyright to the command or service
- The SEE ALSO Section - Lists man pages or other resources that are related to the current man page
Man Page Navigation
- Home - Moves to the beginning of the man page
- End - Moves to the end of the Man page
- Page Up - Scrolls up one page
- Page Down - Scrolls down one page
- / - Begins a search for a term or test string
- n - Moves to the next occurrence of the term
- p - moves to the previous occurrence of the search term
- q - Exits the Man page
Built-in Documentation
- Most commands include help references and the -h or --help after the command to display the reference material.
- The whatis command provides a brief description of a specified command
ls -h
ls --help
whatis ls
- Built in documenation can be found at /usr/share/doc
The COMPTIA Troubleshooting Methodology
- Identify the problem
- Determine the scope of the problem
- Establish a thorough review of the probable cause or question the obvious
- Test the theory to determine the cause
- Establish a plan of action
- Implement the solution or escalate
- Verify full system functionality
- Implement preventive measures
- Perform a root cause analysis
- Document findings, actions, and outcome through out the process
Use Linux Utilities
Vim and Nano
Linux stores its configurations in text files. If you need to change system settings, you must edit these files. While there are many different ways to edit a text file in a GUI interface, there are many linux distributions that come without a GUI interface. Where you must edit the text file in the Command Line Interface.
Vim
- Vim is powerful and complex, and uses three different modes for text editing
- Insert Mode - The keyboard acts as normal; you can edit the text within the file.
- Command Mode - Pressing a key on the keyboard issues commands to Vim instead of entering text, for example, i tells Vim to enter insert mode.
- Execute Mode - You can enter this mode with: which provides a command prompt for Vim. :wq is how to write and quit in Vim.
- Many modes and commands can make Vim a little confusing. Here are some basic functions
- Create/Open - This function uses the vim filename, which creates a new empty file
- Edit function - uses the i command and allows you to edit the file
- Save function - uses the esc key and:w commands to move out of insert and write the changes to the file
- The Close function - uses the esc key and:q command to move out of command mode and exit aand you can combine:wq to write and quit in the same command.
Nano
- Nano is a popular and common alternative to Vim. It is simpler but less powerful.
- Nano does not have modes. instead it uses keyboard shortcuts using the Ctrl meta key.
- Ctrl+O saves the file
- Crtl+x exits the file. As with Vim, you must be capable of using Nano to create, edit, save, and close files
- nano filename - create a new empty file
- You can edit as soon as you open the file
- Ctrl+o to save
- Ctrl+x to exit
vim /etc/pref_shell
i
SHELL=/bin/csh
export SHELL
esc
:wq
nano /etc/pref_shell
su and sudo Commands
-
There are three types of accounts on Linux systems
- Root - This is the administrator account.
- Standard User
- Service
-
Logging in with administrator access grants broad permissions and is not recommended. The Security best practice is to log in with a standard user and switch to an administrator account as needed with su.
su root # to switch from standard user to root
exit # to leave the root user
su -root # to switch from standard to root with root profile.
- Sysadmins can edit a file named/etc/sudoers to delegate specific tasks to individual users and groups.
- As a security measure, some distributions disable the root user account and force the use of sudo on the specified accounts.
Common Directories in Linux
- With so many different linux distobutions, administrators rely on the Filesystem Hierarchy Standard (FHS) to understand the default location of particular resources.
- Three common directories administrators work with regularly```bash
/home/username # The user's private directory
/home # Where the users' directories are stored
/etc # Most system configuration files are stored here
/var/log # Log files for the system and applications are stored here.