-
Notifications
You must be signed in to change notification settings - Fork 0
Home
PotatoScript edited this page May 18, 2025
·
3 revisions
Ubuntu is a free and open-source Linux operating system. It's one of the most popular Linux distributions in the world, especially for:
- Beginners learning Linux
- Software developers
- Servers and cloud computing
- WSL (Windows Subsystem for Linux) users on Windows
- Run Linux command-line tools
- Develop software in Python, C/C++, Node.js, etc.
- Use Git, SSH, and Docker
- Host web servers (Apache, Nginx)
- Automate tasks with Bash scripts
- Do things Windows normally can’t
In Windows 10/11, Ubuntu is often used inside WSL (Windows Subsystem for Linux) so developers can:
- Use Linux tools without dual-booting
- Run Docker Desktop (Docker uses WSL2 and Ubuntu internally)
- Run scripts and automation tools easily
Some key things included:
| Component | Purpose |
|---|---|
| Bash | Linux command-line shell |
| APT | Package manager to install software |
| Python | Comes pre-installed |
| Systemd | Controls services and startup (in full Linux) |
| Docker compatibility | Used often for containers |
Ubuntu is developed by a UK-based company called Canonical Ltd.
sudo apt update
sudo apt install python3
python3 --version| Title | Remark |
|---|---|
| Installation | Step-by-step guide on installing Ubuntu on WSL2, Virtual Machines, or bare-metal hardware. |
| Basic Command | Fundamental Linux commands for navigating the filesystem, managing directories, and executing essential tasks. |
| File Management | Instructions on creating, copying, moving, deleting, and viewing files and directories using command-line utilities. |
| User Management | Managing user accounts, groups, permissions, and authentication settings within Ubuntu. |
| Permissions | Explanation of file and directory permissions, ownership, and access control mechanisms. |
| Process Management | Monitoring and controlling system processes, jobs, and background tasks using command-line tools. |
| Networking | Configuring and troubleshooting network interfaces, checking connectivity, and managing network services. |
| Package Management | Installing, updating, removing, and managing software packages using APT, Snap, and Flatpak. |
| System Monitoring | Tools for tracking CPU, memory, disk usage, and overall system performance in real-time. |
| Disk Management | Partitioning, formatting, mounting, and monitoring storage devices and disk space. |
| Services & Daemons | Managing system services, background processes, and startup programs using systemd. |
| Firewall & Security | Configuring Ubuntu’s firewall, securing SSH access, and implementing best security practices. |
| Environment Variables | Setting, modifying, and managing environment variables for system and user sessions. |
| Shell Scripting | Writing and executing Bash scripts to automate repetitive tasks and streamline system operations. |
| Cron Jobs & Automation | Scheduling and automating tasks using cron jobs, systemd timers, and task automation tools. |
| Docker & Containers | Deploying and managing containerized applications using Docker, Podman, and Kubernetes. |
| Virtualization | Running virtual machines on Ubuntu using KVM, QEMU, VirtualBox, and Vagrant. |
| Git & Version Control | Managing code repositories, version control workflows, and collaboration using Git. |
| Python & Development | Setting up Python, virtual environments, package management, and development tools. |
| Node.js & JavaScript | Installing Node.js, managing dependencies with npm/yarn, and running JavaScript applications. |
| Database Management | Installing and managing databases such as MySQL, PostgreSQL, SQLite, and MongoDB. |
| System Backup & Recovery | Strategies for backing up, restoring, and recovering system data and configurations. |
| Remote Access & SSH | Securely connecting to remote machines using SSH, SCP, Rsync, and session management tools. |
| Logging & Debugging | Monitoring system logs, troubleshooting errors, and debugging applications effectively. |
| Performance Tuning | Optimizing system performance, tuning kernel parameters, and managing resource allocation. |
| Compiling Software | Building software from source using compilers like GCC, Clang, Make, and CMake. |
| Linux Kernel Management | Understanding and managing the Linux kernel, including updates, modules, and custom builds. |
| Title | Remark/code |
|---|---|
| Installation | Install Ubuntu on WSL2 on Windows 10 |
| Basic Command |
echo, ls, cd, cd -, pwd, mkdir
|