# Topic 1: The Linux Community and a Career in Open Source * [pluralsight](https://app.pluralsight.com/course-player?clipId=4854c0ef-49cb-40e1-b6c6-e9a8c38c0b9c) ## 1.1 Linux Evolution and Popular Operating Systems * [LPI lesson 1](https://learning.lpi.org/en/learning-materials/010-160/1/1.1/1.1_01/) * [pluralsight](https://app.pluralsight.com/course-player?clipId=b6ffeb56-2e4f-4584-8259-282bc5f1843f) **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 * [LPI lesson 1](https://learning.lpi.org/en/learning-materials/010-160/1/1.2/1.2_01/) * [pluralsight](https://app.pluralsight.com/course-player?clipId=9efdc7de-99c2-4d5e-8675-70c57f34b70f) **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 * [LPI lesson 1](https://learning.lpi.org/en/learning-materials/010-160/1/1.3/1.3_01/) * [pluralsight](https://app.pluralsight.com/course-player?clipId=ee9322d3-b49a-43d3-a257-db9f6c19c735) **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 * [LPI lesson 1](https://learning.lpi.org/en/learning-materials/010-160/1/1.4/1.4_01/) **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 * [Debian handbook basic commands](https://debian-handbook.info/browse/stable/short-remedial-course.html#sect.shell-and-basic-commands) ## 2.1 Command Line Basics * [LPI lesson 1](https://learning.lpi.org/en/learning-materials/010-160/2/2.1/2.1_01/) * [LPI lesson 2](https://learning.lpi.org/en/learning-materials/010-160/2/2.1/2.1_02/) * [pluralsight](https://app.pluralsight.com/course-player?clipId=bed83199-d8dd-489a-ab34-3c0b5589059b) * [Ryan's tutorials commandline](https://ryanstutorials.net/linuxtutorial/commandline.php) **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 * [LPI lesson 1](https://learning.lpi.org/en/learning-materials/010-160/2/2.2/2.2_01/) * [pluralsight](https://app.pluralsight.com/course-player?clipId=2ff984f9-3a6a-41f7-adaa-36147a11dbeb) * [Ryan's tutorials manpages](https://ryanstutorials.net/linuxtutorial/manual.php) * [Debian handbook documentation](https://debian-handbook.info/browse/stable/solving-problems.html#sect.documentation-sources) **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 * [LPI lesson 1](https://learning.lpi.org/en/learning-materials/010-160/2/2.3/2.3_01/) * [LPI lesson 2](https://learning.lpi.org/en/learning-materials/010-160/2/2.3/2.3_02/) * [pluralsight](https://app.pluralsight.com/course-player?clipId=34cc6f20-36f0-46c3-bb98-482ab5b8f824) * [Ryan's tutorials navigation](https://ryanstutorials.net/linuxtutorial/navigation.php) * [Ryan's tutorials aboutfiles](https://ryanstutorials.net/linuxtutorial/aboutfiles.php) **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 * [LPI lesson 1](https://learning.lpi.org/en/learning-materials/010-160/2/2.4/2.4_01/) * [pluralsight](https://app.pluralsight.com/course-player?clipId=80a46137-3b0c-4b68-810f-06311f6df018) * [Ryan's tutorials filemanipulation](https://ryanstutorials.net/linuxtutorial/filemanipulation.php) **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 ## 3.1 Archiving Files on the Command Line * [LPI lesson 1](https://learning.lpi.org/en/learning-materials/010-160/3/3.1/3.1_01/) * [pluralsight](https://app.pluralsight.com/course-player?clipId=abdaab05-e3c3-4f46-b5a4-57d106d8b670) **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 * [LPI lesson 1](https://learning.lpi.org/en/learning-materials/010-160/3/3.2/3.2_01/) * [LPI lesson 2](https://learning.lpi.org/en/learning-materials/010-160/3/3.2/3.2_02/) * [pluralsight](https://app.pluralsight.com/course-player?clipId=dd1ac618-59e1-4d73-9092-58c4ab3d2379) * [Ryan's tutorials filters](https://ryanstutorials.net/linuxtutorial/filters.php) * [Ryan's tutorials grep](https://ryanstutorials.net/linuxtutorial/grep.php) * [Ryan's tutorials piping](https://ryanstutorials.net/linuxtutorial/piping.php) **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 * [LPI lesson 1](https://learning.lpi.org/en/learning-materials/010-160/3/3.3/3.3_01/) * [LPI lesson 2](https://learning.lpi.org/en/learning-materials/010-160/3/3.3/3.3_02/) * [pluralsight](https://app.pluralsight.com/course-player?clipId=d241975f-00b3-4a14-bc1c-5ef92fed7ca0) * [Ryan's tutorials scripting](https://ryanstutorials.net/linuxtutorial/scripting.php) * [Ryan's tutorials vi](https://ryanstutorials.net/linuxtutorial/vi.php) * [Daniel Miessler vim primer](https://danielmiessler.com/study/vim/) * [Ryan's tutorials bash script](https://ryanstutorials.net/bash-scripting-tutorial/bash-script.php) * [Ryan's tutorials bash variables](https://ryanstutorials.net/bash-scripting-tutorial/bash-variables.php) * [Ryan's tutorials loops](https://ryanstutorials.net/bash-scripting-tutorial/bash-loops.php) **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 ## 4.1 Choosing an Operating System * [LPI lesson 1](https://learning.lpi.org/en/learning-materials/010-160/4/4.1/4.1_01/) * [pluralsight](https://app.pluralsight.com/course-player?clipId=31d82d8e-1dd3-42e8-b522-2dbd76863e47) **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 * [LPI lesson 1](https://learning.lpi.org/en/learning-materials/010-160/4/4.2/4.2_01/) * [pluralsight](https://app.pluralsight.com/course-player?clipId=5437f9c7-3afb-414f-9908-83ae3d2afaf9) **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 * [LPI lesson 1](https://learning.lpi.org/en/learning-materials/010-160/4/4.3/4.3_01/) * [LPI lesson 2](https://learning.lpi.org/en/learning-materials/010-160/4/4.3/4.3_02/) * [pluralsight](https://app.pluralsight.com/course-player?clipId=1e4a4910-fb24-4d1c-bda5-4ec07dd8cfb8) * [Ryan's tutorials processes](https://ryanstutorials.net/linuxtutorial/processes.php) * [Debian handbook filesystem hierarchy](https://debian-handbook.info/browse/stable/sect.filesystem-hierarchy.html) **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 * [LPI lesson 1](https://learning.lpi.org/en/learning-materials/010-160/4/4.4/4.4_01/) * [pluralsight](https://app.pluralsight.com/course-player?clipId=c5b8d8ba-4680-4fd1-9b27-e426a230e0f7) * [Debian handbook network config](https://debian-handbook.info/browse/stable/sect.network-config.html) **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 ## 5.1 Basic Security and Identifying User Types * [LPI lesson 1](https://learning.lpi.org/en/learning-materials/010-160/5/5.1/5.1_01/) * [pluralsight](https://app.pluralsight.com/course-player?clipId=294772a4-dc99-42b7-991c-a00ac41802d6) **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 * [LPI lesson 1](https://learning.lpi.org/en/learning-materials/010-160/5/5.2/5.2_01/) * [pluralsight](https://app.pluralsight.com/course-player?clipId=061ecee0-6982-4f8a-bc0e-fb90237ef961) * [Debian handbook users and groups](https://debian-handbook.info/browse/stable/sect.user-group-databases.html) * [Debian handbook creating accounts](https://debian-handbook.info/browse/stable/sect.creating-accounts.html) **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 * [LPI lesson 1](https://learning.lpi.org/en/learning-materials/010-160/5/5.3/5.3_01/) * [pluralsight](https://app.pluralsight.com/course-player?clipId=050fb3e8-8fce-480a-9de0-b5d2c20003d2) * [Ryan's tutorials permissions](https://ryanstutorials.net/linuxtutorial/permissions.php) * [Debian handbook rights management](https://debian-handbook.info/browse/stable/sect.rights-management.html) **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 * [LPI lesson 1](https://learning.lpi.org/en/learning-materials/010-160/5/5.4/5.4_01/) **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