smartctl
To check hard disk for errors, run
/usr/sbin/smartctl -q errorsonly -H -l selftest -l error /dev/sda
Here is an example of HDD with errors
# smartctl -q errorsonly -H -l selftest -l error /dev/sda ATA Error Count: 8259 (device log contains only the most recent five errors) Error 8259 occurred at disk power-on lifetime: 8324 hours (346 days + 20 hours) Error 8258 occurred at disk power-on lifetime: 8324 hours (346 days + 20 hours) Error 8257 occurred at disk power-on lifetime: 8324 hours (346 days + 20 hours) Error 8256 occurred at disk power-on lifetime: 8324 hours (346 days + 20 hours) Error 8255 occurred at disk power-on lifetime: 8324 hours (346 days + 20 hours) #
To get detailed, result, run
smartctl -a -d ata /dev/sda