LinkedIn SRE学院:Linux中级课程之存储介质完全指南

LinkedIn SRE学院:Linux中级课程之存储介质完全指南

school-of-sre linkedin/school-of-sre: 这是一个用于培训软件可靠性工程师(SRE)的在线课程。适合用于需要学习软件可靠性工程和运维技能的场景。特点:内容丰富,涵盖多种软件可靠性工程领域知识,具有实践案例和课程资料。 school-of-sre 项目地址: https://gitcode.com/gh_mirrors/sc/school-of-sre

引言:存储介质在Linux系统中的重要性

在当今数据驱动的时代,存储介质是任何计算系统的核心组件。作为SRE(站点可靠性工程师),深入理解Linux系统中的存储介质管理至关重要。本文将全面解析Linux环境下各种存储设备的管理技术,包括基础操作、文件系统管理、RAID配置以及LVM逻辑卷管理等高级主题。

一、存储设备基础操作

1.1 查看已挂载设备

在Linux中,所有存储设备都需要挂载到文件系统树中才能使用。使用mount命令可以查看当前系统中所有已挂载的存储设备:

$ mount
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
/dev/sda1 on / type ext4 (rw,relatime,errors=remount-ro)

输出格式解析:

  • 设备名:如/dev/sda1
  • 挂载点:如/(根目录)
  • 文件系统类型:如ext4
  • 挂载选项:如rw,relatime

1.2 创建文件系统

文件系统是操作系统用于明确存储、组织和检索数据的结构化方法。常见的文件系统类型包括:

| 文件系统 | 适用场景 | |---------|---------| | ext4 | Linux标准文件系统,支持日志功能 | | XFS | 高性能文件系统,适合大文件处理 | | NTFS | Windows系统常用,Linux可读写 | | FAT32 | 通用兼容格式,适合U盘等移动设备 |

创建ext4文件系统的命令示例:

$ sudo mkfs -t ext4 /dev/sdb1

重要警告:此操作会清除目标设备上的所有数据,请确保设备为空或数据已备份。

二、设备挂载与卸载

2.1 挂载设备

挂载是将存储设备连接到文件系统树的过程:

$ sudo mkdir /mnt/data
$ sudo mount -t ext4 /dev/sdb1 /mnt/data

2.2 卸载设备

安全卸载设备对于防止数据损坏至关重要:

$ sudo umount /mnt/data

常见问题:如果设备正在使用中(如有进程访问挂载点),卸载会失败。此时可使用lsof命令查找并终止相关进程。

三、自动化挂载配置

对于生产环境,通过/etc/fstab文件实现开机自动挂载是标准实践:

/dev/sdb1  /mnt/data  ext4  defaults  0  2

配置字段说明:

  1. 设备标识(UUID或设备路径)
  2. 挂载点
  3. 文件系统类型
  4. 挂载选项
  5. dump备份标志
  6. fsck检查顺序

修改后使用mount -a重新加载配置。

四、文件系统检查与修复

系统异常关机或硬件故障可能导致文件系统损坏。Linux提供了fsck工具进行检查和修复:

$ sudo fsck /dev/sdb1
$ sudo fsck -y /dev/sdb1  # 自动修复错误

fsck返回代码含义:

| 代码 | 含义 | |-----|------| | 0 | 无错误 | | 1 | 错误已修复 | | 2 | 需要重启系统 | | 4 | 未修复的错误 | | 8 | 操作错误 |

五、高级存储技术:RAID

5.1 RAID级别比较

| RAID级别 | 特点 | 最少磁盘数 | 容错能力 | 适用场景 | |---------|------|-----------|---------|---------| | RAID 0 | 条带化,高性能 | 2 | 无 | 临时数据/高性能需求 | | RAID 1 | 镜像,高可用 | 2 | 1块磁盘 | 关键系统盘 | | RAID 5 | 分布式奇偶校验 | 3 | 1块磁盘 | 平衡性能与安全性 | | RAID 6 | 双奇偶校验 | 4 | 2块磁盘 | 高可靠性需求 | | RAID 10 | 镜像+条带化 | 4 | 每组镜像1块 | 数据库等高IO应用 |

5.2 RAID监控命令

查看软件RAID状态:

$ cat /proc/mdstat

获取详细RAID信息:

$ sudo mdadm --detail /dev/md0

六、逻辑卷管理(LVM)

LVM提供了比传统分区更灵活的存储管理方式:

核心概念

  • PV (Physical Volume):物理磁盘或分区
  • VG (Volume Group):由多个PV组成的存储池
  • LV (Logical Volume):从VG中划分的逻辑卷

优势

  1. 动态调整卷大小
  2. 支持在线数据迁移
  3. 快照功能
  4. 条带化提升性能

基本操作示例:

# 创建物理卷
$ sudo pvcreate /dev/sdb1

# 创建卷组
$ sudo vgcreate my_vg /dev/sdb1

# 创建逻辑卷
$ sudo lvcreate -L 10G -n my_lv my_vg

# 扩展逻辑卷
$ sudo lvextend -L +5G /dev/my_vg/my_lv
$ sudo resize2fs /dev/my_vg/my_lv

结语

作为SRE工程师,掌握Linux存储管理是确保系统可靠性和性能的基础。从基础的文件系统操作到高级的RAID和LVM配置,这些技能将帮助您有效管理日益复杂的存储需求。建议在实际环境中多加练习,并始终牢记数据安全第一的原则,任何存储操作前都应确保有完整的备份方案。

school-of-sre linkedin/school-of-sre: 这是一个用于培训软件可靠性工程师(SRE)的在线课程。适合用于需要学习软件可靠性工程和运维技能的场景。特点:内容丰富,涵盖多种软件可靠性工程领域知识,具有实践案例和课程资料。 school-of-sre 项目地址: https://gitcode.com/gh_mirrors/sc/school-of-sre

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

乔吟皎Gilbert

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值