LMLPHP后院

有关硬盘的检测院内

maybe yes 发表于 2022-05-28 16:45

买了盘,还是要检测的,这个必须要做?但是对于小白来讲,我觉得 99.99% 都是不会的,所以,交流有多重要啊!

说实话,我以前买了很多 U 盘,从来没有检测过,看来以后还是得检测一下。但是真的在销量超级高的淘宝店买到过假货。

我觉得硬盘假冒的概率应该会很少,硬盘有品牌,像这些大品牌被冒充的难度会大一些,相反,U 盘被冒充就容易多了,因为它小啊。

装了 smartmontools,用了近 100M 空间,然后如下,我没有硬性的打开 SMART。我不知道打开会不会影响硬盘。所以还是没有打开。检测如下:

pi@raspberrypi:~ $ sudo smartctl -H /dev/sda
smartctl 6.6 2017-11-05 r4594 [aarch64-linux-5.4.51-v8+] (local build)
Copyright (C) 2002-17, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF READ SMART DATA SECTION ===
SMART Status not supported: Incomplete response, ATA output registers missing
SMART overall-health self-assessment test result: PASSED
Warning: This result is based on an Attribute check.

pi@raspberrypi:~ $ sudo smartctl -H /dev/sda1
smartctl 6.6 2017-11-05 r4594 [aarch64-linux-5.4.51-v8+] (local build)
Copyright (C) 2002-17, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF READ SMART DATA SECTION ===
SMART Health Status: OK

不知道这个 S.M.A.R.T. 的检测原理是什么,感觉是很快的,不是很懂。

我觉得检测,就应该是很漫长的,尤其是硬盘空间很大的时候。于是使用自带的工具 badblocks 来做个检测,我觉的这个检测靠谱很多,等了好几个小时,依然在执行中,这些命令设计的特别不友好,不提前告知下可能的时间。

pi@raspberrypi:~/bak $ sudo badblocks -v /dev/sda > badsectors.txt
Checking blocks 0 to 3907018583
Checking for bad blocks (read-only test):

清晰的记得,刚买来,初始化格式化之后,它特别的烫,人的手指摸它不能坚持 5s 钟的样子,用红外测温测过之后发现,最高 61 度。在网上一查,硬盘温度一般在 40-50 度之间。当时觉得挺奇怪的,为什么这么高的温度。因为我的手同时放在旧硬盘和新硬盘之间,发现先前的硬盘温度并不高,就是温温的感觉,新硬盘放了一晚上之后,去摸它,也是温温的,我感觉是休眠的,可是一访问,温度也没有高起来。后来发现,可能是快速格式化之后,要慢慢的初始化区块,这样检测每个区块的时候会发热,经过好几个小时后,这个初始化的工作完成,就不再那么热了,现在我又进行了 bad block 检测,它的温度回到了刚开始的时候。以上,全是猜测,现在网上很难找到可用的信息!其实也就是说,现在的操作系统在存储前,是一定会自动的检测区块的健康度的,不然写入后丢失数据,岂不完蛋了!

pi@raspberrypi:~/bak $ badblocks -v /dev/sda > badsectors.txt
badblocks: 权限不够 while trying to determine device size
pi@raspberrypi:~/bak $ sudo badblocks -v /dev/sda > badsectors.txt
Checking blocks 0 to 3907018583
Checking for bad blocks (read-only test):  

^C

Interrupted at block 3039784640
pi@raspberrypi:~/bak $ cat badsectors.txt 
pi@raspberrypi:~/bak $ sudo badblocks -v -s /dev/sda > badsectors.txt
Checking blocks 0 to 3907018583
Checking for bad blocks (read-only test): ^C0.03% done, 0:06 elapsed. (0/0/0 errors)

Interrupted at block 1097984
pi@raspberrypi:~/bak $ sudo badblocks -v -s /dev/sda > badsectors.txt
Checking blocks 0 to 3907018583
Checking for bad blocks (read-only test): 3039784640  0.04% done, 0:09 elapsed. (0/0/0 errors)
^C0.07% done, 0:16 elapsed. (0/0/0 errors)

Interrupted at block 3041280
pi@raspberrypi:~/bak $ badblocks -v /dev/sda > badsectors.txt
badblocks: 权限不够 while trying to determine device size
pi@raspberrypi:~/bak $ sudo badblocks -v /dev/sda > badsectors.txt
Checking blocks 0 to 3907018583
Checking for bad blocks (read-only test): 3039784640
^C

Interrupted at block 5893184
pi@raspberrypi:~/bak $ sudo badblocks -s -v /dev/sda > badsectors.txt
Checking blocks 0 to 3907018583
Checking for bad blocks (read-only test): ^C0.01% done, 0:02 elapsed. (0/0/0 errors)

Interrupted at block 378368
pi@raspberrypi:~/bak $ sudo badblocks -s -v /dev/sda
Checking blocks 0 to 3907018583
Checking for bad blocks (read-only test): ^C0.01% done, 0:03 elapsed. (0/0/0 errors)

Interrupted at block 604352
pi@raspberrypi:~/bak $ sudo badblocks -s -v /dev/sda 3907018583 3039784640 > badsectors.txt
Checking blocks 3039784640 to 3907018583
Checking for bad blocks (read-only test): done                                                 
Pass completed, 0 bad blocks found. (0/0/0 errors)
2022-07-05 14:00:12 1657000812 0.014820