Linux 会更新块设备的大小吗?

Who*_*_me 3 size block-device lsblk

鉴于 emmc 磨损监控,我想知道正在运行的 Linux 操作系统中显示的大小。emmc 芯片有一个内部管理器,用于跟踪所有不同字节寄存器的使用强度。理论上,当达到实时限制时,SSD、USB 棒或 emmc 芯片等闪存设备的容量应该会缩小。

 $ lsblk -b
Run Code Online (Sandbox Code Playgroud)

.. 返回块大小(以字节为单位),如下所示:

lsblk-b

如果整个 emmc 映像的容量和大小下降,这个数字会自动更新吗?

是否有其他工具可以实现实际可用块大小的实时表示?

编辑:在 @Marcus 和 @Artem 发表评论之后

emmc 驱动程序具有此虚拟文件系统条目,其中已实现“生命周期结束”指示。如果我没记错的话,0x02 代表容量大小损失 80%,0x03 代表容量大小损失 90%。意识到您的 emmc 已经消失已经有点晚了,所以我正在寻找一种方法来在早期阶段指示这个重要信息。

看着 :cat /sys/class/block/mmcblk1/device/pre_eol_info

Ned*_*d64 10

不会。具有内部磨损均衡功能的设备(例如 eMMC 和某些闪存驱动器)一开始不会宣传其全部容量。

因此,设备可能有 1536 个块,但仅向系统显示 1024 个块。操作系统可以访问的 1024 个块永远不能保证是相同的块,它们可以重新分配等等。

因此,向操作系统显示的大小不能用于确定当前的寿命终止状态。

  • 这与此完全无关吗?不能信任什么? (4认同)