Skills
Linux

Linux

LI01 - Linux File System

Complexity

Junior

Timeframe

Summary

You should know how to work with the Linux file system.

Skill Breakdown

You should understand what files and directories are.

You should understand the concept of a hierarchical directory structure. You should know what the current working directory and the parent directory are.

You should know how to work with absolute path names and relative path names.

You should basic file commands.

You should understand the concept of symbolic links (hard and soft).

You should know about the filesystem hierarchy standard.

Required Resources

Introduction to Linux:

Optional Resources

There are no optional resources for this skill.

LI02 - Linux Users and Groups

Complexity

Junior

Timeframe

Summary

You should understand how users and groups work in Linux.

Skill Breakdown

You should understand basic user management and be able to:

  • add new users using useradd
  • update password using passwd
  • modify users using usermod
  • login as a new user using su

You should understand the concept of groups. You should be able to perform basic group management and be able to:

  • look at groups using groups
  • create new groups using groupadd
  • add users to groups using gpasswd
  • modify groups using groupmod
  • delete existing groups using groupdel

You should understand how permissions work. You should know about read, write and execute access. You should understand that different access permissions can be applied to the owning user, owning group and others.

You should understand how to change permissions using chmod.

Required Resources

Introduction to Linux:

Optional Resources

There are no optional resources for this skill.

LI03 - Linux Processes

Complexity

Junior

Timeframe

Summary

You should understand the basics of Linux processes.

Skill Breakdown

You should understand the concept of a process.

You should understand the concept of parent and children processes.

You should understand PIDs and PPIDs.

You should understand the most important process states:

  • running
  • sleeping
  • stopped

You should understand signals:

  • SIGINT
  • SIGTERM
  • SIGKILL
  • SIGHUP
  • SIGTSTP
  • SIGSTOP
  • SIGCONT

You should understand foreground and background processes.

You should be able to use the systemd tool to manage services.

Required Resources

Introduction to Linux:

Optional Resources

There are no optional resources for this skill.

LI04 - Linux Network Fundamentals

Complexity

Junior

Timeframe

Summary

You should understand the basics of Linux networking.

Skill Breakdown

You should understand network interfaces.

You should understand the basics of the IP protocol and know how IP addresses work.

You should understand the basics of the TCP and UDP protocols. You should understand the concepts of sockets and ports.

You should understand the basics of the HTTP protocol and be able to use the curl command to send HTTP requests.

You should understand different HTTP methods, especially GET and POST.

You should understand HTTP headers and HTTP cookies.

You should understand the purpose of HTTPS.

Required Resources

Introduction to Linux:

Optional Resources

There are no optional resources for this skill.

LI05 - Package Management

Complexity

Junior

Timeframe

Summary

You should understand the basics of package management in Linux.

Skill Breakdown

You should understand the purpose of package managers.

You should be able to use apt to manage packages:

  • updating with apt update
  • upgrading with apt upgrade
  • installing packages with apt install
  • removing packages with apt remove
  • purging packages with apt purge
  • searching for packages with apt search and apt show

You should know how to manage PPAs.

You should be able to use the dpkg tool.

Required Resources

Introduction to Linux:

Optional Resources

There are no optional resources for this skill.

LI06 - Shell Scripting Basics

Complexity

Junior

Timeframe

Summary

You should understand basics of shell scripting.

Skill Breakdown

You should know how to execute shell scripts. You should understand that there are different shell scripting languages.

You should understand how to declare variables.

You should know how command substitution works.

You should be able to use arithmetic operators.

You should be able to use functions.

You should be able to use loops and conditionals.

You should understand stdin, stdout and stderr. You should be able to do I/O redirection.

You should know how to use the pipe operator.

You should understand environment variables.

Required Resources

Introduction to Linux:

Optional Resources

There are no optional resources for this skill.