ATTENTION: If you belong to the LaaS Cert program, the training does not include the exam
Official Linux LPIC-1 Course | Exam Preparation 101 and 102 + 1 free exam
What is LPIC-1 certification?
The Nanfor Official Linux LPIC-1 Course is designed to comprehensively prepare for exams 101 and 102 of the Linux Professional Institute (LPI), an internationally recognized certification in Linux system administration.
This training is ideal for IT professionals, technicians, and students who wish to acquire a solid foundation in Linux and start their career as a system administrator. During the course, you will learn to work with the command line, manage users and permissions, configure file systems, processes and networks, and understand the internal workings of Linux systems.
The content follows the official LPI syllabus and includes real-world practices oriented towards both practical learning and passing the LPIC-1 certification. Upon completion, you will be prepared to confidently take the LPIC-1 101 and 102 exams.
Linux LPIC-1 - Official LPI Course - Linux Certification - Exams 101 AND 102 - Linux System Administration - Linux Training
⏱️
Course duration:
140 hours
🔑
Access to the classroom:
3 months
Who is the Linux LPIC-1 course for?
The LPIC-1 (Linux Professional Institute) course is aimed at people who want to get started in Linux system administration and obtain an internationally recognized official certification. It is especially recommended for:
- IT professionals and technicians who want to start their career in Linux.
- Junior system administrators looking to validate and expand their knowledge.
- Computer science, telecommunications, or technical cycle students interested in getting certified in Linux.
- Developers and junior DevOps profiles who need a solid foundation in Linux systems.
- Professionals in career transition who wish to access technical roles in Linux environments.
No advanced prior knowledge is required. The course provides the necessary fundamentals to administer Linux systems and successfully prepare for exams LPIC-1 101 and 102.
What will you learn in the LPIC-1 course?
This course covers the topics for the preparation of exams 101 and 102, necessary for Linux LPI level 1 or LPIC-1 certification.
The main objectives are:
- Understand the architecture of a Linux system;
- Install and maintain a Linux workstation, including X11 and configuring it as a network client;
- Work on the Linux command line, including common GNU and Unix commands;
- Manage files and access permissions, as well as system security;
- Perform simple maintenance tasks: assisting users, adding users to a larger system, backing up and restoring, shutting down and restarting.
Contents for Linux LPIC-1 certification
To obtain LPIC-1 certification, you must pass exams 101 and 102. The topics for each exam cover:
LPIC-1 exam 101:
- Topic 101 System Architecture
- Topic 102 Linux Installation and Package Management
- Topic 103 GNU and Unix Commands
- Topic 104 Devices, Linux File Systems, Standard File System Hierarchy
LPIC-1 exam 102:
- Topic 105 Shells and Shell Scripting
-
Topic 106 Interfaces and Desktops
-
Topic 107 Administrative Tasks
-
Topic 108 Essential System Services
-
Topic 109 Networking Fundamentals
-
Topic 110 Security
LPIC-1 101
Topic 101: System Architecture
101.1 Determine and configure hardware settings
Candidates should be able to determine and configure fundamental system hardware.
Key knowledge areas:
-
Enable and disable integrated peripherals.
-
Differentiate between different types of mass storage devices.
-
Determine hardware resources for devices.
-
Tools and utilities for listing hardware information (e.g., lsusb, lspci, etc.).
-
Tools and utilities for manipulating USB devices.
-
Conceptual knowledge of sysfs, udev, and dbus.
101.2 System boot
Candidates should be able to guide the system through the boot process.
Key knowledge areas:
- Provide common commands to the bootloader and kernel options at boot time.
- Demonstrate knowledge of the boot sequence from BIOS/UEFI to boot completion.
- Understanding of SysVinit and systemd.
- Knowledge of Upstart.
- Check boot events in log files.
101.3 Change runlevels / boot targets and shut down or restart the system
Candidates should be able to manage the SysVinit runlevel or systemd boot target of the system. This objective includes changing to single-user mode, shutting down or restarting the system. Candidates should be able to alert users before changing runlevels / boot targets and properly terminate processes. This objective also includes setting the default SysVinit runlevel or systemd boot target. It also includes knowledge of Upstart as an alternative to SysVinit or systemd.
Key knowledge areas:
- Set the default runlevel or boot target.
- Switch between runlevels / boot targets, including single-user mode.
- Shut down and restart from the command line.
- Alert users before changing runlevels/boot targets or other important system events.
- Properly terminate processes.
- Knowledge of acpid.
Topic 102: Linux Installation and Package Management
102.1 Hard disk partitioning scheme design
Candidates should be able to design a disk partitioning scheme for a Linux system.
Key knowledge areas:
- Allocate file systems and swap space to separate partitions or disks.
- Adapt the design to the intended use of the system.
- Ensure that the /boot partition meets the hardware architecture requirements for booting.
- Basic knowledge of LVM features.
102.2 Install a boot manager
The candidate must be able to select, install and configure a boot manager.
Key knowledge areas:
- Provide alternative locations for the boot manager as well as backup boot options.
- Install and configure a boot manager like GRUB Legacy.
- Perform basic configuration changes for GRUB 2.
- Interact with the boot manager.
102.3 Shared library management
The candidate must be able to determine which shared libraries executable programs depend on and install them when necessary.
Key knowledge areas:
- Identify shared libraries.
- Identify typical system library locations.
- Load shared libraries.
102.4 Debian package management
The candidate must be able to perform package management using Debian tools.
Key knowledge areas:
- Install, update, and uninstall Debian binary packages.
- Find packages containing specific files or libraries (whether installed or not).
- Obtain package information such as version, contents, dependencies, package integrity, and installation status (whether the package is installed or not).
- Knowledge of apt.
102.5 RPM and YUM package management
The candidate must be able to perform package management using RPM, YUM, and Zypper tools.
Key knowledge areas:
- Install, reinstall, update, and uninstall packages using RPM, YUM, and Zypper.
- Obtain RPM package information such as version, status, dependencies, integrity, and signatures.
- Determine what files a package provides as well as find which package a given file comes from.
- Knowledge of dnf.
102.6 Linux as a virtualized system
The candidate must understand the implications of virtualization and cloud computing on a virtualized Linux system.
Key knowledge areas:
- Understand the general concept of virtual machine and container
- Understand common elements of a virtual machine in an IaaS-type cloud environment, such as compute instance, block storage, and networking
- Understand the unique properties of a Linux system that need to change when the 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 that enable integration with a virtualization product
- Knowledge of cloud-init
Topic 103: GNU and Unix Commands
103.1 Work from the command line
The candidate must know how to use the command line to interact with the shell and its commands. Knowledge of the Bash shell by the candidate is assumed.
Key knowledge areas:
- Use individual shell commands and single-line command sequences to perform basic tasks on the command line.
- Use and modify the shell environment, which includes defining, referencing, and exporting environment variables.
- Use and edit command history.
- Invoke commands within and outside the defined path.
103.2 Process text streams using filters
The candidate must know how 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 included in the GNU textutils package.
103.3 Basic file administration
The candidate must be able to use basic Linux commands for file and directory administration.
Key knowledge areas:
- Copy, move, and delete individual files and directories.
- Copy multiple files and directories recursively.
- Delete files and directories recursively.
- Use simple and advanced wildcard specifications in commands.
- Use find to locate files and act on them based on their type, size, or timestamps.
- Use of tar, cpio, and dd.
103.4 Using text streams, pipes, and redirections
The candidate must be able to redirect text streams and connect them to process information efficiently. These tasks include: redirecting standard input, standard output, and standard error; using pipes to send the output of one command to the input of another; using the output of one command as an argument for another command, as well as sending the output of one command simultaneously to standard output and to a file.
Key knowledge areas:
- Redirect standard input (stdin), standard output (stdout), and standard error (stderr).
- Use pipes to send the output of one command to the input of another.
- Use the output of one command as an argument to another command.
- Send the output of a command to stdout and to a file simultaneously.
103.5 Create, monitor, and kill processes
The candidate must be able to perform basic process management.
Key knowledge areas:
- Run jobs in the foreground and background.
- Send signals to programs to continue running after logout.
- Monitor active processes.
- Select and sort processes for display.
- Send signals to processes.
103.6 Modify the execution priority of processes
The candidate must be able to manage the execution priorities of processes.
Key knowledge areas:
- Know the default priority with which a process is created.
- Run a program with a higher or lower priority than its default.
- Change the priority of a running process.
103.7 Perform text searches using regular expressions
The candidate must be able to manipulate files and text strings using regular expressions. The objective includes creating simple regular expressions containing various notation elements as well as using tools to perform searches with regular expressions within a file system or the content of a file.
Key knowledge areas:
- Create simple regular expressions containing various notation elements.
- Know how to differentiate basic regular expressions from extended ones.
- Understand the concepts of special characters, character classes, quantifiers, and anchors.
- Use tools to perform searches with regular expressions within a file system or the content of a file.
- Use regular expressions to delete, modify, or replace text.
103.8 Basic file editing
The candidate must be able to edit text files using vi. The objective includes navigation in vi, basic vi modes, as well as inserting, editing, deleting, copying, and finding text using vi. Knowledge of other popular text editors and knowing how to set the default editor is also included.
Key knowledge areas:
- Navigate a document using vi.
- Understand and use vi modes.
- Insert, edit, delete, copy, and find text using vi.
- Knowledge of Emacs, nano, and vim.
- Configure the standard editor.
Topic 104: Devices, Linux file systems, and the file hierarchy standard
104.1 Creating partitions and file systems
The candidate must be able to configure disk partitions to then create file systems on media such as hard drives. This includes managing swap partitions.
Key knowledge areas:
- Manage MBR and GPT partition tables
- Use various mkfs commands to create different file systems such as: ext2/ext3/ext4, XFS, VFAT, exFAT
- Basic knowledge of the Btrfs file system, including multi-device file systems, compression, and subvolumes.
104.2 Maintain file system integrity
The candidate must be able to maintain a standard file system as well as additional data associated with a journaling file system.
Key knowledge areas:
- Verify file system integrity.
- Monitor free space and inodes.
- Troubleshoot simple file system issues.
104.3 Control mounting and unmounting of file systems
The candidate must be able to configure the mounting of a file system.
Key knowledge areas:
- Mount and unmount file systems manually.
- Configure file system mounting at boot.
- Configure removable and user-mountable file systems.
- Use labels and universally unique identifiers (UUIDs) for file system identification and mounting.
- Knowledge of systemd mount units.
104.4 Deleted
104.5 File permissions and ownership administration
The candidate must be able to control file access by appropriate use of permissions and ownerships.
Key knowledge areas:
- Manage access permissions for regular and special files as well as directories.
- Use access modes such as suid, sgid, and sticky bit to maintain security.
- Know how to change the file creation mask.
- Use the group field to grant file access to group members.
104.6 Create and change hard and symbolic links
The candidate must be able to create and manage hard and symbolic links for a file.
Key knowledge areas:
- Create links.
- Identify hard and/or symbolic links.
- Copy versus link files.
- Use links to facilitate system administration tasks.
104.7 Find system files and locate files in the appropriate place
The candidate must be fully familiar with the Filesystem Hierarchy Standard (FHS), including typical file locations and directory classification.
Key knowledge areas:
- Understand the correct file locations under the FHS criterion.
- Find files and commands on a Linux system.
- Know the location and purpose of important files and directories as defined by the FHS.
LPIC-1 102
Topic 105: Shells and scripts
105.1 Customize and use the shell environment
The candidate must be able to customize the shell environment to suit user needs as well as modify global and user profiles.
Key knowledge areas:
- Set environment variables (e.g. PATH) at login or when spawning a new shell.
- Write Bash functions for frequently used scripts.
- Maintain the directory skeleton for new user accounts.
- Set the appropriate directory in the command search path.
105.2 Customizing and writing simple scripts
The candidate must be able to customize existing scripts or write new simple scripts in Bash.
Key knowledge areas:
- Use standard sh syntax (loops, tests).
- Use command substitution.
- Correctly evaluate the return code of a command for success, failure, or any other information provided by the command output.
- Execute chained commands.
- Perform conditional email sending to the superuser.
- Correctly select the script interpreter using the initial line or shebang (#!).
- Manage the location, ownership, execution, and suid permissions of scripts.
Topic 106: User interfaces and desktops
106.1 Install and configure X11
The candidate must be able to install and configure X11.
Key knowledge areas:
Understand X11 architecture.
Basic knowledge of the X Window configuration file.
Overwrite specific aspects of Xorg configuration, such as keyboard configuration.
Understand the components of desktop environments, such as display managers or window managers.
Manage access to the X server and screen applications on remote X servers.
Knowledge of Wayland.
106.2 Graphical desktops
The candidate should know the main desktops used with Linux, as well as the protocols used to access remote desktop sessions.
Key knowledge areas:
- Know the main desktop environments.
- Know which protocols are used to access remote desktop sessions.
106.3 Accessibility
Demonstrate knowledge and awareness of accessibility technologies.
Key knowledge areas:
- Basic knowledge of visual themes and settings.
- Basic knowledge of assistive technology.
Topic 107: Administrative tasks
107.1 Administer user and group accounts and related system files
The candidate must be able to add, delete, suspend, and modify user accounts.
Key knowledge areas:
- Add, modify, and delete groups and users.
- Administer user/group information in password/group databases.
- Create and manage limited and special purpose accounts.
107.2 Automate system administrative tasks by scheduling jobs
The candidate must know how to use cron and systemd timers to run jobs at regular intervals and at to run jobs at specific times.
Key knowledge areas:
- Manage jobs with cron and with at.
- Configure user access to cron and at services.
- Understand systemd timing units.
107.3 Localization and internationalization
The candidate must be able to localize a system in a language other than English. Likewise, it is important for the candidate to know why LANG=C is useful when writing scripts.
Key knowledge areas:
- Locale and environment variables.
- Time zone and environment variable configuration.
Topic 108: Essential system services
108.1 Maintain system time
The candidate must be able to correctly maintain system time and synchronize the clock via NTP.
Key knowledge areas:
- Adjust system date and time.
- Set hardware clock to correct UTC time.
- Configure the correct time zone.
- Basic NTP configuration using ntpd and chrony.
- Know how to use the pool.ntp.org service.
- Know the ntpq command.
108.2 System logs
The candidate must be able to configure the rsyslog logging daemon. This objective also includes configuring the daemon to send log outputs to a central server or to act as a central server and receive them. The systemd logging subsystem is also covered, and the candidate is expected to know rsyslog and syslog-ng as alternative logging systems.
Key knowledge areas:
- Basic rsyslog configuration.
- Know standard subsystems, priorities, and actions.
- Query the systemd journal.
- Filter systemd journal data by criteria such as date, service, or priority.
- Configure persistent storage of the systemd journal as well as its size.
- Delete old systemd journal data.
- Recover systemd journal data from a rescue system or a copy of the file system.
- Understand the interaction of rsyslog with systemd-journald.
- Logrotate configuration.
- Know syslog and syslog-ng.
108.3 Mail Transfer Agent Basics
The candidate must know the most common Mail Transfer Agent (MTA) programs and be able to perform basic forwarding and alias configurations on a client machine. The rest of the configuration files are not included.
Key knowledge areas:
- Create email aliases.
- Configure email forwarding.
- Know the most common MTA programs (postfix, sendmail, qmail, exim) – without including their configuration.
108.4 Print and printer management
The candidate must know how to manage print queues and user print jobs using CUPS and the LPD compatibility interface.
Key knowledge areas:
- Basic CUPS configuration (for local and remote printers).
- Management of user print queues.
- Troubleshooting printing issues.
- Add and remove jobs in configured print queues.
Topic 109: Networking Fundamentals
109.1 Internet Protocol Fundamentals
The candidate must demonstrate knowledge of TCP/IP network fundamentals.
Key knowledge areas:
- Demonstrate knowledge of network masks and CIDR notation.
- Know the difference between private and public IP addresses with dotted decimal notation.
- Know common TCP and UDP ports and services (20, 21, 22, 23, 25, 53, 80, 110, 123, 139, 143, 161, 162, 389, 443, 465, 514, 636, 993, 995).
- Know the differences and main characteristics of UDP, TCP, and ICMP protocols.
- Know the main differences between IPv4 and IPv6.
- Know the basic characteristics of IPv6.
109.2 Persistent network configuration
The candidate must know how to manage the persistent network configuration of a Linux server.
Key knowledge areas:
- Understand the basic TCP/IP configuration of a server.
- Configure ethernet and wi-fi networks using NetworkManager.
- Knowledge of systemd-networkd.
109.3 Basic network troubleshooting
The candidate must be able to troubleshoot network problems on client computers.
Key knowledge areas:
- Manually configure network interfaces, including displaying and modifying them using iproute2.
- Manually configure routing tables, including displaying and modifying them as well as configuring the default route using iproute2.
- Debug network configuration issues.
- Knowledge of legacy net-tools commands.
109.4 Client-side DNS configuration
Key knowledge areas:
- Query remote DNS servers.
- Configure local name resolution and use remote DNS servers.
- Modify the order in which name resolution is performed.
- Debug name resolution errors.
- Knowledge of systemd-resolved
Topic 110: Security
110.1 Security administration tasks
The candidate must be able to review the system configuration to ensure its security according to local security policies.
Key knowledge areas:
- Audit a system to find files with the suid/sgid bit active.
- Set or change user passwords and password expiration information.
- Know how to use nmap and netstat to discover open ports on a system.
- Set limits on user logins, processes, and memory usage.
- Determine which users are logged in to the system or are currently connected.
- Basic sudo configuration and usage.
110.2 System security configuration
The candidate must be able to configure a basic level of security on the system.
Key knowledge areas:
- Know about shadow passwords and how they work.
- Disable network services that are not in use.
- Understand the role of TCP wrappers.
110.3 Data protection through encryption
The candidate must be able to use public key techniques to protect data and communications.
Key knowledge areas:
- Basic configuration and use of OpenSSH 2 client.
- Understand the role played by OpenSSH 2 server keys.
- Basic GnuPG configuration and use, including key revocation.
- Using GPG to encrypt, decrypt, sign, and verify files.
- Understand port forwarding through SSH tunnels (including X11 tunnels).
Linux LPIC-1 Content and Exam Languages
The e-Learning components on which the training is based are available in English and Spanish.
Exam languages available at VUE testing centers: English, German, Japanese, Portuguese (Brazilian), Chinese (Simplified), Chinese (Traditional), Spanish (Modern)
Exam languages available online via OnVUE: English, German, Japanese, Portuguese (Brazilian), Spanish
What are the requirements for the Linux LPIC-1 course?
There are no prerequisites for this certification.
No prerequisites are necessary for the training, although notions of Operating Systems and essential handling of any of them are desirable.
Frequently asked questions about Linux LPIC-1 training and certification
1) What is Linux LPIC-1 certification?
LPIC-1 is the official certification from the Linux Professional Institute (LPI) that validates fundamental knowledge for Linux system administration, and is obtained by passing exams 101 and 102.
2) What is the format of LPIC-1 exams 101 and 102?
LPIC-1 certification is obtained by passing two independent exams:
- 101 (system architecture, installation, package management, and GNU/Linux commands)
- 102 (shells and scripting, administration, networking, and security)
3) Is the course geared towards LPIC-1 certification preparation?
Yes. The course is designed so you can prepare for LPIC-1 certification following the exam's approach and a clear path to exams 101 and 102.
4) How are LPIC-1 exams taken (online or in-person)?
LPIC exams can be taken online or in-person depending on the availability of the provider/authorized center and the country.
5) Is Nanfor an official LPI Partner for Linux training and certification?
Yes. Nanfor states that it is a Platinum partner and is approved by the Linux Professional Institute (LPI) as a Training Partner and Channel Partner.
6) Is LPIC-1 a distribution-dependent certification (Ubuntu/Red Hat) or is it agnostic?
LPIC-1 is a distribution-independent certification, so the knowledge is applicable in different Linux environments (Ubuntu, Debian, Red Hat, etc.)