寿命与写入
约 546 字大约 2 分钟
2026-01-25
eMMC 是一颗带控制器的闪存芯片(类似“手机存储”),不是机械硬盘。
eMMC 的寿命主要取决于:总写入量(写得越多,磨损越快)。
eMMC 内部有 磨损均衡(wear leveling):会把写入分散到整颗芯片的块池里,避免局部先坏。
分区/目录不等于独立寿命,写 /var/log 1GB 和写 /home 1GB,本质上都是在消耗 整颗 eMMC 的写入寿命(只是写入路径不同)。
机器看到的:物理盘:/dev/mmcblk1(整颗 eMMC)
分区:mmcblk1p1(/boot)、mmcblk1p2(/)
/var/log 通常只是 / 分区里的一个目录(不是单独分区)
分区只是“逻辑切分空间”,不代表 eMMC 内部有“互不干扰的寿命区”。
eMMC 通常通过 JEDEC 字段给出“寿命档位”和“预警”。
Life Time(磨损档位)
当前:life_time == 0x01 0x01
含义(粗略区间,不是精确百分比):
0x01:已用 0–10%0x02:10–20%0x03:20–30%- …
0x0A:90–100%0x0B:可能已超规格寿命(高风险)0x00:不支持/未知
两位通常对应 Type A / Type B 两种口径的寿命估算(厂商实现略有差别,但都能看作磨损桶位)。
Pre EOL(预警)
当前:pre_eol_info == 0x01
含义:
0x01:正常(不接近寿命末期)0x02:预警(接近寿命末期)0x03:紧急(寿命末期,建议尽快迁移/更换)
zram = 用内存模拟的磁盘(压缩的),断电即消失
zram = 用 RAM 做一个压缩块设备(像“内存盘”),写入发生在内存里,不会写到 eMMC,重启后内容消失(正常)
当前:
zram0:SWAPzram1:挂载到/var/log
这意味着:
- swap 不会频繁写 eMMC
- 系统日志不再频繁写 eMMC
这两项通常是 SBC 上最常见的“磨盘大户”,现在已经躲开了。
常用检查命令清单
看磁盘/分区/挂载
lsblk -o NAME,SIZE,TYPE,MOUNTPOINT,MODEL看 eMMC 寿命(已支持 sysfs 读取)
cat /sys/block/mmcblk1/device/life_time
cat /sys/block/mmcblk1/device/pre_eol_info看 zram 是否在用
lsblk | grep -i zram
mount | grep -E "/var/log|zram"
swapon --show更完整的 eMMC 信息(可选,需 mmc-utils)
apt update
apt install -y mmc-utils
mmc extcsd read /dev/mmcblk1 | egrep -i "PRE_EOL_INFO|DEVICE_LIFE_TIME_EST_TYP_A|DEVICE_LIFE_TIME_EST_TYP_B"