Linux System Architecture

Module 1:  - Linux System Architecture

Lesson 1: Linux System Architecture

1.1 Understanding the Components

1.1.1 Kernel

The kernel is the core component of the Linux operating system. It manages system resources, communicates between hardware and software components, and provides essential services to other parts of the operating system.

1.1.2 Shell

The shell is the interface through which users interact with the operating system. It interprets commands, manages processes, and provides a powerful scripting environment. Common shells include Bash (Bourne Again SHell), Zsh, and Fish.

1.1.3 Filesystem Hierarchy

The filesystem hierarchy organizes files and directories in a structured manner. Understanding the hierarchy is crucial for locating and managing files. Key directories include /bin (executable binaries), /etc (system configuration files), and /home (user home directories).


1.2 Connecting to a Linux System

1.2.1 SSH (Secure Shell)

SSH is a secure protocol for remote access to Linux systems. It provides encrypted communication, ensuring confidentiality and integrity. To connect to a Linux system using SSH, use the command:


ssh username@hostname

Replace username with your username and hostname with the IP address or domain of the Linux system.


1.2.2 Remote Access

Remote access allows us to manage a Linux system from a different location. It's especially useful for servers hosted in data centers or cloud environments. SSH is a common method, but other tools like PuTTY (for Windows) and Termius (cross-platform) provide similar functionality.


Lesson 2: Basic Terminal Usage

2.1 Navigating the File System

Use these commands to navigate the filesystem:

cd: Change directory


cd /path/to/directory

ls: List files and directories

ls

2.2 Working with Files and Directories

cp: Copy files or directories


cp source destination

mv: Move or rename files or directories


mv source destination

rm: Remove files or directories


rm file

2.3 File Permissions

chmod: Change file permissions


chmod permissions file

chown: Change file owner

chown user:group file

2.4 Basic Text Editing

nano, vim, or emacs: Text editors for creating and editing files.

2.5 System Information

uname: Display system information

uname -a

2.6 Managing Processes

ps: Display information about active processes


ps aux

kill: Terminate a process


kill process_id

In this module, we've explored the fundamental components of the Linux system architecture, including the kernel, shell, and filesystem hierarchy. Additionally, we've learned how to connect to a Linux system using SSH and covered basic terminal usage for file manipulation, permissions, text editing, and process management. These skills form the foundation for effective Linux system administration.