我有 3 台机器,磁盘(实际上是 SSD)都处于 RAID1 状态,故意使用不同的品牌,以防因磨损而同时丢失。它们功能齐全。
它们两个磁盘上的 Total_LBAs_Written 数量应该大致相同。但数字却大不相同,例如,smartctl 在三星 SSD 850 EVO 2TB 上报告 2596016156,但在配套的 WDC WDS200T2B0A-00SM50 上报告 1237:
241 Total_LBAs_Written 0x0032 099 099 000 Old_age Always - 2596016156
241 Total_LBAs_Written 0x0030 253 253 --- Old_age Offline - 1237
我最好的猜测是,第一个报告以 512 字节为块,第二个报告以吉比特这就解释了为什么比率为 2 21(较小值相差一个单位)。
Total_LBAs_Written 条目的单位是否已标准化?是否有系统的方法来确定它?如果没有,那么使用什么单位?
更新,2023 年 10 月(4 年后):该配置仍在使用(并且运行良好)。现在内容如下:
241 Total_LBAs_Written 0x0032 099 099 000 Old_age Always - 219294945066
241 Total_LBAs_Written 0x0030 253 253 --- Old_age Offline - 104567
两个驱动器的值之间的比率为 2 21,精确度为 0.001%,或较小值的 1 个单位。
答案1
我认为你的猜测是正确的。我有一个 HooDisk SSD 128G,并进行了以下测试:
- 读取属性:289
- 写入1G数据
- 读取属性:290
- 写入1G数据
- 读取属性:291
命令:
$ smartctl -a /dev/sda |awk '/Total_LBAs_Written/ {print $10}'
289
$ dd if=/dev/zero of=/home/testimage bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 3.54747 s, 303 MB/s
$ smartctl -a /dev/sda |awk '/Total_LBAs_Written/ {print $10}'
290
$ dd if=/dev/zero of=/home/testimage bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 3.42046 s, 314 MB/s
$ smartctl -a /dev/sda |awk '/Total_LBAs_Written/ {print $10}'
291
$
根据维基百科:https://en.wikipedia.org/wiki/SMART#Known_ATA_S.MART_attributes 它没有提到这个属性的单位,所以我猜它不是很好标准化,你最好具体测试设备以确定它的含义。
答案2
241 Total_LBAs_Written
以扇区大小为单位。
smartctl /dev/sda --all |grep "Sector Size"
通常提供 512 字节。(使用 /dev/sda 驱动器)。
241 Total_LBAs_Written 0x0032 099 099 000 Old_age Always - 2596016156
如果您的扇区大小为 512,则 TBW 为 1.33 TB。
如何将 SMART 属性 241-Total_LBAs_Written 转换为 TBW MB-GB-TB-PB < Blog-D without Nonsense
LBA(逻辑块寻址)
尽管至少某些 WD 硬盘报告 Total_LBAs_Written 以 GB 为单位的事实已报告到他们的论坛,但尚未得到回复: 如何读取 1TB SSD 上写入的总字节数
0x01 0x018 6 255445147 — 已写入的逻辑扇区数(查看 > smartctl 顶部的扇区大小)
现在这与 121GB(每个扇区 512 字节)相同,令人惊讶的是(巧合?)我在 LBA_Written 241 Total_LBAs_Written 中看到了相同的值 ----CK 253 253 — - 121 这个值应该是 512 字节扇区大小,但不幸的是,这反映了写入的 GB(不符合标准?恕我直言)