Можно также использовать методы, предоставляемые дисками, для тестирования ошибок носителей. SCSI имеет команду WRITE LONG, которую можно использовать для повреждения блока путем записи данных с недопустимым ECC. SATA и NVMe также имеют похожие команды.
Для наиболее распространенного случая (SATA) вы можете использовать hdparm с --make-bad -ector для использования этой команды, вы можете использовать sg_write_long для SCSI, а для NVMe вы можете использовать nvme-cli с опцией write-uncor .
Большим преимуществом этих команд по сравнению с другими методами внедрения является то, что они также ведут себя так же, как и диск, с полной задержкой, а также восстановлением после записи в этот сектор путем перераспределения. Это включает в себя также счетчики ошибок, повышающиеся в приводе.
Недостатком является то, что если вы делаете это слишком много для одного и того же диска, его счетчики ошибок будут работать и SMART может пометить диск как неисправный или вы можете исчерпать его таблицы перераспределения. Поэтому используйте его для ручного тестирования, но если вы запускаете его на автоматическом тестировании, не делайте это слишком часто.