找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

211

积分

0

好友

23

主题
发表于 8 小时前 | 查看: 2| 回复: 0

Linux系统中,磁盘管理是系统管理员必须掌握的核心技能。正确进行磁盘分区、格式化和挂载操作,能够确保高效利用存储空间并安全访问数据。

与Windows系统的盘符管理不同,Linux的磁盘管理更为灵活。所有设备都存储在/dev目录下,如磁盘、键盘等。要使用磁盘,需经过分区、格式化和挂载步骤,将其关联到指定目录。

本文基于Ubuntu 23.10系统,其他Linux发行版操作类似。

磁盘分区基础

磁盘分区是将物理磁盘划分为逻辑单元的过程。新硬盘通常为未分区状态,通过分区工具可将其划分为多个独立区域。

Linux常用分区工具包括fdisk、gdisk等。操作时需选择目标磁盘(如/dev/sda),设置分区大小和类型。每个分区会获得唯一设备名(如/dev/sda1、/dev/sdb2),便于在文件系统中管理。

分区前需注意:

  • 2TB以下磁盘可使用MBR或GPT分区
  • 超过2TB必须使用GPT分区
  • MBR分区使用fdisk工具
  • GPT分区使用gdisk工具

分区优势包括:

  1. 空间管理:按数据类型分类存储
  2. 数据保护:单分区故障不影响其他数据
  3. 多系统支持:独立分区安装不同操作系统

fdisk分区工具详解

适用于2TB以下磁盘的MBR分区操作:

安装与基础命令

# Ubuntu系统
sudo apt-get -y install fdisk
# CentOS系统
sudo yum -y install fdisk

# 查看帮助
fdisk -help
# 列出所有磁盘
fdisk -l
# 查看特定磁盘
fdisk -l /dev/sdb

交互式操作命令

进入磁盘设备后支持以下操作:

  • d:删除分区
  • F:显示未分区空间
  • l:列出分区类型
  • n:创建新分区
  • p:显示分区表
  • t:修改分区类型
  • w:保存并退出
  • q:退出不保存

实操示例

示例1:创建基础分区

fdisk /dev/sdc
命令提示下输入n创建分区
选择主分区(p)
设置起始扇区(默认2048)
指定大小(+2G表示2GB空间)

示例2:分区管理

# 删除分区
d
选择分区号

# 修改分区类型
t
选择分区
输入类型代码(05为FAT12)

# 查看剩余空间
F

示例3:查看分区信息

p

显示详细信息包括分区表类型、扇区大小和各分区参数。

注意事项:

  • 操作前务必备份重要数据
  • 确认设备路径准确
  • 2TB以上磁盘勿使用fdisk

gdisk分区工具

专用于GPT分区,支持大容量磁盘:

安装与使用

# 安装
sudo apt-get -y install gdisk

# 进入磁盘
gdisk /dev/sdf

操作命令

  • n:创建分区
  • d:删除分区
  • p:显示分区表
  • w:保存退出
  • o:创建新GPT分区表

实操示例

创建分区流程:

gdisk /dev/sdf
输入n创建分区
设置分区编号(1-128)
指定起始扇区(默认2048)
设置容量(+1G表示1GB)
选择文件系统类型(8300为Linux)

特殊说明:

  • 结束扇区勿使用默认值(会占满全部空间)
  • Linux常用类型:8300(普通文件系统)、8200(交换分区)
  • 可通过L命令查看所有类型代码

磁盘状态检查

lsblk命令

列出所有块设备信息:

lsblk [-选项]
-d 仅显示磁盘
-f 显示文件系统
-p 显示完整路径

输出说明:

  • NAME:设备名
  • SIZE:容量
  • TYPE:设备类型
  • MOUNTPOINT:挂载点

blkid命令

显示设备UUID和文件系统类型:

blkid /dev/sda1

parted命令

查看分区表类型:

parted /dev/sdb print

文件系统创建

格式化是为分区创建文件系统的过程,会清空现有数据并建立新的数据组织结构。

支持的文件系统

查看可用类型:

ls /sbin/mkfs.*

常见系统:ext2/3/4、xfs、ntfs、vfat等

mkfs命令

通用文件系统创建命令:

# 创建ext4系统
mkfs.ext4 /dev/sdb1

# 带参数创建
mkfs.ext4 -b 4096 -L data /dev/sdb1

参数说明:

  • -b:块大小(1k/2k/4k)
  • -L:卷标名称
  • -m:保留空间百分比

mke2fs命令

ext系列专用工具:

mke2fs -j -b 2048 -m 5 /dev/sdb2

默认创建ext2系统,-j参数可转换为ext3。

文件系统管理

tune2fs命令

调整文件系统参数:

# 查看详细信息
tune2fs -l /dev/sdb1

# 设置检查间隔
tune2fs -i 10d /dev/sdb1

# 转换文件系统
tune2fs -j /dev/sdb1

dumpe2fs命令

显示ext系列文件系统详细信息:

dumpe2fs /dev/sda2

输出包含超级块信息、块组数据等核心参数。

设备挂载操作

挂载是将存储设备关联到文件系统目录的过程。

挂载要点

  • 挂载点应为空目录
  • 避免重复挂载
  • 挂载后原目录内容暂时隐藏

mount命令详解

# 基础挂载
mount /dev/sdb1 /mnt/data

# 指定参数挂载
mount -t ext4 -o ro /dev/sdb1 /mnt/backup

# 使用标签挂载
mount -L DATA /mnt/storage

# 使用UUID挂载
mount -U xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx /mnt/disk

常用选项:

  • -t:文件系统类型
  • -o:挂载参数(rw/ro,noatime,sync等)
  • -L:按卷标挂载
  • -U:按UUID挂载

卸载操作

# 通过设备卸载
umount /dev/sdb1

# 通过挂载点卸载
umount /mnt/data

# 强制卸载
umount -f /mnt/data

注意事项:

  • 卸载时确保无进程使用该设备
  • 使用fuser命令查看占用进程

自动挂载配置

通过/etc/fstab文件实现开机自动挂载:

配置文件格式

设备路径   挂载点   文件系统   参数   dump fsck

配置示例

/dev/sdb1   /mnt/data   ext4   defaults   0   0
LABEL=BACKUP   /mnt/backup   ext3   auto,rw   0   0
UUID=xxxx   /mnt/disk   xfs   noauto   0   0

字段说明:

  • 设备:设备路径、LABEL或UUID
  • 挂载点:目标目录
  • 文件系统:ext4/xfs/ntfs等
  • 参数:defaults包含常用选项
  • dump:备份标志(通常为0)
  • fsck:文件系统检查顺序

特殊设备挂载

ISO镜像挂载:

mount -o loop /path/to/image.iso /mnt/iso

Windows共享挂载:

mount -t cifs -o username=user,password=pass //192.168.1.100/share /mnt/winshare

最佳实践建议

  1. 操作前始终备份重要数据
  2. 使用blkid确认设备标识
  3. 生产环境优先使用UUID挂载
  4. 定期检查文件系统健康状态
  5. 合理规划分区大小和类型

通过系统练习这些命令和操作,能够有效管理Linux系统存储资源,确保数据安全性和系统稳定性。

您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区(YunPan.Plus) ( 苏ICP备2022046150号-2 )

GMT+8, 2025-12-1 14:51 , Processed in 1.249211 second(s), 39 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2025 CloudStack.

快速回复 返回顶部 返回列表