Moin!
Ja, entweder das mit dem x, also z.B.
if [ x$media == "xdisk" ]; then
oder um die Variable das doppelte Anführungszeichen
if [ "$media" == "disk" ]; then
Stalker
Du solltest dein Script auch anpassen, nur ein Gleichheitszeichen ist definitiv falsch.
Zum Hintergrund:
In /proc/ide gibt's für jedes Laufwerk einen Eintrag, z.B. /proc/ide/hda für die erste Festplatte. Das ist ein Link auf ein Verzeichnis z.B. /proc/ide/ide0/hda, wenn die erste Festplatte am ersten IDE-Controller hängt. Darin gibt es eine Datei "media", die mit dem Typ des Laufwerks gefüllt ist ("disk" bzw. "cdrom").
Wenn es eine Festplatte ist, wird DMA eingeschaltet (execute hdparm...), wenn es ein CD/DVD-Laufwerk ist, wird DMA nur eingeschaltet, falls DMA_ONLY_FOR_DISKS nicht auf "yes" steht (wird vermutlich in /etc/sysconfig o.ä. gesetzt).
Aus irgendeinem Grund ist die "media"-Datei eines deiner IDE-Laufwerke leer (was nicht sein sollte), weshalb der Vergleich stolpert: an der Stelle von $media steht plötzlich nichts und damit fehlt die linke Seite des Vergleichs.
Funktionieren noch alle Platten und Laufwerke? Oder wurde eins ausgebaut? Was gibt "ls -la /proc/ide" aus, vielleicht finden wir ja das schuldige Laufwerk...
mini.