WGU D281: LPI Linux Essentials (WGU D281 Study Guide) | Complete A+ Solution Guide_ Update, Study notes of Linux skills

WGU D281: LPI Linux Essentials (WGU D281 Study Guide) | Complete A+ Solution Guide_ Updated Winter 2026/2027.

Typology: Study notes

2025/2026

Available from 04/08/2026

homework-fortune
homework-fortune 🇺🇸

5

(1)

95 documents

1 / 25

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
LPI LINUX ESSENTIALS (WGU D281 NOTES)
Shawn Powers YouTube Linux Essentials Course:
You Can Find Linux On:
PCs: Desktop, Servers, Laptops
Embedded Devices: IOT devices, cell phones, etc
Cloud: Cloud Providers run Linux in their environment (AWS, Amazon, Google, Microsoft, ETC)
Many Distributions Use the Linux Kernel and make their own to tweaks to the kernel in order to create their own operating systems (for
example: Debian based, Red Hat based, or other Linux operating systems)
Linux Distributions:
Debian Based (These are just a few Debian Based Linux Distros but there are others):
o Ubuntu (Linux Mint is also based on Ubuntu and uses the GNOME desktop for styling and design)
o Pop OS
o Kali Linux
Red Hat Based:
o RHEL (Red Hat Enterprise Linux) (Used in Enterprise Environments)
o Fedora
o Cent OS
Other Linux Distros (These Distros are not based on Debian or Red Hat):
o Android, Chrome OS
o SUSE
o Arch
o Embedded Systems
Debian Based Systems Use the app .deb package manager format (.deb aka Debian package manager format)
Red Hat Distros use the yum .rpm package manager format (.rpm aka Red Hat Package Manager format)
Linux Applications and what they are used for (most listed here are open source except Google Chrome) :
Libre Office (Linux version of Microsoft Office):
o LibreOffice Writer (Linux version of Microsoft Word)
o LibreOffice Calc (Linux version of Microsoft Excel)
o LibreOffice Impress (Linux version of Microsoft PowerPoint)
o LibreOffice Base (Linux version of Microsoft Access)
o LibreOffice Draw (Linux version of Microsoft Visio)
GIMP: (Linux version of Adobe Photoshop to edit photos and to draw similar to Microsoft Paint)
Firefox: (most Linux distros use Firefox as the default browser; usually installed by default) (open source)
Google Chrome: (browser is not installed by default in Linux distros because it belongs to Google therefore it is proprietary and
not open source, but Google Chrome can be installed by visiting the Chrome website).
Chromium Browser: (chromium browser is open source and in fact Google Chrome is based off of it)
OpenShot: (open-source software for video editing) (not installed by default in most distros)
Audacity: (audio editing software something like Protools or other audio editors)
Mozilla Thunderbird (open Source)
ownCloud: (file hosting software similar Google Drive) (not entirely open source)
Nextcloud (file hosting software similar to Google Drive (completely open source)
Apache: (software to run webservers on Linux) (open source)
NGINX: (another software option to run webservers on Linux) (open source)
MYSQL: (open-source database software)
Programming Languages available to Linux Distros (other languages are either exclusive to Windows or Mac such as .Net and Swift):
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19

Partial preview of the text

Download WGU D281: LPI Linux Essentials (WGU D281 Study Guide) | Complete A+ Solution Guide_ Update and more Study notes Linux skills in PDF only on Docsity!

LPI LINUX ESSENTIALS (WGU D281 NOTES)

Shawn Powers YouTube Linux Essentials Course:

You Can Find Linux On:

  • PCs: Desktop, Servers, Laptops
  • Embedded Devices: IOT devices, cell phones, etc
  • Cloud: Cloud Providers run Linux in their environment (AWS, Amazon, Google, Microsoft, ETC)

Many Distributions Use the Linux Kernel and make their own to tweaks to the kernel in order to create their own operating systems (for example: Debian based, Red Hat based, or other Linux operating systems)

Linux Distributions:

  • Debian Based (These are just a few Debian Based Linux Distros but there are others): o Ubuntu (Linux Mint is also based on Ubuntu and uses the GNOME desktop for styling and design) o Pop OS o Kali Linux
  • Red Hat Based: o RHEL (Red Hat Enterprise Linux) (Used in Enterprise Environments) o Fedora o Cent OS
  • Other Linux Distros (These Distros are not based on Debian or Red Hat): o Android, Chrome OS o SUSE o Arch o Embedded Systems

Debian Based Systems Use the app .deb package manager format (.deb aka Debian package manager format)

Red Hat Distros use the yum .rpm package manager format (.rpm aka Red Hat Package Manager format)

Linux Applications and what they are used for (most listed here are open source except Google Chrome) :

  • Libre Office (Linux version of Microsoft Office): o LibreOffice Writer (Linux version of Microsoft Word) o LibreOffice Calc (Linux version of Microsoft Excel) o LibreOffice Impress (Linux version of Microsoft PowerPoint) o LibreOffice Base (Linux version of Microsoft Access) o LibreOffice Draw (Linux version of Microsoft Visio)
  • GIMP: (Linux version of Adobe Photoshop to edit photos and to draw similar to Microsoft Paint)
  • Firefox: (most Linux distros use Firefox as the default browser; usually installed by default) (open source)
  • Google Chrome: (browser is not installed by default in Linux distros because it belongs to Google therefore it is proprietary and not open source, but Google Chrome can be installed by visiting the Chrome website).
  • Chromium Browser: (chromium browser is open source and in fact Google Chrome is based off of it)
  • OpenShot: (open-source software for video editing) (not installed by default in most distros)
  • Audacity: (audio editing software something like Protools or other audio editors)
  • Mozilla Thunderbird (open Source)
  • ownCloud: (file hosting software similar Google Drive) (not entirely open source)
  • Nextcloud (file hosting software similar to Google Drive (completely open source)
  • Apache: (software to run webservers on Linux) (open source)
  • NGINX: (another software option to run webservers on Linux) (open source)
  • MYSQL: (open-source database software)

Programming Languages available to Linux Distros (other languages are either exclusive to Windows or Mac such as .Net and Swift):

  • C, Java, JavaScript, Perl, shell, Python, PHP

Screenshots of different Linux Distros:

  • Ubuntu (ubuntu uses the GNOME desktop for the operating system styling, layout, and design):

o

  • Linux Mint):

o

Opensource Philosophy: (free to use, modify, and redistribute)

  • Opensource software is software whose code is made public: o Open-source software can be free or paid o Closed-source software code is not made public and can either be free or paid o The Linux Kernel is free and opensource (companies making their own operating systems based on the Linux kernel can decide whether to keep their operating system free and open source or licensed it commercially):  However, if the companies that use Linux kernel find it a way to make the Linux kernel better (security patches, fixing bugs, etc) in any shape or form that need to provide that source code to the Linux Kernel community so those improvements can be added into the Linux Kernel
  • Two different open-source philosophies even though both allow freedom to use, modify, and redistribute): o Permissive Vs Copyleft:  Permissive: no restrictions on licensing of derivative work  Copyleft: derivative work must use same license as original work
  • License Examples (Public Domain, Permissive, Copy left): o Public domain (CC0 1.0 Universal): no restrictions (have no copyrights) o Permissive (BSD): a little restrictive (redistribution of source code must contain original copyright notice) o Copyleft: the most restrictive license (derivative work must be distributed under the same license terms as original Work; license allows for commercial use, modification, distribution; also must state changes made

Mastering Simple CLI Tools:

  • locate: used to search the entire system for a specific file; for example locate testfile.txt
  • ls -a: used to list all files and folders in the current directory including the hidden files/hidden folders by using the -a
  • ls: used to list all files and folders in the current directory; it won’t show hidden files & hidden folders with this command
  • ls -l: used to list detailed information about a file or directory (long list of file and folder information)
  • ls -la: used to list detailed information about a file or directory including info on hidden files and folders: o – indicates it is a file o d indicates is is a directory

o

o .. indicates that is a folder within another folder (as showed at the end on line 2 in the above picture)

  • cd .. will go back to the parent directory that you are currently in (the command is cd space..) (cd ..)
  • cd ~ used to go back to home directory ; the home directory looks like this> Desktop Documents Downloads Music shown below in picture:
  • pwd: used to the list the current directory that you are in
  • rm: used to remove a file (for example: rm testfile)
  • touch: used to create an empty file (for example touch textdocument.txt)
  • mkdir : used to create a new directory
  • rmdir : used to delete directory (used to delete directories that are empty)
  • rm-r: used to delete a directory that is not empty; deletes a directory that has files in it basically
  • cp: used to copy a file to one location to another
  • mv: used to move a file from one location to another: o linux does not have a rename filename function so you have to use mv as well:  for example: mv originialfilename newfilename: -
  • ls -r: used to list directories and the files in the directories
  • uptime: to find out how the system/computer has been running
  • ls *: used to list everything in a certain folder; the asterisks mean you want to list everything
  • ls filename * o list everything with the filename:

 for example: ls taxdocument * (means list every file with that specified name)

 using an asterisks * after any command in Linux is known as globbing

• If you want to list a file where the filename has spaces in between put the filename in quotes in order to list it

because if not linux will try to execute it as two separate commands:

o For example: a filename that who space in between such as “tax documents” (ls “tax documents”)

• w To See Which Users are logged in: simply type w

• last to see a log/list of logins by users

• uname tells you what operating system you are running

• uname -a tells you what operating system you are running and the version number or lsb_release -a

o for redhat or cent os use cat /etc/redhat-release

o

• history: shows us the commands we have ran in that terminal session

• history -c: clears the history of commands we have ran in that terminal session

When you open up a terminal window in Linux it opens a program known as bash which is the shell

/bin folder contains all the commands (commands line commands) and binaries (executables) for your system

env shows all the environment variables being used by the bash terminal (just simply type env no slash before env is

necessary): to access environment variables cat /etc/environment

• the env command will show things such as all the directories (folders) that the bash shell will look for all the

commands that the bash shell will execute:

• for example: when you run the command ls it will look through all the directories for the ls command (it will

look through the all of the /user directories for the command)

• another example when you run the command for top it will look through all the directories for the top

command

  • gzip -d archievename.tar.gz (used to Decompress a file): o for example: gzip -d backup.tar.gz (-d means decompress) the same will apply to bzip2 and xz)

