From 045352a242d10dd44792ada1572f66addc93e5dc Mon Sep 17 00:00:00 2001 From: 007revad <39733752+007revad@users.noreply.github.com> Date: Mon, 27 Feb 2023 05:51:26 +1100 Subject: [PATCH] Update syno_hdd_db.sh Fixed issue where drives weren't detected if NAS was updated from DSM 6 to DSM 7, and models like the DVA3219 using sata# even in DSM 6. --- syno_hdd_db.sh | 41 +++++++++++++++++++---------------------- 1 file changed, 19 insertions(+), 22 deletions(-) diff --git a/syno_hdd_db.sh b/syno_hdd_db.sh index b70dcd1..4e011d4 100644 --- a/syno_hdd_db.sh +++ b/syno_hdd_db.sh @@ -51,28 +51,25 @@ fi #------------------------------------------------------------------------------ # Get list of installed HDDs and SATA SSDs -if [[ $dsm -gt "6" ]]; then - # DSM 7 (sata drives, sata1, sata2 etc) -# for drive in /dev/sata[0-9]{1,2}; do - for drive in /dev/sata*; do - tmp=$(hdparm -i "$drive" | grep Model) - hdmodel=$(printf %s "$tmp" | cut -d"," -f 1 | cut -d"=" -f 2) - fwrev=$(printf %s "$tmp" | cut -d"," -f 2 | cut -d"=" -f 2) - if [[ $hdmodel ]] && [[ $fwrev ]]; then - hdparm+=("${hdmodel},${fwrev}") - fi - done -else - # DSM 6 (sata drives, sda, sdb etc) - for drive in /dev/sd[a-z]{1,2}; do - tmp=$(hdparm -i "$drive" | grep Model) - hdmodel=$(printf %s "$tmp" | cut -d"," -f 1 | cut -d"=" -f 2) - fwrev=$(printf %s "$tmp" | cut -d"," -f 2 | cut -d"=" -f 2) - if [[ $hdmodel ]] && [[ $fwrev ]]; then - hdparm+=("${hdmodel},${fwrev}") - fi - done -fi +# SATA drives, sata1, sata2 etc +for drive in /dev/sata*; do + tmp=$(hdparm -i "$drive" | grep Model) + hdmodel=$(printf %s "$tmp" | cut -d"," -f 1 | cut -d"=" -f 2) + fwrev=$(printf %s "$tmp" | cut -d"," -f 2 | cut -d"=" -f 2) + if [[ $hdmodel ]] && [[ $fwrev ]]; then + hdparm+=("${hdmodel},${fwrev}") + fi +done + +# SATA drives, sda, sdb etc +for drive in /dev/sd[a-z]{1,2}; do + tmp=$(hdparm -i "$drive" | grep Model) + hdmodel=$(printf %s "$tmp" | cut -d"," -f 1 | cut -d"=" -f 2) + fwrev=$(printf %s "$tmp" | cut -d"," -f 2 | cut -d"=" -f 2) + if [[ $hdmodel ]] && [[ $fwrev ]]; then + hdparm+=("${hdmodel},${fwrev}") + fi +done # Sort hdparm array into new hdds array to remove duplicates if [[ ${#hdparm[@]} -gt "0" ]]; then