Portál AbcLinuxu, 30. dubna 2025 10:09
chmod +x /usr/sbin/update-smart-drivedb
#!/bin/bash # https://www.smartmontools.org/wiki/FAQ#MyATASATAdriveisnotinthesmartctlsmartddatabase smart_ver_a=`smartctl -V |grep "release" |awk '{print $3}'` smart_ver=`sed 's/\./_/' <<<"$smart_ver_a"` smart_ver_r=`awk -F "." '{print $1}' <<<"$smart_ver_a"` if [ $smart_ver_r -lt 6 ]; then echo "Pouzivas starou verzi smartmontools - $smart_ver_a, skript funguje od 6.0" exit 1 fi url="https://www.smartmontools.org/browser/branches/RELEASE_""$smart_ver""_DRIVEDB/smartmontools/drivedb.h" db="drivedb.h" echo -n "Processing 1... " cd "/var/lib/smartmontools/drivedb" u1=`egrep -o "^http[s?]://" <<<"$url"` u2=`sed 's#^http[s?]://##' <<<"$url"` u2=`sed 's#/.*##' <<<"$u2"` a=`wget -q -O - "$url" |grep "<a .*>Original Format" |head -n1` echo "ok" echo -n "Processing 2... " link="$u1$u2"`sed 's/.*href."//;s/".*//' <<<"$a"` wget -q -O "$db""_temp" "$link" echo "ok" ver_new=`grep "Id: drivedb.h" "$db""_temp" |sed 's/.*drivedb.h//' |awk '{print $1}'` ver_old=`grep "Id: drivedb.h" "$db" |sed 's/.*drivedb.h//' |awk '{print $1}'` if [ $ver_new -gt $ver_old ]; then echo "aktualizuji databázi verze $ver_old verzi $ver_new" mv "$db" drivedb_old.h cp "$db""_temp" "$db" else echo "Databáze je aktuální, verze: $ver_new" fi rm "$db""_temp" 2>/dev/null
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.