一. 安装
需要rlinux软件,这里以rlinux_en_10.exe为例
1.1. 解压并打开安装软件rlinux_en_10.exe ,弹出下面窗口点击 next。
1.2. 勾选 I accept ... 。 按next
1.3. 选择 I have read the warming , 按Next
1.4. 接下来几个界面分别点击Next --> Install --> Finish 完成安装。
二. 使用:
2.1. 打开R-Linux软件, 弹出窗口点 Yes
2.2 弹出窗口选择 Ext4 的磁盘,双击打开,只会有一个Ext4的磁盘,选择它就行,不同的电脑这个界面显示的盘符可能不一样,这是正常的
2.3 等待扫描完成
就可以看到里面的数据
以下是关于 ext4文件系统(Fourth Extended Filesystem) 的深度解析,涵盖设计原理、技术特性、操作实践及性能优化:
1. ext4概述
ext4是Linux系统的主流日志式文件系统,由ext3演进而来,具有以下核心特性:
- ✅ 大容量支持:最大卷大小达1EB(1,000,000TB),单个文件最大16TB
- ✅ 高性能设计:延迟分配(Delayed Allocation)、多块分配(Multiblock Allocation)
- ✅ 日志功能:保证数据一致性,支持
journal
、ordered
、writeback
三种日志模式 - ✅ 向后兼容性:可挂载ext3分区为ext4模式运行
2. ext4核心数据结构
(1)磁盘布局
Boot Block | Super Block | Group Descriptors | Block Bitmap | Inode Bitmap | Inode Table | Data Blocks
- Super Block: 记录全局信息(块大小、inode数量等)
- Inode: 每个文件/目录对应一个inode,存储元数据(权限、时间戳、数据块指针)
(2)关键改进
ext3特性 | ext4增强点 |
---|---|
固定大小的inode | 动态inode数量(可后期扩展) |
链表式块分配 | Extent连续块分配(减少碎片) |
32位时间戳 | 纳秒级时间戳(支持2038年后时间) |
3. ext4操作实践
(1)创建ext4文件系统
#格式化分区为ext4(默认参数)
mkfs.ext4 /dev/sdb1
#指定块大小和卷标
mkfs.ext4 -b4096 -L "mydata" /dev/sdb1
#启用加密功能(需内核支持)
mkfs.ext4 -O encrypt /dev/sdb1
运行
(2)挂载选项优化
#启用延迟分配和数据屏障保护
mount -o defaults,delalloc,barrier=1 /dev/sdb1 /mnt/data
#禁用访问时间更新提升性能
mount -o noatime,nodiratime /dev/sdb1 /mnt/data
#查看当前挂载参数
tune2fs -l /dev/sdb1 | grep "mount options"
运行
(3)调整文件系统参数
#调整保留块比例(默认5%→1%)
tune2fs -m1 /dev/sdb1
#启用大文件支持(>2GB)
tune2fs -O large_file /dev/sdb1
#强制文件系统检查(下次启动时)
tune2fs -c1 /dev/sdb1
运行
4. ext4性能优化策略
(1)IO调度器选择
#查看当前调度器
cat /sys/block/sdb/queue/scheduler
#设置为deadline调度器(适合SSD)
echo deadline > /sys/block/sdb/queue/scheduler
#推荐组合:
# HDD: deadline + barrier=1
# SSD: noop + discard (TRIM支持)
运行
(2)日志模式选择
模式 | 数据安全性 | 性能 |
---|---|---|
journal | 最高 | 最低(记录所有元数据和数据) |
ordered | 中等 | 中等(默认模式,仅记录元数据) |
writeback | 最低 | 最高(不保证数据写入顺序) |
设置方法:
mount -o data=writeback /dev/sdb1 /mnt/data
运行
(3)SSD专用优化
#启用TRIM支持
fstrim /mnt/data
#禁用日志提升寿命(风险自担)
mkfs.ext4 -O ^has_journal /dev/sdb1
#对齐分区减少写入放大
parted /dev/sdb align-check optimal
运行
5.故障处理与恢复
(1)强制检查修复
#卸载后检查(非破坏性)
e2fsck -f /dev/sdb1
#修复超级块备份(当主超级块损坏时)
e2fsck -b32768 /dev/sdb1 #使用备份超级块
运行
(2)恢复删除文件
#安装extundelete工具
sudo apt install extundelete
#恢复指定路径文件
extundelete --restore-file /path/to/file /dev/sdb1
#恢复整个分区文件到指定目录
extundelete --restore-all --output-dir /recovery /dev/sdb1
运行
(3)日志恢复案例
当系统异常断电导致文件损坏时:
#查看日志内容(需debugfs工具)
debugfs -R "logdump" /dev/sdb1
#回滚到最近一致状态
fsck.ext4 -p /dev/sdb1
运行
6.ext4 vs其他文件系统对比
特性 | ext4 | XFS | Btrfs |
---|---|---|---|
最大文件大小 | 16TB | 8EB | 16EB |
碎片化 | 中度 | 低 | 自愈 |
写时复制 | 不支持 | 不支持 | 支持 |
压缩 | 需手动 | 支持 | 原生支持 |
快照功能 | 无 | 无 | 内置 |
作者:帅得不敢出门