掌握Linux磁盘管理:理解fdisk, lsblk, mount及resize2fs命令
作为Linux系统运维人员,日常工作中经常需要处理磁盘管理和文件系统调整的任务。这些任务包括但不限于查看磁盘分区、识别挂载点、以及调整文件系统大小等。今天,我们将通过几个常用的命令——fdisk
、lsblk
、mount
,以及一个需要注意的命令resize2fs
——来探讨如何在Linux环境下进行这些操作。
1. 使用fdisk -l
查看磁盘分区
fdisk -l
是Linux下查看磁盘分区表的经典命令。它列出了系统上所有已识别磁盘的分区信息,包括磁盘的大小、分区类型(如主分区、扩展分区、逻辑分区)、分区大小以及分区的起始和结束扇区等。这个命令对于了解磁盘的当前布局至关重要,尤其是在进行分区调整或扩容时。
bash复制代码
sudo fdisk -l
执行此命令后,你将看到类似下面的输出(输出内容会根据你的系统配置有所不同):
Disk /dev/sda: 256GB, 256060514880 bytes, 500118192 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: ...
Device Start End Sectors Size Type
/dev/sda1 2048 1050623 1048576 512M EFI System
/dev/sda2 1050624 500117503 499066880 237.9G Linux filesystem
...
2. 使用lsblk
列出块设备信息
lsblk
命令以树状图的形式展示所有可用的存储设备及其分区,包括它们的挂载点(如果已挂载)和文件系统类型。这个命令的输出比fdisk -l
更加直观,是快速查看系统存储配置的好帮手。
bash复制代码
lsblk
执行后,你将看到类似下面的输出:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 256G 0 disk
├─sda1 8:1 0 512M 0 part /boot/efi
└─sda2 8:2 0 237.9G 0 part /
sdb 8:16 0 1TB 0 disk
└─sdb1 8:17 0 1TB 0 part
3. 检查/dev/sdb
的挂载状态
有时,我们需要知道某个特定磁盘或分区是否已经被挂载,以及它挂载到了哪个目录。这时,我们可以使用mount
命令结合grep
来过滤出我们关心的信息。
bash复制代码
mount | grep sdb
如果/dev/sdb
或其某个分区已被挂载,该命令将显示相关的挂载信息。如果没有输出,则表示/dev/sdb
或其分区当前未挂载。
4. 注意事项:resize2fs
的正确使用
resize2fs
命令用于调整ext2/ext3/ext4文件系统的大小。然而,正如之前提到的,直接使用resize2fs /dev/sdb
通常是不正确的,因为/dev/sdb
指的是整个磁盘设备,而不是一个具体的分区。
正确的做法是指定一个具体的分区,如/dev/sdb1
,来执行文件系统大小的调整。但在调整文件系统大小之前,请确保已经使用如fdisk
、parted
或gparted
等工具调整了分区的大小。
bash复制代码
sudo resize2fs /dev/sdb1
注意:并非所有文件系统都支持在线调整大小,而ext4是支持这一特性的文件系统之一。在执行此操作之前,请确保已经备份了重要数据,以防万一。
总结
通过fdisk -l
、lsblk
、mount | grep sdb
等命令,Linux系统运维人员可以轻松地查看磁盘分区、识别挂载点,以及进行基本的磁盘管理。而resize2fs
命令(在正确使用的前提下)则为文件系统大小的调整提供了强大的支持。然而,进行这些操作时务必谨慎,确保数据的安全和系统的稳定。
本文来自博客园,作者:dashery,转载请注明原文链接:https://www.cnblogs.com/ydswin/p/18401613