Bird
Raised Fist0
Linux CLIscripting~10 mins

Linux distributions overview (Ubuntu, CentOS, Fedora) in Linux CLI - Step-by-Step Execution

Choose your learning style10 modes available
Concept Flow - Linux distributions overview (Ubuntu, CentOS, Fedora)
Start: Choose Linux Distribution
↓
Ubuntu Features
↓
CentOS Features
↓
Fedora Selected?
Yes→Fedora Features
No↓
Unknown Distribution
↓
End
The flow shows choosing a Linux distribution and then exploring its features based on selection.
Execution Sample
Linux CLI
echo "Choose your Linux distro: Ubuntu, CentOS, Fedora"
read distro
case $distro in
  Ubuntu) echo "You chose Ubuntu: user-friendly, popular, good support.";;
  CentOS) echo "You chose CentOS: stable, enterprise-focused, RHEL-based.";;
  Fedora) echo "You chose Fedora: cutting-edge, latest features, community-driven.";;
  *) echo "Unknown distribution.";;
esac
This script asks the user to enter a Linux distribution name and then prints a short description about it.
Execution Table
StepActionInput/ConditionResult/Output
1Prompt userN/ADisplays: Choose your Linux distro: Ubuntu, CentOS, Fedora
2User inputUbuntuStores 'Ubuntu' in variable distro
3Check distrodistro == UbuntuTrue, prints: You chose Ubuntu: user-friendly, popular, good support.
4EndN/AScript ends after printing message
💡 User input matches Ubuntu, script prints Ubuntu info and ends.
Variable Tracker
VariableStartAfter InputFinal
distroemptyUbuntuUbuntu
Key Moments - 2 Insights
Why does the script print Ubuntu info when I type 'Ubuntu' exactly but not when I type 'ubuntu'?
The case statement checks for exact matches including case. 'Ubuntu' matches but 'ubuntu' does not, so no branch is taken for lowercase input as shown in execution_table step 3.
What happens if I type a distribution name not listed like 'Debian'?
The default case (*) catches any input not matching Ubuntu, CentOS, or Fedora and prints 'Unknown distribution.' This is not shown in the current execution_table but is part of the script logic.
Visual Quiz - 3 Questions
Test your understanding
Look at the execution table, what is the value of 'distro' after user input?
A"Ubuntu"
B"CentOS"
C"Fedora"
D"empty"
💡 Hint
Check variable_tracker row for 'distro' after input.
At which step does the script print the message about Ubuntu?
AStep 1
BStep 3
CStep 2
DStep 4
💡 Hint
Look at execution_table step where condition distro == Ubuntu is true.
If the user types 'Fedora' instead of 'Ubuntu', what changes in the execution table?
AStep 4 prints Unknown distribution
BStep 2 input changes to Fedora but output stays Ubuntu message
CStep 3 output changes to Fedora message
DNo change
💡 Hint
Consider how the case statement matches input to output messages.
Concept Snapshot
Linux distributions differ in purpose and features.
Use 'case' in shell scripts to handle user input.
Exact match is needed for case options.
Default (*) handles unknown inputs.
Ubuntu: user-friendly.
CentOS: stable enterprise.
Fedora: latest features.
Full Transcript
This visual execution shows a simple shell script that asks the user to choose a Linux distribution among Ubuntu, CentOS, and Fedora. The script reads the input and uses a case statement to print a short description about the chosen distribution. The flow diagram shows the decision path based on user input. The execution table traces each step: prompting, input reading, condition checking, and output printing. The variable tracker shows how the variable 'distro' changes from empty to the user input. Key moments clarify common confusions about case sensitivity and unknown inputs. The quiz tests understanding of variable values and script flow. The snapshot summarizes key points about Linux distributions and shell scripting with case statements.

Practice

(1/5)
1. Which Linux distribution is known for being beginner-friendly and suitable for general use?
easy
A. Ubuntu
B. CentOS
C. Fedora
D. Arch Linux

