Files
2026-09-14 12:43:38 +02:00

20 lines
749 B
Bash
Executable File

#!/bin/bash
#!/bin/bash
count=0
DISKS=($(lsblk | grep disk | cut -f1 -d' '))
for disk in ${DISKS[@]}; do
echo "Test disk ${disk}" > /tmp/log_${disk}
{ sudo smartctl -H /dev/${disk} >> /tmp/log_${disk}; echo "Result: $?" >> /tmp/log_${disk};}& PID1[$count]=$!
{ sudo smartctl -t long /dev/${disk} >> /tmp/log_${disk}; echo "Result: $?" >> /tmp/log_${disk};}& PID2[$count]=$!
((count++))
done
MAIL_BODY=""
STARS="***************************"
for (( i=0; i<${#PID1[@]};i++)); do
wait ${PID1[$i]}
wait ${PID2[$i]}
MAIL_BODY="$(printf "${STARTS}${DISKS[$i]}${STARTS}${MAIL_BODY}\n$(cat /tmp/log_${DISKS[$i]})\nsmartctl for disk ${DISKS[$i]} finished")"
done
echo "${MAIL_BODY}" | mail -s "Automated Servermessage - smartctl long" lucas-f@live.at