Linux: Introduction & File System
1. Introduction to Linux
Linux = Open-source, Unix-like operating system.
Developed by Linus Torvalds (1991).
Free, customizable, and widely used in servers, supercomputers, mobile devices (Android).
2. Basic Features of Linux
Multiuser → Multiple users at once.
Multitasking → Run many processes simultaneously.
Portability → Runs on different hardware platforms.
Security → User permissions, encryption.
Open Source → Free to modify and distribute.
Networking support → Built-in TCP/IP.
Stability → Rarely crashes, widely used in servers.
3. Flavors (Distributions) of Linux
Ubuntu → User-friendly, desktop.
Debian → Stable, free software focus.
Fedora → Cutting-edge features, Red Hat community.
Red Hat Enterprise Linux (RHEL) → Enterprise support.
CentOS → Community-supported version of RHEL.
SUSE Linux → Enterprise + server environments.
Kali Linux → Security testing & penetration testing.
4. Advantages of Linux
Free and open-source.
Secure and stable.
Large community support.
Compatible with servers, desktops, and embedded systems.
No license costs (unlike Windows).
5. Installation Requirements (General)
Processor: x86/x64 CPU.
RAM: 1 GB (minimum), 4 GB recommended.
Disk Space: 20 GB (minimum).
Boot Media: CD/DVD, USB, or network install.
6. Architecture of Unix/Linux System
Hardware → Physical devices.
Kernel → Core part of OS, manages CPU, memory, devices.
Shell → Command interpreter (bash, zsh, sh).
File System → Organizes files & directories.
User Programs → Applications, utilities.
7. Linux Standard Directories
(From FHS – Filesystem Hierarchy Standard)
/ → Root directory.
/bin → Essential user commands.
/sbin → System administration commands.
/home → User home directories.
/etc → Configuration files.
/var → Variable data (logs, cache).
/usr → User programs, libraries.
/tmp → Temporary files.
/dev → Device files.
/lib → Shared libraries.
/boot → Boot loader & kernel files.
Basic Linux Commands (Files & Directories)
1. Navigation
pwd → Show present working directory.
cd <dir> → Change directory.
o cd /home/user → Go to user directory.
o cd .. → Move one level up.
o cd ~ → Go to home directory.
2. Listing Files
ls → List files.
ls -l → Detailed list (permissions, size, date).
ls -a → Show hidden files.
ls -lh → Human-readable sizes.
3. Creating Directories
mkdir <dirname> → Create directory.
mkdir -p a/b/c → Create nested directories.
4. Removing Directories
rmdir <dirname> → Remove empty directory.
rm -r <dirname> → Remove directory with contents.
5. File Operations
cp file1 file2 → Copy file.
cp -r dir1 dir2 → Copy directory recursively.
mv file1 file2 → Rename/move file.
rm file → Remove file.
6. Viewing Files
file <filename> → Show file type.
cat <file> → Display contents.
more <file> → View file page by page (space = next page).
less <file> → Scroll file up/down (q = quit, / = search).