Bird
Raised Fist0
Linux CLIscripting~15 mins

System resource monitoring (free, uptime, vmstat) in Linux CLI - Mini Project: Build & Apply

Choose your learning style10 modes available
System Resource Monitoring with Linux CLI Tools
📖 Scenario: You are a system administrator who needs to check the health of a Linux server. You want to monitor memory usage, system uptime, and CPU activity using simple Linux commands.
🎯 Goal: Learn to use free, uptime, and vmstat commands to monitor system resources and understand their outputs.
📋 What You'll Learn
Use the free command to check memory usage
Use the uptime command to check how long the system has been running
Use the vmstat command to check CPU and memory statistics
💡 Why This Matters
🌍 Real World
System administrators regularly check server health to prevent crashes and performance issues by monitoring memory, uptime, and CPU usage.
💼 Career
Knowing these commands is essential for Linux system administrators, DevOps engineers, and anyone managing servers to ensure smooth operations.
Progress0 / 4 steps
1
Check Memory Usage with free
Run the free -m command to display memory usage in megabytes.
Linux CLI
Hint

The -m option shows memory in megabytes, which is easier to read.

2
Check System Uptime with uptime
Run the uptime command to see how long the system has been running and the load averages.
Linux CLI
Hint

The uptime command shows the current time, how long the system has been running, and load averages.

3
Monitor CPU and Memory with vmstat
Run the vmstat 1 2 command to display CPU and memory statistics twice with a 1-second interval.
Linux CLI
Hint

The vmstat 1 2 command shows system stats twice, one second apart, to observe changes.

4
Display All Monitoring Outputs
Run all three commands in sequence: free -m, uptime, and vmstat 1 2 to see memory, uptime, and CPU stats.
Linux CLI
Hint

Run all commands one after another to get a full picture of system resources.

Practice

(1/5)
1. What does the free command primarily display on a Linux system?
easy
A. System uptime and load average
B. Disk usage statistics
C. CPU temperature
D. Memory usage and availability

Solution

  1. Step 1: Understand the purpose of free

    The free command shows information about the system's memory usage, including total, used, free, and available memory.
  2. Step 2: Compare with other commands

    uptime shows system running time and load, vmstat shows detailed CPU and memory stats, but free focuses on memory.
  3. Final Answer:

    Memory usage and availability -> Option D
  4. Quick Check:

    free = Memory info [OK]
Hint: Remember: free = memory info, uptime = running time [OK]
Common Mistakes:
  • Confusing free with uptime output
  • Thinking free shows CPU or disk info
  • Mixing vmstat details with free
2. Which of the following is the correct syntax to display memory usage in megabytes using the free command?
easy
A. free -k
B. free -m
C. free -g
D. free --bytes

Solution

  1. Step 1: Identify the option for megabytes

    The -m option in free shows memory in megabytes.
  2. Step 2: Check other options

    --bytes shows bytes, -g shows gigabytes, -k shows kilobytes. So -m is correct for MB.
  3. Final Answer:

    free -m -> Option B
  4. Quick Check:

    free -m = megabytes [OK]
Hint: Use -m for MB, -k for KB, -g for GB in free [OK]
Common Mistakes:
  • Using -k expecting MB output
  • Confusing --bytes with -m
  • Using wrong option like -g for MB
3. What output will the command uptime produce on a system that has been running for 3 days, 4 hours, 12 minutes with load averages 0.15, 0.10, 0.05?
medium
A. 10:30:00 up 3 days, 4:12, 1 user, load average: 0.15, 0.10, 0.05
B. 3 days, 4 hours, 12 minutes uptime with load 0.15, 0.10, 0.05
C. uptime: 3d 4h 12m, load: 0.15 0.10 0.05
D. System up for 3 days 4 hours 12 minutes, load averages: 0.15 0.10 0.05

Solution

  1. Step 1: Understand uptime output format

    The uptime command shows current time, system uptime in days and hours:minutes, number of users, and load averages.
  2. Step 2: Match given data to output style

    The correct format includes current time, "up 3 days, 4:12", user count, and load averages separated by commas.
  3. Final Answer:

    10:30:00 up 3 days, 4:12, 1 user, load average: 0.15, 0.10, 0.05 -> Option A
  4. Quick Check:

    uptime shows time, up, users, load [OK]
Hint: Look for 'up' and load averages format in uptime output [OK]
Common Mistakes:
  • Expecting uptime to print in verbose sentences
  • Missing commas or user count in output
  • Confusing uptime with other commands
4. You run vmstat 1 3 but get an error saying "command not found". What is the most likely cause?
medium
A. vmstat is not installed on the system
B. The interval must be greater than 1 second
C. The command syntax is incorrect; count must be last
D. You need to run vmstat as root user

Solution

  1. Step 1: Verify vmstat syntax

    vmstat 1 3 uses correct syntax: 1-second delay, 3 samples.
  2. Step 2: Analyze the error

    "command not found" means vmstat (from procps package) is not installed.
  3. Final Answer:

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

    command not found = not installed [OK]
Hint: vmstat missing? Install procps package [OK]
Common Mistakes:
  • Assuming syntax error for missing command
  • Thinking root needed for vmstat
  • Believing interval too small
5. You want to monitor CPU and memory usage every 2 seconds for 5 samples using vmstat. Which command will correctly do this and what will be the total monitoring time?
hard
A. vmstat 2 5; total time 10 seconds
B. vmstat 5 2; total time 10 seconds
C. vmstat 2 5; total time 8 seconds
D. vmstat 5 2; total time 8 seconds

Solution

  1. Step 1: Understand vmstat interval and count

    vmstat 2 5 runs vmstat every 2 seconds, 5 times total.
  2. Step 2: Calculate total monitoring time

    vmstat prints the first line immediately, then 4 intervals of 2 seconds each, so total time = 2 * (5 - 1) = 8 seconds.
  3. Final Answer:

    vmstat 2 5; total time 8 seconds -> Option C
  4. Quick Check:

    Total time = interval * (count - 1) [OK]
Hint: Total time = interval x (count - 1) for vmstat [OK]
Common Mistakes:
  • Multiplying interval by count instead of count-1
  • Swapping interval and count values
  • Assuming total time equals interval x count
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