Disk Management
Disk Management
The fdisk utility is used to create, delete, and manage partitions on a disk.
Steps:
bash
Copy code
lsblk
Output:
bash
Copy code
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 100G 0 disk
├─sda1 8:1 0 20G 0 part /
└─sda2 8:2 0 80G 0 part /data
Explanation:
bash
Copy code
fdisk /dev/sdb
oCommand Breakdown:
/dev/sdb: The disk to partition.
3. Create a New Partition:
o Inside fdisk, enter these commands interactively:
Press n to create a new partition.
Choose a partition type: primary or logical.
Specify the partition number (default is usually fine).
Set the first and last sector (or accept defaults for the whole disk).
o Example Output:
sql
Copy code
Command (m for help): n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
Partition number (1-4, default 1): 1
First sector (2048-209715199, default 2048):
Last sector, +sectors or +size{K,M,G,T,P} (2048-209715199, default
209715199): +20G
4. Write Changes:
o Press w to save changes and exit fdisk.
o Important: If you want to cancel, use q.
5. Refresh the Partition Table:
bash
Copy code
partprobe
Explanation:
bash
Copy code
lsblk
2. Create a Filesystem
Steps:
1. Create a Filesystem:
bash
Copy code
mkfs.ext4 /dev/sdb1
Command Breakdown:
o mkfs.ext4:
Creates an ext4 filesystem.
o /dev/sdb1:
The new partition.
2. Label the Partition (Optional):
bash
Copy code
e2label /dev/sdb1 data_partition
bash
Copy code
mkdir /mnt/data
bash
Copy code
mount /dev/sdb1 /mnt/data
Output:
bash
Copy code
Filesystem Size Used Avail Use% Mounted on
/dev/sdb1 20G 0G 20G 0% /mnt/data
bash
Copy code
echo '/dev/sdb1 /mnt/data ext4 defaults 0 0' >> /etc/fstab
bash
Copy code
pvcreate /dev/sdb1
Command Breakdown:
bash
Copy code
vgcreate my_vg /dev/sdb1
Command Breakdown:
bash
Copy code
lvcreate -L 10G -n my_lv my_vg
Command Breakdown:
o -L 10G: Specifies the size of the logical volume (10 GB).
o -n my_lv: Names the logical volume my_lv.
o my_vg: The volume group name.
4. Create a Filesystem on the LV:
bash
Copy code
mkfs.xfs /dev/my_vg/my_lv
bash
Copy code
mkdir /mnt/lvm_data
mount /dev/my_vg/my_lv /mnt/lvm_data
bash
Copy code
df -h
4. Extend an LVM
bash
Copy code
lvextend -L +5G /dev/my_vg/my_lv
Command Breakdown:
bash
Copy code
xfs_growfs /mnt/lvm_data
For ext4:
bash
Copy code
resize2fs /dev/my_vg/my_lv
bash
Copy code
df -h
Practice Questions