From 6fa2b32dca5ca202e814598e643e990499bd6c7b Mon Sep 17 00:00:00 2001 From: waldek Date: Mon, 15 Mar 2021 23:28:12 +0100 Subject: [PATCH] updates dir structure --- certificates/advanced/details.md | 567 ++++++++++++++++++ .../certificates.md | 0 certificates/essentials/details.md | 456 ++++++++++++++ prerequisite.md => classes/prerequisite.md | 0 qualifying.md => classes/qualifying.md | 0 resources.md => classes/resources.md | 0 6 files changed, 1023 insertions(+) create mode 100644 certificates/advanced/details.md rename certificates.md => certificates/certificates.md (100%) create mode 100644 certificates/essentials/details.md rename prerequisite.md => classes/prerequisite.md (100%) rename qualifying.md => classes/qualifying.md (100%) rename resources.md => classes/resources.md (100%) diff --git a/certificates/advanced/details.md b/certificates/advanced/details.md new file mode 100644 index 0000000..20c163a --- /dev/null +++ b/certificates/advanced/details.md @@ -0,0 +1,567 @@ + +# Topic 101: System Architecture + +## 101.1 Determine and configure hardware settings + +**Weight:** 2 + +Description: Candidates should be able to determine and configure fundamental system hardware + +Key Knowledge Areas: + +Enable and disable integrated peripherals. +Differentiate between the various types of mass storage devices. +Determine hardware resources for devices. +Tools and utilities to list various hardware information (e.g. lsusb, lspci, etc.). +Tools and utilities to manipulate USB devices. +Conceptual understanding of sysfs, udev and dbus. +The following is a partial list of the used files, terms and utilities: + +/sys/ +/proc/ +/dev/ +modprobe +lsmod +lspci +lsusb + + +## 101.2 Boot the system + +**Weight:** 3 + +Description: Candidates should be able to guide the system through the booting process. + +Key Knowledge Areas: + +Provide common commands to the boot loader and options to the kernel at boot time. +Demonstrate knowledge of the boot sequence from BIOS/UEFI to boot completion. +Understanding of SysVinit and systemd. +Awareness of Upstart. +Check boot events in the log files. +The following is a partial list of the used files, terms and utilities: + +dmesg +journalctl +BIOS +UEFI +bootloader +kernel +initramfs +init +SysVinit +systemd + + +## 101.3 Change runlevels / boot targets and shutdown or reboot system + +**Weight:** 3 + +Description: Candidates should be able to manage the SysVinit runlevel or systemd boot target of the system. This objective includes changing to single user mode, shutdown or rebooting the system. Candidates should be able to alert users before switching runlevels / boot targets and properly terminate processes. This objective also includes setting the default SysVinit runlevel or systemd boot target. It also includes awareness of Upstart as an alternative to SysVinit or systemd. + +Key Knowledge Areas: + +Set the default runlevel or boot target. +Change between runlevels / boot targets including single user mode. +Shutdown and reboot from the command line. +Alert users before switching runlevels / boot targets or other major system events. +Properly terminate processes. +Awareness of acpid. +The following is a partial list of the used files, terms and utilities: + +/etc/inittab +shutdown +init +/etc/init.d/ +telinit +systemd +systemctl +/etc/systemd/ +/usr/lib/systemd/ +wall + + + +# Topic 102: Linux Installation and Package Management + +## 102.1 Design hard disk layout + +**Weight:** 2 + +Description: Candidates should be able to design a disk partitioning scheme for a Linux system. + +Key Knowledge Areas: + +Allocate filesystems and swap space to separate partitions or disks. +Tailor the design to the intended use of the system. +Ensure the /boot partition conforms to the hardware architecture requirements for booting. +Knowledge of basic features of LVM. +The following is a partial list of the used files, terms and utilities: + +/ (root) filesystem +/var filesystem +/home filesystem +/boot filesystem +EFI System Partition (ESP) +swap space +mount points +partitions + +## 102.2 Install a boot manager + +**Weight:** 2 + +Description: Candidates should be able to select, install and configure a boot manager. + +Key Knowledge Areas: + +Providing alternative boot locations and backup boot options. +Install and configure a boot loader such as GRUB Legacy. +Perform basic configuration changes for GRUB 2. +Interact with the boot loader. +The following is a partial list of the used files, terms and utilities: + +menu.lst, grub.cfg and grub.conf +grub-install +grub-mkconfig +MBR + + +## 102.3 Manage shared libraries + +**Weight:** 1 + +Description: Candidates should be able to determine the shared libraries that executable programs depend on and install them when necessary. + +Key Knowledge Areas: + +Identify shared libraries. +Identify the typical locations of system libraries. +Load shared libraries. +The following is a partial list of the used files, terms and utilities: + +ldd +ldconfig +/etc/ld.so.conf +LD_LIBRARY_PATH + + +## 102.4 Use Debian package management + +**Weight:** 3 + +Description: Candidates should be able to perform package management using the Debian package tools. + +Key Knowledge Areas: + +Install, upgrade and uninstall Debian binary packages. +Find packages containing specific files or libraries which may or may not be installed. +Obtain package information like version, content, dependencies, package integrity and installation status (whether or not the package is installed). +Awareness of apt. +The following is a partial list of the used files, terms and utilities: + +/etc/apt/sources.list +dpkg +dpkg-reconfigure +apt-get +apt-cache + + +## 102.5 Use RPM and YUM package management + +Weight: 3 + +Description: Candidates should be able to perform package management using RPM, YUM and Zypper. + +Key Knowledge Areas: + +Install, re-install, upgrade and remove packages using RPM, YUM and Zypper. +Obtain information on RPM packages such as version, status, dependencies, integrity and signatures. +Determine what files a package provides, as well as find which package a specific file comes from. +Awareness of dnf. +The following is a partial list of the used files, terms and utilities: + +rpm +rpm2cpio +/etc/yum.conf +/etc/yum.repos.d/ +yum +zypper + +## 102.6 Linux as a virtualization guest + +**Weight:** 1 + +Description: Candidates should understand the implications of virtualization and cloud computing on a Linux guest system. + +Key Knowledge Areas: + +Understand the general concept of virtual machines and containers. +Understand common elements virtual machines in an IaaS cloud, such as computing instances, block storage and networking. +Understand unique properties of a Linux system which have to changed when a system is cloned or used as a template. +Understand how system images are used to deploy virtual machines, cloud instances and containers. +Understand Linux extensions which integrate Linux with a virtualization product. +Awareness of cloud-init. +The following is a partial list of the used files, terms and utilities: + +Virtual machine +Linux container +Application container +Guest drivers +SSH host keys +D-Bus machine id + +# Topic 103: GNU and Unix Commands + +## 103.1 Work on the command line + +**Weight:** 4 + +Description: Candidates should be able to interact with shells and commands using the command line. The objective assumes the Bash shell. + +Key Knowledge Areas: + +Use single shell commands and one line command sequences to perform basic tasks on the command line. +Use and modify the shell environment including defining, referencing and exporting environment variables. +Use and edit command history. +Invoke commands inside and outside the defined path. +The following is a partial list of the used files, terms and utilities: + +bash +echo +env +export +pwd +set +unset +type +which +man +uname +history +.bash_history +Quoting + + +## 103.2 Process text streams using filters + +**Weight:** 2 + +Description: Candidates should be able to apply filters to text streams. + +Key Knowledge Areas: + +Send text files and output streams through text utility filters to modify the output using standard UNIX commands found in the GNU textutils package. +The following is a partial list of the used files, terms and utilities: + +bzcat +cat +cut +head +less +md5sum +nl +od +paste +sed +sha256sum +sha512sum +sort +split +tail +tr +uniq +wc +xzcat +zcat + + +## 103.3 Perform basic file management + +**Weight:** 4 + +Description: Candidates should be able to use the basic Linux commands to manage files and directories. + +Key Knowledge Areas: + +Copy, move and remove files and directories individually. +Copy multiple files and directories recursively. +Remove files and directories recursively. +Use simple and advanced wildcard specifications in commands. +Using find to locate and act on files based on type, size, or time. +Usage of tar, cpio and dd. +The following is a partial list of the used files, terms and utilities: + +cp +find +mkdir +mv +ls +rm +rmdir +touch +tar +cpio +dd +file +gzip +gunzip +bzip2 +bunzip2 +xz +unxz +file globbing + + +## 103.4 Use streams, pipes and redirects + +**Weight:** 4 + +Description: Candidates should be able to redirect streams and connect them in order to efficiently process textual data. Tasks include redirecting standard input, standard output and standard error, piping the output of one command to the input of another command, using the output of one command as arguments to another command and sending output to both stdout and a file. + +Key Knowledge Areas: + +Redirecting standard input, standard output and standard error. +Pipe the output of one command to the input of another command. +Use the output of one command as arguments to another command. +Send output to both stdout and a file. +The following is a partial list of the used files, terms and utilities: + +tee +xargs + + +## 103.5 Create, monitor and kill processes + +**Weight:** 4 + +Description: Candidates should be able to perform basic process management. + +Key Knowledge Areas: + +Run jobs in the foreground and background. +Signal a program to continue running after logout. +Monitor active processes. +Select and sort processes for display. +Send signals to processes. +The following is a partial list of the used files, terms and utilities: + +& +bg +fg +jobs +kill +nohup +ps +top +free +uptime +pgrep +pkill +killall +watch +screen +tmux + + +## 103.6 Modify process execution priorities + +**Weight:** 2 + +Description: Candidates should should be able to manage process execution priorities. + +Key Knowledge Areas: + +Know the default priority of a job that is created. +Run a program with higher or lower priority than the default. +Change the priority of a running process. +The following is a partial list of the used files, terms and utilities: + +nice +ps +renice +top + + +## 103.7 Search text files using regular expressions + +**Weight:** 3 + +Description: Candidates should be able to manipulate files and text data using regular expressions. This objective includes creating simple regular expressions containing several notational elements as well as understanding the differences between basic and extended regular expressions. It also includes using regular expression tools to perform searches through a filesystem or file content. + +Key Knowledge Areas: + +Create simple regular expressions containing several notational elements. +Understand the differences between basic and extended regular expressions. +Understand the concepts of special characters, character classes, quantifiers and anchors. +Use regular expression tools to perform searches through a filesystem or file content. +Use regular expressions to delete, change and substitute text. +The following is a partial list of the used files, terms and utilities: + +grep +egrep +fgrep +sed +regex(7) + + +## 103.8 Basic file editing + +**Weight:** 3 + +Description: Candidates should be able to edit text files using vi. This objective includes vi navigation, vi modes, inserting, editing, deleting, copying and finding text. It also includes awareness of other common editors and setting the default editor. + +Key Knowledge Areas: + +Navigate a document using vi. +Understand and use vi modes. +Insert, edit, delete, copy and find text in vi. +Awareness of Emacs, nano and vim. +Configure the standard editor. +Terms and Utilities: + +vi +/, ? +h,j,k,l +i, o, a +d, p, y, dd, yy +ZZ, :w!, :q! +EDITOR + + +# Topic 104: Devices, Linux Filesystems, Filesystem Hierarchy Standard + +## 104.1 Create partitions and filesystems + +**Weight:** 2 + +Description: Candidates should be able to configure disk partitions and then create filesystems on media such as hard disks. This includes the handling of swap partitions. + +Key Knowledge Areas: + +Manage MBR and GPT partition tables +Use various mkfs commands to create various filesystems such as: +ext2/ext3/ext4 +XFS +VFAT +exFAT + +Basic feature knowledge of Btrfs, including multi-device filesystems, compression and subvolumes. +The following is a partial list of the used files, terms and utilities: + +fdisk +gdisk +parted +mkfs +mkswap + + +## 104.2 Maintain the integrity of filesystems + +**Weight:** 2 + +Description: Candidates should be able to maintain a standard filesystem, as well as the extra data associated with a journaling filesystem. + +Key Knowledge Areas: + +Verify the integrity of filesystems. +Monitor free space and inodes. +Repair simple filesystem problems. +The following is a partial list of the used files, terms and utilities: + +du +df +fsck +e2fsck +mke2fs +tune2fs +xfs_repair +xfs_fsr +xfs_db + + +## 104.3 Control mounting and unmounting of filesystems + +**Weight:** 3 + +Description: Candidates should be able to configure the mounting of a filesystem. + +Key Knowledge Areas: + +Manually mount and unmount filesystems. +Configure filesystem mounting on bootup. +Configure user mountable removable filesystems. +Use of labels and UUIDs for identifying and mounting file systems. +Awareness of systemd mount units. +The following is a partial list of the used files, terms and utilities: + +/etc/fstab +/media/ +mount +umount +blkid +lsblk + + +## 104.4 Removed + + + +## 104.5 Manage file permissions and ownership + +**Weight:** 3 + +Description: Candidates should be able to control file access through the proper use of permissions and ownerships. + +Key Knowledge Areas: + +Manage access permissions on regular and special files as well as directories. +Use access modes such as suid, sgid and the sticky bit to maintain security. +Know how to change the file creation mask. +Use the group field to grant file access to group members. +The following is a partial list of the used files, terms and utilities: + +chmod +umask +chown +chgrp + + +## 104.6 Create and change hard and symbolic links + +**Weight:** 2 + +Description: Candidates should be able to create and manage hard and symbolic links to a file. + +Key Knowledge Areas: + +Create links. +Identify hard and/or soft links. +Copying versus linking files. +Use links to support system administration tasks. +The following is a partial list of the used files, terms and utilities: + +ln +ls + + +## 104.7 Find system files and place files in the correct location + +**Weight:** 2 + +Description: Candidates should be thoroughly familiar with the Filesystem Hierarchy Standard (FHS), including typical file locations and directory classifications. + +Key Knowledge Areas: + +Understand the correct locations of files under the FHS. +Find files and commands on a Linux system. +Know the location and purpose of important file and directories as defined in the FHS. +The following is a partial list of the used files, terms and utilities: + +find +locate +updatedb +whereis +which +type +/etc/updatedb.conf diff --git a/certificates.md b/certificates/certificates.md similarity index 100% rename from certificates.md rename to certificates/certificates.md diff --git a/certificates/essentials/details.md b/certificates/essentials/details.md new file mode 100644 index 0000000..4ae9c3a --- /dev/null +++ b/certificates/essentials/details.md @@ -0,0 +1,456 @@ +# Topic 1: The Linux Community and a Career in Open Source + +* ![https://app.pluralsight.com/course-player?clipId=4854c0ef-49cb-40e1-b6c6-e9a8c38c0b9c](pluralsight) + +## 1.1 Linux Evolution and Popular Operating Systems + +* ![https://learning.lpi.org/en/learning-materials/010-160/1/1.1/1.1_01/](LPI lesson 1) +* ![https://app.pluralsight.com/course-player?clipId=b6ffeb56-2e4f-4584-8259-282bc5f1843f](pluralsight) + +**Weight:** 2 + +Description: Knowledge of ![Linux](https://www.kernel.org/doc/html/latest/) development and major ![distributions](https://en.wikipedia.org/wiki/Linux_distribution). + +Key Knowledge Areas: + +Distributions +Embedded Systems +Linux in the Cloud +The following is a partial list of the used files, terms and utilities: + +Debian, Ubuntu (LTS) +CentOS, openSUSE, Red Hat, SUSE +Linux Mint, Scientific Linux +Raspberry Pi, Raspbian +Android + + +## 1.2 Major Open Source Applications + +* ![https://learning.lpi.org/en/learning-materials/010-160/1/1.2/1.2_01/](LPI lesson 1) +* ![https://app.pluralsight.com/course-player?clipId=9efdc7de-99c2-4d5e-8675-70c57f34b70f](pluralsight) + +**Weight:** 2 + +Description: Awareness of major applications as well as their uses and development. + +Key Knowledge Areas: + +Desktop applications +Server applications +Development languages +Package management tools and repositories +The following is a partial list of the used files, terms and utilities: + +OpenOffice.org, LibreOffice, Thunderbird, Firefox, GIMP +Nextcloud, ownCloud +Apache HTTPD, NGINX, MariaDB, MySQL, NFS, Samba +C, Java, JavaScript, Perl, shell, Python, PHP +dpkg, apt-get, rpm, yum + + +## 1.3 Open Source Software and Licensing + +* ![https://learning.lpi.org/en/learning-materials/010-160/1/1.3/1.3_01/](LPI lesson 1) +* ![https://app.pluralsight.com/course-player?clipId=ee9322d3-b49a-43d3-a257-db9f6c19c735](pluralsight) + +**Weight:** 1 + +Description: Open communities and licensing Open Source Software for business. + +Key Knowledge Areas: + +Open source philosophy +Open source licensing +Free Software Foundation (FSF), Open Source Initiative (OSI) +The following is a partial list of the used files, terms and utilities: + +Copyleft, Permissive +GPL, BSD, Creative Commons +Free Software, Open Source Software, FOSS, FLOSS +Open source business models + + +## 1.4 ICT Skills and Working in Linux + +* ![https://learning.lpi.org/en/learning-materials/010-160/1/1.4/1.4_01/](LPI lesson 1) + +**Weight:** 2 + +Description: Basic Information and Communication Technology (ICT) skills and working in Linux. + +Key Knowledge Areas: + +Desktop skills +Getting to the command line +Industry uses of Linux, cloud computing and virtualization +The following is a partial list of the used files, terms and utilities: + +Using a browser, privacy concerns, configuration options, searching the web and saving content +Terminal and console +Password issues +Privacy issues and tools +Use of common open source applications in presentations and projects + +# Topic 2: Finding Your Way on a Linux System + +* ![https://debian-handbook.info/browse/stable/short-remedial-course.html#sect.shell-and-basic-commands](Debian handbook basic commands) + +## 2.1 Command Line Basics + +* ![https://learning.lpi.org/en/learning-materials/010-160/2/2.1/2.1_01/](LPI lesson 1) +* ![https://learning.lpi.org/en/learning-materials/010-160/2/2.1/2.1_02/](LPI lesson 2) +* ![https://app.pluralsight.com/course-player?clipId=bed83199-d8dd-489a-ab34-3c0b5589059b](pluralsight) +* ![https://ryanstutorials.net/linuxtutorial/commandline.php](Ryan's tutorials commandline) + +**Weight:** 3 + +Description: Basics of using the Linux command line. + +Key Knowledge Areas: + +Basic shell +Command line syntax +Variables +Quoting +The following is a partial list of the used files, terms and utilities: + +Bash +echo +history +PATH environment variable +export +type + +## 2.2 Using the Command Line to Get Help + +* ![https://learning.lpi.org/en/learning-materials/010-160/2/2.2/2.2_01/](LPI lesson 1) +* ![https://app.pluralsight.com/course-player?clipId=2ff984f9-3a6a-41f7-adaa-36147a11dbeb](pluralsight) +* ![https://ryanstutorials.net/linuxtutorial/manual.php](Ryan's tutorials manpages) +* ![https://debian-handbook.info/browse/stable/solving-problems.html#sect.documentation-sources](Debian handbook documentation) + +**Weight:** 2 + +Description: Running help commands and navigation of the various help systems. + +Key Knowledge Areas: + +Man pages +Info pages +The following is a partial list of the used files, terms and utilities: + +man +info +/usr/share/doc/ +locate + + +## 2.3 Using Directories and Listing Files + +* ![https://learning.lpi.org/en/learning-materials/010-160/2/2.3/2.3_01/](LPI lesson 1) +* ![https://learning.lpi.org/en/learning-materials/010-160/2/2.3/2.3_02/](LPI lesson 2) +* ![https://app.pluralsight.com/course-player?clipId=34cc6f20-36f0-46c3-bb98-482ab5b8f824](pluralsight) +* ![https://ryanstutorials.net/linuxtutorial/navigation.php](Ryan's tutorials navigation) +* ![https://ryanstutorials.net/linuxtutorial/aboutfiles.php](Ryan's tutorials aboutfiles) + +**Weight:** 2 + +Description: Navigation of home and system directories and listing files in various locations. + +Key Knowledge Areas: + +Files, directories +Hidden files and directories +Home directories +Absolute and relative paths +The following is a partial list of the used files, terms and utilities: + +Common options for ls +Recursive listings +cd +. and .. +home and ~ + + +## 2.4 Creating, Moving and Deleting Files + +* ![https://learning.lpi.org/en/learning-materials/010-160/2/2.4/2.4_01/](LPI lesson 1) +* ![https://app.pluralsight.com/course-player?clipId=80a46137-3b0c-4b68-810f-06311f6df018](pluralsight) +* ![https://ryanstutorials.net/linuxtutorial/filemanipulation.php](Ryan's tutorials filemanipulation) + +**Weight:** 2 + +Description: Create, move and delete files and directories under the home directory. + +Key Knowledge Areas: + +Files and directories +Case sensitivity +Simple globbing +The following is a partial list of the used files, terms and utilities: + +mv, cp, rm, touch +mkdir, rmdir + +# Topic 3: The Power of the Command Line + +* ![https://app.pluralsight.com/course-player?clipId=abdaab05-e3c3-4f46-b5a4-57d106d8b670](pluralsight) + +## 3.1 Archiving Files on the Command Line + +* ![https://learning.lpi.org/en/learning-materials/010-160/3/3.1/3.1_01/](LPI lesson 1) +* ![https://app.pluralsight.com/course-player?clipId=abdaab05-e3c3-4f46-b5a4-57d106d8b670](pluralsight) + +**Weight:** 2 + +Description: Archiving files in the user home directory. + +Key Knowledge Areas: + +Files, directories +Archives, compression +The following is a partial list of the used files, terms and utilities: + +tar +Common tar options +gzip, bzip2, xz +zip, unzip + + +## 3.2 Searching and Extracting Data from Files + +* ![https://learning.lpi.org/en/learning-materials/010-160/3/3.2/3.2_01/](LPI lesson 1) +* ![https://learning.lpi.org/en/learning-materials/010-160/3/3.2/3.2_02/](LPI lesson 2) +* ![https://app.pluralsight.com/course-player?clipId=dd1ac618-59e1-4d73-9092-58c4ab3d2379](pluralsight) +* ![https://ryanstutorials.net/linuxtutorial/filters.php](Ryan's tutorials filters) +* ![https://ryanstutorials.net/linuxtutorial/grep.php](Ryan's tutorials grep) +* ![https://ryanstutorials.net/linuxtutorial/piping.php](Ryan's tutorials piping) + +**Weight:** 3 + +Description: Search and extract data from files in the home directory. + +Key Knowledge Areas: + +Command line pipes +I/O redirection +Basic Regular Expressions using ., [ ], \*, and ? +The following is a partial list of the used files, terms and utilities: + +grep +less +cat, head, tail +sort +cut +wc + + +## 3.3 Turning Commands into a Script + +* ![https://learning.lpi.org/en/learning-materials/010-160/3/3.3/3.3_01/](LPI lesson 1) +* ![https://learning.lpi.org/en/learning-materials/010-160/3/3.3/3.3_02/](LPI lesson 2) +* ![https://app.pluralsight.com/course-player?clipId=d241975f-00b3-4a14-bc1c-5ef92fed7ca0](pluralsight) +* ![https://ryanstutorials.net/linuxtutorial/scripting.php](Ryan's tutorials scripting) +* ![https://ryanstutorials.net/linuxtutorial/vi.php](Ryan's tutorials vi) +* ![https://danielmiessler.com/study/vim/](Daniel Miessler vim primer) +* ![https://ryanstutorials.net/bash-scripting-tutorial/bash-script.php](Ryan's tutorials bash script) +* ![https://ryanstutorials.net/bash-scripting-tutorial/bash-variables.php](Ryan's tutorials bash variables) +* ![https://ryanstutorials.net/bash-scripting-tutorial/bash-loops.php](Ryan's tutorials loops) + +**Weight:** 4 + +Description: Turning repetitive commands into simple scripts. + +Key Knowledge Areas: + +Basic shell scripting +Awareness of common text editors (vi and nano) +The following is a partial list of the used files, terms and utilities: + +``` +#! (shebang) +/bin/bash +Variables +Arguments +for loops +echo +Exit status +``` + +# Topic 4: The Linux Operating System + +* ![https://app.pluralsight.com/course-player?clipId=31d82d8e-1dd3-42e8-b522-2dbd76863e47](pluralsight) + +## 4.1 Choosing an Operating System + +* ![https://learning.lpi.org/en/learning-materials/010-160/4/4.1/4.1_01/](LPI lesson 1) +* ![https://app.pluralsight.com/course-player?clipId=31d82d8e-1dd3-42e8-b522-2dbd76863e47](pluralsight) + +**Weight:** 1 + +Description: Knowledge of major operating systems and Linux distributions. + +Key Knowledge Areas: + +Differences between Windows, OS X and Linux +Distribution life cycle management +The following is a partial list of the used files, terms and utilities: + +GUI versus command line, desktop configuration +Maintenance cycles, beta and stable + + +## 4.2 Understanding Computer Hardware + +* ![https://learning.lpi.org/en/learning-materials/010-160/4/4.2/4.2_01/](LPI lesson 1) +* ![https://app.pluralsight.com/course-player?clipId=5437f9c7-3afb-414f-9908-83ae3d2afaf9](pluralsight) + +**Weight:** 2 + +Description: Familiarity with the components that go into building desktop and server computers. + +Key Knowledge Areas: + +Hardware +The following is a partial list of the used files, terms and utilities: + +Motherboards, processors, power supplies, optical drives, peripherals +Hard drives, solid state disks and partitions, /dev/sd\* +Drivers + + +## 4.3 Where Data is Stored + +* ![https://learning.lpi.org/en/learning-materials/010-160/4/4.3/4.3_01/](LPI lesson 1) +* ![https://learning.lpi.org/en/learning-materials/010-160/4/4.3/4.3_02/](LPI lesson 2) +* ![https://app.pluralsight.com/course-player?clipId=1e4a4910-fb24-4d1c-bda5-4ec07dd8cfb8](pluralsight) +* ![https://ryanstutorials.net/linuxtutorial/processes.php](Ryan's tutorials processes) +* ![https://debian-handbook.info/browse/stable/sect.filesystem-hierarchy.html](Debian handbook filesystem hierarchy) + +**Weight:** 3 + +Description: Where various types of information are stored on a Linux system. + +Key Knowledge Areas: + +Programs and configuration +Processes +Memory addresses +System messaging +Logging +The following is a partial list of the used files, terms and utilities: + +ps, top, free +syslog, dmesg +/etc/, /var/log/ +/boot/, /proc/, /dev/, /sys/ + + +## 4.4 Your Computer on the Network + +* ![https://learning.lpi.org/en/learning-materials/010-160/4/4.4/4.4_01/](LPI lesson 1) +* ![https://app.pluralsight.com/course-player?clipId=c5b8d8ba-4680-4fd1-9b27-e426a230e0f7](pluralsight) +* ![https://debian-handbook.info/browse/stable/sect.network-config.html](Debian handbook network config) + +**Weight:** 2 + +Description: Querying vital networking configuration and determining the basic requirements for a computer on a Local Area Network (LAN). + +Key Knowledge Areas: + +Internet, network, routers +Querying DNS client configuration +Querying network configuration +The following is a partial list of the used files, terms and utilities: + +route, ip route show +ifconfig, ip addr show +netstat, ss +/etc/resolv.conf, /etc/hosts +IPv4, IPv6 +ping +host + +# Topic 5: Security and File Permissions + +* ![https://app.pluralsight.com/course-player?clipId=294772a4-dc99-42b7-991c-a00ac41802d6](pluralsight) + +## 5.1 Basic Security and Identifying User Types + +* ![https://learning.lpi.org/en/learning-materials/010-160/5/5.1/5.1_01/](LPI lesson 1) +* ![https://app.pluralsight.com/course-player?clipId=294772a4-dc99-42b7-991c-a00ac41802d6](pluralsight) + +**Weight:** 2 + +Description: Various types of users on a Linux system. + +Key Knowledge Areas: + +Root and standard users +System users +The following is a partial list of the used files, terms and utilities: + +/etc/passwd, /etc/shadow, /etc/group +id, last, who, w +sudo, su + + +## 5.2 Creating Users and Groups + +* ![https://learning.lpi.org/en/learning-materials/010-160/5/5.2/5.2_01/](LPI lesson 1) +* ![https://app.pluralsight.com/course-player?clipId=061ecee0-6982-4f8a-bc0e-fb90237ef961](pluralsight) +* ![https://debian-handbook.info/browse/stable/sect.user-group-databases.html](Debian handbook users and groups) +* ![https://debian-handbook.info/browse/stable/sect.creating-accounts.html](Debian handbook creating accounts) + +**Weight:** 2 + +Description: Creating users and groups on a Linux system. + +Key Knowledge Areas: + +User and group commands +User IDs +The following is a partial list of the used files, terms and utilities: + +/etc/passwd, /etc/shadow, /etc/group, /etc/skel/ +useradd, groupadd +passwd + + +## 5.3 Managing File Permissions and Ownership + +* ![https://learning.lpi.org/en/learning-materials/010-160/5/5.3/5.3_01/](LPI lesson 1) +* ![https://app.pluralsight.com/course-player?clipId=050fb3e8-8fce-480a-9de0-b5d2c20003d2](pluralsight) +* ![https://ryanstutorials.net/linuxtutorial/permissions.php](Ryan's tutorials permissions) +* ![https://debian-handbook.info/browse/stable/sect.rights-management.html](Debian handbook rights management) + +**Weight:** 2 + +Description: Understanding and manipulating file permissions and ownership settings. + +Key Knowledge Areas: + +File and directory permissions and ownership +The following is a partial list of the used files, terms and utilities: + +ls -l, ls -a +chmod, chown + + +## 5.4 Special Directories and Files + +* ![https://learning.lpi.org/en/learning-materials/010-160/5/5.4/5.4_01/](LPI lesson 1) + +**Weight:** 1 + +Description: Special directories and files on a Linux system including special permissions. + +Key Knowledge Areas: + +Using temporary files and directories +Symbolic links +The following is a partial list of the used files, terms and utilities: + +/tmp/, /var/tmp/ and Sticky Bit +ls -d +ln -s diff --git a/prerequisite.md b/classes/prerequisite.md similarity index 100% rename from prerequisite.md rename to classes/prerequisite.md diff --git a/qualifying.md b/classes/qualifying.md similarity index 100% rename from qualifying.md rename to classes/qualifying.md diff --git a/resources.md b/classes/resources.md similarity index 100% rename from resources.md rename to classes/resources.md