From 051ba36f9b229b23621e71edbf23e536efc776b8 Mon Sep 17 00:00:00 2001 From: 007revad <39733752+007revad@users.noreply.github.com> Date: Tue, 31 Dec 2024 21:10:44 +1100 Subject: [PATCH] Update syno_hdd_db.sh --- syno_hdd_db.sh | 41 +++++++++++++++++++++++------------------ 1 file changed, 23 insertions(+), 18 deletions(-) diff --git a/syno_hdd_db.sh b/syno_hdd_db.sh index c6203f1..315cbbd 100644 --- a/syno_hdd_db.sh +++ b/syno_hdd_db.sh @@ -29,7 +29,7 @@ # /var/packages/StorageManager/target/ui/storage_panel.js -scriptver="v3.6.109" +scriptver="v3.6.110" script=Synology_HDD_db repo="007revad/Synology_HDD_db" scriptname=syno_hdd_db @@ -1196,22 +1196,27 @@ fi # Expansion units -# eSATA and InfiniBand ports both appear in syno_slot_mapping as: -# Esata port count: 1 -# Eunit port 1 - RX1214 -# Only device tree models have syno_slot_mapping -if which syno_slot_mapping >/dev/null; then - eunitlist=($(syno_slot_mapping | grep 'Eunit port' | awk '{print $5}')) -else - # Create new /var/log/diskprediction log to ensure newly connected ebox is in latest log - # Otherwise the new /var/log/diskprediction log is only created a midnight. - /usr/syno/bin/syno_disk_data_collector record - - # Get list of connected expansion units (aka eunit/ebox) - path="/var/log/diskprediction" - # shellcheck disable=SC2012 - file=$(ls $path | tail -n1) - eunitlist=($(grep -Eowi "([FRD]XD?[0-9]{3,4})(rp|ii|sas){0,2}" "$path/$file" | uniq)) +ebox_conected=$(synodisk --enum -t ebox) +if [[ $ebox_conected ]]; then + # Only device tree models have syno_slot_mapping + # eSATA and InfiniBand ports both appear in syno_slot_mapping as: + # Esata port count: 1 + # Eunit port 1 - RX1214 + if which syno_slot_mapping >/dev/null; then + # syno_slot_mapping does not find SAS eunits + eunitlist=($(syno_slot_mapping | grep 'Eunit port' | awk '{print $5}')) + fi + if [[ ${#eunitlist[@]} -eq "0" ]]; then + # Create new /var/log/diskprediction log to ensure newly connected ebox is in latest log + # Otherwise the new /var/log/diskprediction log is only created a midnight. + /usr/syno/bin/syno_disk_data_collector record + + # Get list of connected expansion units (aka eunit/ebox) + path="/var/log/diskprediction" + # shellcheck disable=SC2012 + file=$(ls $path | tail -n1) + eunitlist=($(grep -Eowi "([FRD]XD?[0-9]{3,4})(rp|ii|sas){0,2}" "$path/$file" | uniq)) + fi fi # Sort eunitlist array into new eunits array to remove duplicates @@ -2291,7 +2296,7 @@ if [[ $arch == "x86_64" ]]; then branch="main" file_url="https://raw.githubusercontent.com/${repo}/${branch}/bin/dhm_tool" # install_binfile - install_binfile dhm_tool "$file_url" /usr/syno/sbin/dhm_tool "a+x" bin/dhm_tool "$md5hash" + install_binfile dhm_tool "$file_url" /usr/syno/sbin/dhm_tool "755" bin/dhm_tool "$md5hash" # Check dhm_tool updated dhm_version="$(dhm_tool --version | grep "Utility Version" | awk '{print $NF}')"