13 KiB
Topic 1: The Linux Community and a Career in Open Source
1.1 Linux Evolution and Popular Operating Systems
Weight: 2
Description: Knowledge of Linux development and major distributions.
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
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
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
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
2.1 Command Line Basics
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
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
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
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
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
- LPI lesson 2
- pluralsight
- Ryan's tutorials filters
- Ryan's tutorials grep
- 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
- LPI lesson 1
- LPI lesson 2
- pluralsight
- Ryan's tutorials scripting
- Ryan's tutorials vi
- Daniel Miessler vim primer
- Ryan's tutorials bash script
- Ryan's tutorials bash variables
- 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
4.1 Choosing an Operating System
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
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
- LPI lesson 2
- pluralsight
- Ryan's tutorials processes
- 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
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
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
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
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
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