Bird
Raised Fist0
Linux CLIscripting~5 mins

fdisk and lsblk in Linux CLI - Time & Space Complexity

Choose your learning style10 modes available
Time Complexity: fdisk and lsblk
O(n)
Understanding Time Complexity

When using commands like fdisk and lsblk, it helps to understand how their execution time changes as the number of disks or partitions grows.

We want to know how the time to list or manage disks grows when there are more devices or partitions.

Scenario Under Consideration

Analyze the time complexity of the following commands.

lsblk
fdisk -l

lsblk lists all block devices and their partitions. fdisk -l lists detailed partition info for all disks.

Identify Repeating Operations

Both commands scan devices and partitions one by one.

  • Primary operation: Reading info for each disk and its partitions.
  • How many times: Once per disk and once per partition inside each disk.
How Execution Grows With Input

As the number of disks and partitions grows, the commands take longer because they check each item.

Input Size (number of disks + partitions)Approx. Operations
10About 10 device reads
100About 100 device reads
1000About 1000 device reads

Pattern observation: The time grows roughly in direct proportion to the number of devices and partitions.

Final Time Complexity

Time Complexity: O(n)

This means the time to run these commands grows linearly with the number of disks and partitions.

Common Mistake

[X] Wrong: "These commands run instantly no matter how many disks there are."

[OK] Correct: The commands must check each disk and partition, so more devices mean more work and longer time.

Interview Connect

Understanding how command execution time grows with input size helps you reason about system performance and scripting efficiency in real tasks.

Self-Check

What if we only list partitions on a single disk instead of all disks? How would the time complexity change?

Practice

(1/5)
1. What is the primary purpose of the fdisk command in Linux?
easy
A. To display the current directory contents
B. To create and modify disk partitions
C. To list running processes
D. To monitor network connections

Solution

  1. Step 1: Understand the role of fdisk

    The fdisk command is used to create, delete, and modify disk partitions on Linux systems.
  2. Step 2: Compare with other commands

    Other options like listing directories, processes, or network connections are unrelated to disk partitioning.
  3. Final Answer:

    To create and modify disk partitions -> Option B
  4. Quick Check:

    fdisk = disk partition tool [OK]
Hint: fdisk = fix disk partitions [OK]
Common Mistakes:
  • Confusing fdisk with lsblk
  • Thinking fdisk lists files
  • Assuming fdisk monitors network
2. Which of the following is the correct syntax to list all block devices using lsblk?
easy
A. lsblk --all
B. lsblk -d
C. lsblk -l
D. lsblk -f

Solution

  1. Step 1: Identify the option to list all devices

    The --all option with lsblk lists all devices, including empty ones.
  2. Step 2: Check other options

    -d lists only whole disks (no partitions), -l lists in list format, -f shows filesystem info but not all devices.
  3. Final Answer:

    lsblk --all -> Option A
  4. Quick Check:

    lsblk --all = show all devices [OK]
Hint: --all shows everything in lsblk [OK]
Common Mistakes:
  • Using -d instead of --all
  • Confusing -l with --all
  • Using -f to list devices
3. Given the command output below, what is the size of the partition /dev/sda1?
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0  100G  0 disk 
sda1     8:1    0   50G  0 part /
sda2     8:2    0   50G  0 part /home
medium
A. 100G
B. 0G
C. 50G
D. 150G

Solution

  1. Step 1: Read the lsblk output

    The line for /dev/sda1 shows a size of 50G under the SIZE column.
  2. Step 2: Understand partition sizes

    The disk sda is 100G total, split into two partitions of 50G each.
  3. Final Answer:

    50G -> Option C
  4. Quick Check:

    /dev/sda1 size = 50G [OK]
Hint: Check SIZE column for partition size [OK]
Common Mistakes:
  • Confusing disk size with partition size
  • Adding partition sizes incorrectly
  • Ignoring the SIZE column
4. You run fdisk /dev/sdb but get the error: cannot open /dev/sdb: Permission denied. What is the most likely cause?
medium
A. The disk /dev/sdb is formatted with ext4
B. The disk /dev/sdb is already mounted
C. The lsblk command is not installed
D. You forgot to run the command as root or with sudo

Solution

  1. Step 1: Understand permission requirements

    Running fdisk on disks requires root privileges; without sudo or root, device access is denied.
  2. Step 2: Check other options

    Disk being mounted or formatted does not cause 'Permission denied' error; missing lsblk is unrelated.
  3. Final Answer:

    You forgot to run the command as root or with sudo -> Option D
  4. Quick Check:

    fdisk needs root access [OK]
Hint: Use sudo with fdisk to access disks [OK]
Common Mistakes:
  • Assuming mounted disk causes 'Permission denied'
  • Thinking formatting affects fdisk detection
  • Confusing fdisk errors with lsblk issues
5. You want to create a new partition on /dev/sdc using fdisk. After creating the partition, which command should you run to immediately see the updated partition layout in a tree view?
hard
A. lsblk /dev/sdc
B. fdisk -l /dev/sdc
C. mount /dev/sdc1 /mnt
D. df -h /dev/sdc

Solution

  1. Step 1: Identify command to show partition tree

    lsblk displays block devices and partitions in a clear tree format, perfect for checking new partitions.
  2. Step 2: Compare with other commands

    fdisk -l lists partitions but not in tree view; mount mounts partitions; df -h shows disk usage, not layout.
  3. Final Answer:

    lsblk /dev/sdc -> Option A
  4. Quick Check:

    lsblk shows partition tree [OK]
Hint: Use lsblk to view partitions visually [OK]
Common Mistakes:
  • Using fdisk -l expecting tree view
  • Trying to mount before checking partitions
  • Using df to see partition layout
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