Alternative Ways to Archive and Compress at the same time:

  • (gzip) tar -c -z -f archivename.tar (-c to create) (-z for gzip compression) (-f means file) and then the filename.tar o Or you can type archivename.tgz filename o Or you can type achievename.tar.gz filename

Alternatives Ways to Extract files:

  • tar -x -z -f archivename.tgz (Extract gzip files)

Redirector Command Output:

  • Pipe (|): used for redirecting output from command to be used as input into another command: o For Example: cat taxtdocument.txt | less  Command comes in handy when reading a document and limiting the amount of text shown in the terminal o For Example:  Cat taxtdocument.txt| more - An option to show more lines of text in the terminal
  • > (Greater than symbol): used to output command line text into a text document  For Example: ifconfig > networksettings.txt (exported from ifconfig to a document called networksettings.txt):  > Note: greater than symbol will overwrite the entire document
  • >> (Two Greater Than Symbols): can also be used to output command line text into a text document  Note: >> (Two Greater Than Symbols): will not overwrite but add on to the end or the file (known as appending)

Some More Commands:

  • head: used to view the top of a text of a text file o head taxdocument.txt (by default it will show the first 10 lines of the document)  head -n 2 taxdocument.txt (in this example we only want to see the first two lines of the document the -n allows us to specific number of lines)
  • tail: used to view the bottom of a text file o By default, it will only show the last 10 lines of the document o For Example: tail -n 5 taxdocument.txt ( in this example we only want to see the last 5 lines of text by using the -n)
  • sort: used to order a list in a document either by ascending or descending order o For Example: sort taxtdocument.txt (by default will sort the document by alphabetical order)
  • wc : used to see the wordcount, number of lines, and bytes of a textfile (by default will show all of this if you don’t specify): o wc-l : to print the number of lines in a textfile o wc-c : to print the byte count of the textfile o wc-w : to print the wordcount of a textfile o wc-m : to print the number of characters in a textfile

