Linux笔记之磁盘与文件系统管理
磁盘与文件系统是Linux操作系统的重要组成部分,其管理包括挂载与卸载、磁盘分区、检查与修复、逻辑卷管理(LVM)以及RAID配置。本章将详细讲解这些内容,结合实际命令与输出结果。
一、文件系统挂载与卸载
挂载是将存储设备(如硬盘分区、光盘、U盘)与Linux系统的目录结构关联起来的操作。卸载则是解除这种关联。
1、挂载文件系统
基本命令
-
挂载设备到指定目录:
sudo mount <设备> <挂载点>
-
查看挂载情况:
mount df -h
实际操作
-
挂载
/dev/sdb1
到/mnt
:sudo mount /dev/sdb1 /mnt
-
查看挂载:
df -h | grep /mnt
输出结果示例:
/dev/sdb1 20G 5G 15G 25% /mnt
2、卸载文件系统
基本命令
- 卸载挂载点:
sudo umount <挂载点或设备>
实际操作
-
卸载
/mnt
:sudo umount /mnt
-
验证卸载成功:
df -h | grep /mnt
输出结果:无任何信息输出。
二、磁盘工具
1、fdisk
命令
fdisk
是传统的磁盘分区工具,用于管理MBR分区表。
基本命令
-
查看磁盘信息:
sudo fdisk -l
-
进入分区菜单:
sudo fdisk /dev/sdb
实际操作
-
添加分区:
- 输入
n
添加新分区; - 输入
p
选择主分区; - 设置起始扇区与结束扇区;
- 输入
w
保存并退出。
- 输入
-
查看分区:
sudo fdisk -l /dev/sdb
输出结果示例:
Disk /dev/sdb: 20 GiB, 21474836480 bytes, 41943040 sectors Device Boot Start End Sectors Size Id Type /dev/sdb1 2048 41943039 41941007 20G 83 Linux
2、parted
命令
parted
支持GPT分区表,适合处理大磁盘。
基本命令
-
启动
parted
交互模式:sudo parted /dev/sdb
-
创建分区表:
mklabel gpt
-
创建分区:
mkpart primary ext4 0% 100%
-
查看分区:
print
3、lsblk
命令
lsblk
显示磁盘及其挂载信息。
命令示例
- 查看所有磁盘和分区:
输出结果示例:lsblk
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 40G 0 part /home └─sda3 8:3 0 40G 0 part /data
三、磁盘检查与修复
1、fsck
命令
fsck
用于检查和修复文件系统错误。
基本命令
-
检查文件系统:
sudo fsck /dev/sdb1
-
强制修复:
sudo fsck -y /dev/sdb1
实际操作
- 检查并修复
/dev/sdb1
:
输出结果示例:sudo fsck /dev/sdb1
Pass 1: Checking inodes, blocks, and sizes Pass 2: Checking directory structure Pass 3: Checking directory connectivity /dev/sdb1: clean, 1024/5242880 files, 131072/20971520 blocks
四、逻辑卷管理(LVM)
1、LVM概述
逻辑卷管理(LVM)提供动态的磁盘管理能力,支持扩展、缩减和快照功能。
LVM的基本组成
- 物理卷(PV):实际的磁盘或分区。
- 卷组(VG):由一个或多个物理卷组成的存储池。
- 逻辑卷(LV):从卷组中分配的可用存储空间。
2、创建LVM
实际操作
-
创建物理卷:
sudo pvcreate /dev/sdb1
-
创建卷组:
sudo vgcreate my_vg /dev/sdb1
-
创建逻辑卷:
sudo lvcreate -L 10G -n my_lv my_vg
-
格式化逻辑卷:
sudo mkfs.ext4 /dev/my_vg/my_lv
-
挂载逻辑卷:
sudo mount /dev/my_vg/my_lv /mnt
查看LVM状态
-
查看物理卷:
sudo pvdisplay
-
查看卷组:
sudo vgdisplay
-
查看逻辑卷:
sudo lvdisplay
五、RAID配置
RAID(Redundant Array of Independent Disks)是通过组合多块磁盘提供数据冗余和性能提升的技术。
1、RAID级别
- RAID 0:条带化,提升性能,无冗余。
- RAID 1:镜像,提供冗余。
- RAID 5:分布式奇偶校验,支持冗余和性能提升。
- RAID 10:RAID 1+0,性能与冗余兼顾。
2、配置RAID
实际操作
-
安装
mdadm
:sudo apt-get install mdadm
-
创建RAID 1:
sudo mdadm --create --verbose /dev/md0 --level=1 --raid-devices=2 /dev/sdb1 /dev/sdc1
-
查看RAID状态:
cat /proc/mdstat
六、小结
通过本章学习,你已经掌握以下内容:
- 文件系统挂载与卸载:使用
mount
、umount
管理挂载点。 - 磁盘工具:使用
fdisk
、parted
分区,lsblk
查看磁盘信息。 - 磁盘检查与修复:使用
fsck
修复文件系统。 - LVM管理:创建、扩展、缩减逻辑卷。
- RAID配置:使用
mdadm
构建RAID。
掌握磁盘与文件系统管理是保障Linux系统运行和数据安全的关键技能。