Solution

  1. Step 1: Understand beginner-friendly distributions

    Ubuntu is widely recognized for its ease of use and beginner-friendly interface.
  2. Step 2: Compare with other distributions

    CentOS is more server-focused and Fedora targets advanced users, so they are less beginner-friendly.
  3. Final Answer:

    Ubuntu -> Option A
  4. Quick Check:

    Beginner-friendly = Ubuntu [OK]
Hint: Ubuntu = beginner-friendly, CentOS = servers, Fedora = advanced [OK]
Common Mistakes:
  • Confusing CentOS as beginner-friendly
  • Thinking Fedora is for beginners
  • Choosing Arch Linux which is advanced
2. Which command correctly installs a package on CentOS using the default package manager?
easy
A. apt-get install httpd
B. pacman -S httpd
C. dnf install httpd
D. yum install httpd

Solution

  1. Step 1: Identify CentOS package manager

    CentOS traditionally uses yum as its package manager.
  2. Step 2: Check command syntax

    yum install httpd is the correct syntax to install the Apache web server on CentOS.
  3. Final Answer:

    yum install httpd -> Option D
  4. Quick Check:

    CentOS uses yum = yum install [OK]
Hint: CentOS uses yum, Ubuntu uses apt, Fedora uses dnf [OK]
Common Mistakes:
  • Using apt-get on CentOS
  • Using pacman which is for Arch Linux
  • Confusing dnf as default on CentOS
3. What will be the output of the command cat /etc/os-release | grep '^ID=' on a Fedora system?
medium
A. ID=fedora
B. ID=centos
C. ID=ubuntu
D. ID=debian

Solution

  1. Step 1: Understand /etc/os-release file

    This file contains identification info about the Linux distribution, including the ID field.
  2. Step 2: Recognize Fedora's ID value

    Fedora's ID in this file is fedora, so the grep command outputs ID=fedora.
  3. Final Answer:

    ID=fedora -> Option A
  4. Quick Check:

    Fedora ID = fedora [OK]
Hint: Fedora's ID in os-release is 'fedora' [OK]
Common Mistakes:
  • Assuming ID=ubuntu on Fedora
  • Confusing CentOS and Fedora IDs
  • Not using grep correctly
4. You try to update packages on Fedora using yum update but get an error. What is the likely cause?
medium
A. CentOS commands work on Fedora without changes
B. You need to run 'apt-get update' instead
C. Fedora uses 'dnf' instead of 'yum' for package management
D. You must use 'pacman' on Fedora

Solution

  1. Step 1: Identify Fedora's package manager

    Fedora uses dnf as its default package manager, replacing yum.
  2. Step 2: Understand error cause

    Using yum update on Fedora may fail because yum is deprecated or not installed by default.
  3. Final Answer:

    Fedora uses 'dnf' instead of 'yum' for package management -> Option C
  4. Quick Check:

    Fedora package manager = dnf [OK]
Hint: Fedora uses dnf, not yum, for updates [OK]
Common Mistakes:
  • Trying apt-get on Fedora
  • Assuming CentOS commands always work
  • Using pacman which is Arch Linux's manager
5. You want to set up a stable web server environment with long-term support and minimal updates. Which Linux distribution should you choose?
hard
A. Ubuntu
B. CentOS
C. Fedora
D. Debian Testing

Solution

  1. Step 1: Understand stability and support needs

    Stable web servers require long-term support and minimal frequent updates to avoid disruptions.
  2. Step 2: Match distribution to requirements

    CentOS is known for its stability and long-term support, making it ideal for servers.
  3. Step 3: Compare other options

    Fedora is cutting-edge and updates often; Ubuntu is user-friendly but less stable long-term; Debian Testing is unstable.
  4. Final Answer:

    CentOS -> Option B
  5. Quick Check:

    Stable server = CentOS [OK]
Hint: Choose CentOS for stable, long-term server setups [OK]
Common Mistakes:
  • Choosing Fedora for stability
  • Assuming Ubuntu is best for servers
  • Picking Debian Testing for production
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