Bird
Raised Fist0
Linux CLIscripting~5 mins

Why Linux powers the internet in Linux CLI - Why It Works

Choose your learning style10 modes available
Introduction
Linux is the operating system that runs most of the internet's servers. It is reliable, secure, and free, which helps websites and services stay online and fast for everyone.
When you want a stable system to host websites that must run 24/7 without crashing
When you need a secure environment to protect user data on your online service
When you want to customize your server to run specific internet applications efficiently
When you want to save costs by using free and open-source software for your servers
When you want to use powerful tools and scripts to automate server management
Commands
This command shows the Linux system information, confirming the server runs Linux.
Terminal
uname -a
Expected OutputExpected
Linux my-server 5.15.0-60-generic #66-Ubuntu SMP Fri Feb 17 15:06:34 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
This command shows the current system resource usage, helping to monitor server health.
Terminal
top -b -n 1 | head -n 5
Expected OutputExpected
top - 10:00:00 up 10 days, 3:22, 1 user, load average: 0.00, 0.01, 0.05 Tasks: 120 total, 1 running, 119 sleeping, 0 stopped, 0 zombie %Cpu(s): 1.0 us, 0.5 sy, 0.0 ni, 98.0 id, 0.5 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem : 2048000 total, 500000 free, 800000 used, 748000 buff/cache KiB Swap: 1024000 total, 1024000 free, 0 used. 900000 avail Mem
→
-b - Run top in batch mode for scripting
→
-n 1 - Show only one iteration of output
This command checks if the Nginx web server is running, which is common on Linux internet servers.
Terminal
ps aux | grep nginx
Expected OutputExpected
www-data 1234 0.0 0.1 123456 2345 ? Ss 09:59 0:00 nginx: master process /usr/sbin/nginx www-data 1235 0.0 0.2 123456 3456 ? S 09:59 0:00 nginx: worker process
This command shows disk space usage for the web server directory, important to keep websites running smoothly.
Terminal
df -h /var/www
Expected OutputExpected
Filesystem Size Used Avail Use% Mounted on /dev/sda1 50G 20G 28G 42% /var/www
→
-h - Show sizes in human-readable format
Key Concept

If you remember nothing else, remember: Linux is the backbone of internet servers because it is stable, secure, and flexible.

Common Mistakes
Trying to run internet services on unsupported or unstable operating systems
This can cause frequent crashes and downtime, making websites unreliable
Use Linux distributions known for stability and support, like Ubuntu Server or CentOS Stream
Ignoring system resource monitoring commands
Without monitoring, servers can run out of memory or CPU, causing slow or failed services
Regularly use commands like top and df to check server health and disk space
Not verifying if essential services like web servers are running
If the web server is down, websites become inaccessible to users
Use commands like ps aux | grep nginx to confirm services are active
Summary
Use uname -a to confirm the server runs Linux, the common OS for internet servers.
Monitor system health with top and disk space with df to keep services running smoothly.
Check that web servers like Nginx are running to ensure websites stay online.

Practice

(1/5)
1. Why is Linux widely used to power internet servers?
easy
A. Because it is free, stable, and flexible
B. Because it is the only operating system available
C. Because it requires expensive licenses
D. Because it only runs on personal computers

Solution

  1. Step 1: Understand Linux's cost and flexibility

    Linux is free to use and can be customized easily, unlike many paid systems.
  2. Step 2: Recognize Linux's stability for servers

    Linux is known for running reliably over long periods, which is essential for internet servers.
  3. Final Answer:

    Because it is free, stable, and flexible -> Option A
  4. Quick Check:

    Linux powers servers due to freedom and stability = A [OK]
Hint: Linux is popular because it's free and reliable [OK]
Common Mistakes:
  • Thinking Linux is the only OS available
  • Believing Linux requires paid licenses
  • Assuming Linux only runs on personal computers
2. Which of the following is the correct command to check the Linux kernel version?
easy
A. pwd
B. ls -l
C. uname -r
D. cat /etc/passwd

Solution

  1. Step 1: Identify command to show kernel version

    The command uname -r displays the Linux kernel version.
  2. Step 2: Check other commands' purposes

    ls -l lists files, pwd shows current directory, cat /etc/passwd shows user info.
  3. Final Answer:

    uname -r -> Option C
  4. Quick Check:

    Kernel version command = uname -r [OK]
Hint: Use uname -r to see kernel version quickly [OK]
Common Mistakes:
  • Confusing ls -l with kernel info
  • Using pwd instead of uname
  • Trying to read unrelated files for version
3. What will be the output of the command ps aux | grep apache on a Linux server?
medium
A. Current directory contents
B. Error message about invalid command
C. System uptime information
D. List of running processes related to Apache

Solution

  1. Step 1: Understand the ps aux command

    ps aux lists all running processes on the system.
  2. Step 2: Understand the grep apache part

    grep apache filters the list to show only lines containing 'apache', showing Apache-related processes.
  3. Final Answer:

    List of running processes related to Apache -> Option D
  4. Quick Check:

    ps aux filtered by apache = running Apache processes [OK]
Hint: grep filters process list to show Apache only [OK]
Common Mistakes:
  • Expecting directory listing instead of processes
  • Thinking it shows system uptime
  • Assuming command will error out
4. You run the command systemctl start nginx but get an error saying 'Failed to start nginx.service: Unit not found.' What is the likely cause?
medium
A. Nginx is not installed on the system
B. You typed the command correctly and service is running
C. The systemctl command is not available on Linux
D. You need to reboot the server before starting nginx

Solution

  1. Step 1: Analyze the error message

    'Unit not found' means the service file for nginx does not exist, often because nginx is not installed.
  2. Step 2: Check other options' validity

    systemctl is standard on Linux; reboot is not required to start services; the command typed correctly but service missing.
  3. Final Answer:

    Nginx is not installed on the system -> Option A
  4. Quick Check:

    Unit not found = service missing = nginx not installed [OK]
Hint: Unit not found means service missing or not installed [OK]
Common Mistakes:
  • Assuming systemctl is missing
  • Thinking reboot fixes service start errors
  • Ignoring installation status of nginx
5. You want to automate daily backups on a Linux server using a script. Which Linux feature helps you schedule this task to run automatically every day at 2 AM?
hard
A. systemctl start
B. cron jobs
C. ls command
D. chmod permissions

Solution

  1. Step 1: Identify scheduling tools in Linux

    Cron is the standard Linux tool to schedule tasks to run automatically at set times.
  2. Step 2: Understand other options' purposes

    systemctl start runs services manually, ls lists files, chmod changes permissions, none schedule tasks.
  3. Final Answer:

    cron jobs -> Option B
  4. Quick Check:

    Automate daily tasks = cron jobs [OK]
Hint: Use cron to schedule tasks automatically [OK]
Common Mistakes:
  • Confusing systemctl with scheduling
  • Thinking ls or chmod schedule tasks
  • Not knowing cron is for automation
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard