[smartmontools-support] Fehler in update-smart-drivedb auf macOS / Homebrew
Olaf Pokorny
o.pokorny at web.de
Tue Mar 29 13:09:19 CEST 2022
Moin,
danke für die viele Arbeit an smartmontools.
Das Update der drivedb.h mit dem Script „update-smart-drivedb“
funktioniert seit smartmontools 7.3 auf macOS in der Homebrew-Version
nicht mehr. Es spuckt folgende Fehlermeldung aus:
sed: 1: "/^[ {]*"VERSION: *[^"]* ...": extra characters at the end of q
command
Der Fehler wird offenbar in Zeile 545 ausgelöst, bei der Überprüfung der
drivedb.h Version:
x=$(sed -n '/^[ {]*"VERSION: *[^"]*"/{s,^[ {]*"VERSION: \([1-9][./0-9]*
[^"]*\)".*$,\1,p;q}' "$1") \
Nach einiger Recherche habe ich den Tipp gefunden, hinter das letzte q
noch ein Semikolon einzufügen und dann funktioniert es tatsächlich:
x=$(sed -n '/^[ {]*"VERSION: *[^"]*"/{s,^[ {]*"VERSION: \([1-9][./0-9]*
[^"]*\)".*$,\1,p;q;}' "$1") \
Wieso, weshalb und warum das so ist, weiß ich nicht, da ich mich mit sed
nicht auskenne. Ob dieser „Trick“ die Funktionalität auf anderen
Plattformen beeinträchtigt, kann ich auch nicht sagen.
Was mir noch aufgefallen ist: Zum Download der neuen drivedb.h verwendet
das Script die curl-Version von Apple /usr/bin/curl. Da ich auch über
Homebrew die meist aktuellere curl-Version installiert habe, wäre es
nicht schlecht, wenn diese auch von update-smart-drivedb verwendet
werden könnte. Ich habe bei mir den Pfad dorthin in Zeile 17: export...
ergänzt:
export PATH="/usr/local/opt/curl/bin:/usr/local/bin:/usr/bin:/bin"
Viele Grüße
Olaf Pokorny
More information about the Smartmontools-support
mailing list