Shell Scripting:

  • A script is just a list of commands in a text file and used for automation:

o You can use text editors such as Nano or Vim

o When writing a script, it is general convention to name the script with the .sh at the end to indicate it is a

bash shell script

o In order to start writing a script open the terminal and type in vi .scriptname.sh (if want to use vim) or nano

scriptname.sh (if you want to use nano)

o Don’t forget to start script with #! /bin/bash to indicate you want to run the script in the bash shell (kind of

like how you do when writing an HTML document)

o In order to run the script, you have to change the file privileges of the script and make it executable by

using the chmod command:

  • In the picture above script.sh only has read and write privileges so we need to make it executable in order to execute the script  chmod +x script.sh: (the +x makes the script executable)

/sys contains process stuff that’s not kernel related

Note: sometimes you have to search /proc and /sys to find what you are looking for since some information can’t be scattered amongst the directories

/boot contains kernel files when booting

/etc contains configuration files for programs and applications (in a text-based format)

/var/log contains log files:

  • dmesg: contains all the kernel log files (great for troubleshooting hardware issues and crashes)
  • syslog: some programs will dump all of their logs into the syslog directory
  • NOTE: in Redhat based distros there is no syslog inside the /var/log directory you will have to look inside the messages directory that’s inside the /var/log

Networking in Linux:

