一、查看磁盘与分区信息
在管理磁盘前,需先了解当前系统中的磁盘及分区状态,常用命令如下:
lsblk:以树形结构列出所有块设备(磁盘、分区、挂载点),直观展示设备层级关系,无需root权限。fdisk -l:详细显示磁盘的分区表信息(包括分区类型、大小、起始/结束扇区),需root权限。parted -l:兼容MBR(主引导记录)和GPT(GUID分区表)格式,可查看磁盘的几何信息(如柱面、磁头数)及分区详情。二、创建分区
根据磁盘容量选择合适的分区工具:
fdisk(适用于MBR磁盘,≤2TB):
sudo fdisk /dev/sdX(sdX为目标磁盘,如sdb)进入交互模式。n创建新分区,选择分区类型(p主分区/e扩展分区,MBR磁盘最多4个主分区),设置分区号、起始扇区(默认对齐)和结束扇区(或用+5G指定大小)。w保存分区表并退出(若未保存,输入q放弃修改)。parted(支持GPT磁盘,>2TB):
sudo parted /dev/sdX进入交互模式。mklabel gpt初始化磁盘为GPT格式(此操作会清除磁盘所有数据!)。mkpart primary ext4 1GB 5GB创建主分区(类型为primary,文件系统标记为ext4,起始位置1GB,结束位置5GB)。quit退出。三、格式化分区
分区创建后,需格式化为文件系统才能使用,常用命令:
mkfs.ext4 /dev/sdXY:将分区格式化为ext4(CentOS传统稳定选择,兼容性好,支持文件系统缩小/扩展,但不支持在线扩大)。mkfs.xfs /dev/sdXY:将分区格式化为xfs(CentOS 7及以上默认文件系统,针对大文件、高并发优化,支持在线扩大,但不支持缩小)。mkswap /dev/sdXY:将分区格式化为交换分区(用于扩展虚拟内存,格式化后需用swapon /dev/sdXY启用)。四、挂载分区
格式化后,需将分区挂载到目录才能访问:
sudo mkdir /mnt/data)。sudo mount /dev/sdXY /mnt/data(将分区挂载到/mnt/data)。df -h查看挂载情况,或ls /mnt/data查看分区内容。/etc/fstab文件(sudo vi /etc/fstab),添加一行:UUID=1234-5678-90AB /mnt/data ext4 defaults 0 0(用sudo blkid /dev/sdXY获取分区UUID,替换上述命令中的UUID和路径)。五、LVM(逻辑卷管理)
LVM提供灵活的磁盘空间管理,适合需要动态调整分区大小的场景,步骤如下:
sudo pvcreate /dev/sdXY。sudo vgcreate vg_name /dev/sdXY(vg_name为卷组名称,如vg_data)。sudo lvcreate -L 10G -n lv_name vg_name(-L指定大小,-n指定逻辑卷名称,如lv_root)。sudo mkfs.ext4 /dev/vg_name/lv_name)后挂载即可。sudo lvextend -L +5G /dev/vg_name/lv_name(增加5G空间)。sudo resize2fs /dev/vg_name/lv_name(ext4)或sudo xfs_growfs /mnt/data(xfs,需已挂载)。六、监控磁盘使用
定期监控磁盘空间,避免空间耗尽导致系统故障:
df -h:显示文件系统的磁盘空间使用情况(总大小、已用、可用、挂载点),-h选项以人类可读格式(GB/MB)显示。du -sh /path/to/dir:统计目录或文件的磁盘使用情况(-s显示总计,-h人类可读),如du -sh /home查看/home目录总大小。ncdu:基于文本的磁盘使用分析工具,递归显示目录大小,快速定位大文件(需安装:sudo yum install ncdu,运行:ncdu /path/to/dir)。iotop:实时监控磁盘I/O使用情况,显示进程的读写速度(需安装:sudo yum install iotop,运行:sudo iotop)。iostat -x 1:显示CPU和I/O设备的扩展统计信息(如磁盘利用率、I/O等待时间),-x选项提供详细数据,1表示每秒更新一次(需安装sysstat包)。注意事项
parted工具创建GPT分区表,避免MBR限制。