Old Way/ Old Linux Commands (although they are still used):

  • ifconfig
  • route
  • netstat

New Commands:

  • ip a (or you can type ip address show)
  • ip route (or you can type ip route show)
  • ss (similar to netstat but it shows socket information)

DNS Information:

  • /etc/hosts : used to view DNS information for the computer/host: (similar to windows host file) o In order to view DNS info type cat /etc/hosts:
  • /etc/resolv.conf : used to view the DNS server information (normally in windows you would see you router or DNS but Linux has its own built in DNS server which is why you may see 127.0.0. o To view DNS server information: cat /etc/resolv.conf (there is no “e” at the end of resolv):
  • host : used to get DNS records of domains (ipv4,ipv6, etc) o For example, host google.com or host yahoo.com

Managing User Accounts:

  • useradd username: used to add another user account to the Linux system (Add New Users): o for example: sudo useradd johndoe o to add user and specify their home directory along with their username all at once use:  sudo useradd -d /home/username -m username - for example: sudo useradd -d /home/johndoe -m johndoe o -d allows you to specify the directory and -m actually creates the directory
  • userdel username: used to delete a user account in Linux (Delete Users) o for example: sudo userdel johndoe
  • usermod: used to modify settings and properties of the Existing users account (Modify Existing User Accounts) o for example: sudo usermod johndoe
  • Here are all the properties you can specify for a user account:

o

  • passwd username: used to set a user’s account password to the Linux system (Set User Password) o for example: sudo passwd johndoe
  • Note: If you want to modify an existing user after their account is created you have to use usermod command
  • To lock an account and keep a user from logging in: sudo passwd -l username (l means to lock account)

Managing Groups:

  • /etc/group : is the folder/directory that contains all the groups of linux system and who belongs to what group o to view the groups: cat etc/group

 rwx are the users permission’s

 r-x are the groups permissions

 the second r-x are permissions for other users on the linux system

o Another example from above using testtext2.txt file:

 rw are the users permissions

 The second rw are the groups permissions

 Other users are read only r

o o Read = 4 o Write = 2 o Execute =

  • Read + Write + Execute = 7
  • Read + Write = 6
  • Read + Execute = 5
  • NOTE: in order for any user to browse a directory the directory needs to be executable
  • chmod : used To modify/change file permissions

o for example if I wanted to give a user write permissions to a text file:  chmod +w filename.txt (by default if you don’t specify group it will default the permission to a user (the file or directory owner instead of a group) (w means write) o Another example if I wanted to give the group write permissions to a text file:  chmod g+w filename.txt (g means group) (w means write) o Another example if I wanted to give the group AND other users permissions to write to a text file at the same time just separate with a comma:  chmod g+w, o+w filename.txt (group and other users can write to file) o Another example if I wanted the group to have read only permissions:  chmod g=r filename.txt (read only) o To remove permissions (use the – minus):  chmod g- rwx filename.txt (will remove the group’s read,write, and execute) o If we wanted to change permissions to a Directory AND all the files in the directory:  chmod -R Directoryname:

  • for example: chmod -R g+r Documents/ o -R (capital R means recursive or everything) o g (group) + r (r means read only)
  • chown : used to change the owner of a file or directory:

o chown along with username of the user you are giving ownership to and the file or directoryname:  for ex: chown sally Documents/ o if we wanted to give user ownership of the directory AND the files in it:  chown -R sally Documents/

Linux Security:

  • the root user account is the most powerful account on Linux and if not used correctly can cause damage to the system, that’s because it has full total access to your system: o changes that affect the entire system regardless of who uses the system have to be done as a superuser o Note: best practice you want to avoid logging in as root to make changes to the system which is why we login as another user and use sudo (temporarily become root) to make system wide changes
  • su (substitute user): su when used by itself (with no username specified) switches the user to root and commands will run as root: o Note: to stop running commands as root type exit otherwise it will keep executing commands as root o su username will switch to that specified username and run commands as that specified user
  • In some cases you may not know the root account password and you need to set the root account password: o sudo passwd root
  • sudo allows you to execute commands temporarily as a superuser instead of logging in as root; using sudo is a best practice instead of using the root account

Linux Permissions Continued:

  • Symbolic Links are pointers to a file or folder, similar to windows shortcuts on Windows:

o To create a symbolic link: ln -s foldername symboliclinkname:

 For example: ln -s justinfolder personalfolder:

Linux Hard Drives and Partitions:

  • To see different hard drives and partitions in the system go into the /dev directory:

o cd /dev and then ls

o

o sda is the hard drive and sda1, sda2, sda3, are the partitions on the drive o if there was another drive in the system it will probably show up as sdb along with its partitions such as sdb1, sdb2, sdb3, etc

Installing Different Linux Distros (Continued) (apt & apt-get has dependency tracking):

  • Dealing with apt-get (More modern Debian based package manager) (Debian Based):

o apt-get unlike dkpg WILL install software dependencies

  • Dealing with apt: apt is newer package manager than apt-get that will also install software dependencies and

works just like apt-get. The difference between the two is that apt maintains a database of all the software and

their dependencies that you have installed just in case you accidentally uninstall a dependency that a program

needs.

  • If you have to choose between apt-get and apt, choose apt over apt-get

o Example if I wanted to install apache:

 sudo apt install apache

o Another example this time using apt-get to install apache:

 sudo apt-get apache

o Example if I wanted to remove apache using apt:

 sudo apt remove apache

o Example if I wanted to purge apache using apt:

 sudo apt purge apache

  • To search for software in the package manager repository:

o apt search softwarename

o apt-get search softwarename

  • To search for software updates using apt or apt-get (this basically updates the repository library on your system):

o sudo apt update

o sudo apt-get update

  • To APPLY the updates, use the upgrade command:

o sudo apt upgrade

o sudo apt-get upgrade

  • To upgrade the Linux Distro/ Operating System:

o sudo apt dist-upgrade

o sudo apt-get dist-upgrade

Installing Different Linux Distros (Continued):

  • Dealing with rpm (cons no dependency tracking; must manually download dependencies also doesn’t check for software updates): o Note when looking for software for redhat or centos you may see something like this when browsing distros website looking for software repositories:

o NOTE: el means enterprise linux (for redhat and centos) and in this example 8 is the version of the operating system along with showing if its for a 32bit (x86 aka i386 or i686) or 64 bit o rpm does not track software dependencies which means you will have to manually search and download any dependencies from the distro or vendors website o To install software:  sudo rpm -i softwarename or you can use sudo rpm – -install softwarename (two dashes) o To remove/uninstall software: sudo rpm -e softwarename (-e means erase) o To install software AND see the progress of installation:  sudo rpm -ivh softwarename o To upgrade software:  sudo rpm -U softwarename or sudo rpm – -upgrade softwarename (two dashses)

Installing Different Linux Distros (Continued):

  • Dealing with yum:

o yum supports dependency tracking unlike rpm and yum will get those dependencies for you when

installing software packages; yum will also check for software updates

o To install software: sudo yum install softwarename

o To check for updates: sudo yum update

o To check for updates AND automatically install them: sudo yum update -y

o To search for software/package: yum search softwarename

  • NOTE: yum will soon be replaced with the dnf package manager and it works the same as yum

Absolute and Relative Path: