Anzeige:
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 15 von 24

Thema: Mittels Shell Skript ob eine DVD Brenner angeschlosen ist

  1. #1
    Registrierter Benutzer
    Registriert seit
    Oct 2009
    Beiträge
    27

    Mittels Shell Skript ob eine DVD Brenner angeschlosen ist

    Hallo,

    bin gerade dabei ein kleines Script zum automatischen Backup zu schreiben. Dazu wird auf dem Rechner ein USB DVD Brenner angeschlossenn. Wie kann ich nun per Script erkennen ob es sich um einen DVD Brenner handelt.

    cdrecord -scanbus liefert folgende Ausgabe:
    Slimline DVD A DS8A1H WX14 Removable CD-ROM

    Ok ich könnte diese Zeile per grep fangen aber nach was soll ich suchen? Hier wir ja nur "DVD" angezeigt, wie vermutlich bei nem normalen DVD Laufwerk auch.

    Weitere Frage:
    Gibt es eine Möglichkeit zu erkennen, an welchem dev der Brenner sich befindet? Also ob /dev/sr0 oder /dev/sr1.

    Danke!

    Grüße

  2. #2
    Registrierter Benutzer
    Registriert seit
    Dec 2003
    Ort
    Dettenhausen
    Beiträge
    21.423
    Such-Stichwort: UDEV
    Ich bin root - ich darf das.

  3. #3
    Registrierter Benutzer
    Registriert seit
    Oct 2009
    Beiträge
    27
    Soweit ich das nun richtig verstanden habe kann ich damit ein bestimmtes Gerät über eine ID ansprechen. Ich will aber irgendeinen DVD Brenner erkennen der per USB angeschlossen wurde und diesen dann immer unter einem festen Namen ansprechen(z.B. /dev/sr0 oder per symlink irgendwie).

    Funktioniert meine Denke?

  4. #4
    Rain_maker
    Gast
    Zitat Zitat von tester_ Beitrag anzeigen
    Ich will aber irgendeinen DVD Brenner erkennen der per USB angeschlossen wurde und diesen dann immer unter einem festen Namen ansprechen(z.B. /dev/sr0 oder per symlink irgendwie).
    Das Stichwort lautet immer noch udev, genau dazu ist er prädestiniert, man muss sich nur die passenden Strings für {ATTR} aussuchen.

  5. #5
    Registrierter Benutzer
    Registriert seit
    Oct 2009
    Beiträge
    27
    Hallo,

    bin nun gerade am testen mit udev. Ubuntu 8.04 in einer VM, USB Stick angeschlossen.

    dmesg | tail gibt aus dass der Stick unter sdb erkannt wurde
    Nun möchte ich die ganzen Attribute anzeigen lassen mit folgendem Befehl:
    udevinfo -a -p 'udevinfo -q path -n /dev/sdb'

    Leider wird dies mit der Fehlermeldung "no valid sysfs device found" quittiert. Wo liegt mein Fehler?

    Grüße

  6. #6
    Registrierter Benutzer Avatar von buzz768
    Registriert seit
    Apr 2005
    Ort
    Rostock
    Beiträge
    2.016
    Der zweite Teil muss in Backticks gesetzt werden, nicht in Anführungsstriche,
    also `udevinfo -q path -n /dev/sdb` oder $(udevinfo -q path -n /dev/sdb)
    Arch Linux / Intel Z77 / i5-3570K / 8GB PC3-1333 / SAMSUNG SSD 830 128GB

  7. #7
    Registrierter Benutzer
    Registriert seit
    Oct 2009
    Beiträge
    27
    Danke! Klasse, ein fähiges Forum hier (-:

  8. #8
    Registrierter Benutzer
    Registriert seit
    Oct 2009
    Beiträge
    27
    Morgen,

    so nun bin ich ein Stück weiter: Ich kann einen bestimmten USB DVD Brenner per udev erkennen.
    SUBSYSTEMS=="usb", KERNELS=="1-1", NAME="brenner", ATTRS{serial}=="....."

    Wie bzw. mit welchem Attribut kann ich nun allgemein USB DVD Brenner einen bestimmten Mountpunkt zuweisen?

    Grüße

  9. #9
    Rain_maker
    Gast
    Da wirst Du alles finden, auch wie man z.B. nach Erkennung eine bestimmte Aktion (Script/Befehl) ausführen kann.

    http://reactivated.net/writing_udev_rules.html

  10. #10
    Registrierter Benutzer
    Registriert seit
    Oct 2009
    Beiträge
    27
    Ok diese Seite kenn ich bereits. Dort finde ich aber nur Beispiele für fest eingebaute CD/DVD Laufwerke. Dieses meine ich: SUBSYSTEM=="block", KERNEL=="hdc", SYMLINK+="dvd", GROUP="cdrom"

    Gibts dieses group Attribut auch für Brenner?

  11. #11
    Rain_maker
    Gast
    Klar, wieso sollte es das nicht geben?

    Schliesslich wird dieses Atrribut _gesetzt_ und nicht aus der jeweiligen Hardware "ausgelesen".

  12. #12
    Registrierter Benutzer
    Registriert seit
    Oct 2009
    Beiträge
    27
    Leider finde ich dieses Attribut aber mit folgendem Befehl nirgends:
    `udevinfo -q path -n /dev/sdb` oder $(udevinfo -q path -n /dev/sdb)`

    Reicht hier einfach GROUP=="dvdwriter", oder was schreibe ich als Erkennungsmerkmal rein? Gibts ne Übersciht für alle Attribute?

  13. #13
    Rain_maker
    Gast
    Du solltest das verlinkte HowTo wirklich (noch) einmal vollständig lesen.

    Natürlich findest Du dieses GROUP nicht in udevinfo, warum habe ich Dir doch schon geschrieben.

    Und welche Gruppe Du da reinschreibst oder ob Du das überhaupt brauchst, musst Du schon selbst wissen.

  14. #14
    Registrierter Benutzer
    Registriert seit
    Oct 2009
    Beiträge
    27
    Das mit dem GROUP habe ich falsch aufgefasst, hier wird nicht eine Regel für eine bestimmte Gerätegruppe angelegt sondern, eine Besitzergruppe zugewiesen.

    Nun komm ich aber mit meinem Problem immer noch nicht weiter. Wie kann ich nicht nur einen bestimmten DVD Brenner unter sagen wir mal /dev/brenner mounten, sondern irgendeinen USB Brenner der an diesem System angeschlossen wird? Eine Identifizierung per ATTRS{serial} scheidet somit aus, denn das Skript soll auch in Zukunft ohne Einschränkungen mit jedem Brenner laufen!

    Gibt es keine Möglichkeit die Gerätegruppe "DVD Brenner" unter /dev/brenner zu mounten? Einen USB Brenner und ein normales Laufwerk lassen sich ja per udev nicht auseinander halten?!

  15. #15
    Registrierter Benutzer Avatar von buzz768
    Registriert seit
    Apr 2005
    Ort
    Rostock
    Beiträge
    2.016
    Also du willst ja, wenn ich dich richtig verstehe, den Brenner (bzw. die eingelegte DVD) nicht mounten oder einen Mountpunkt zuweisen, sondern du willst das Device herausfinden, an dem ein DVD-Brenner hängt. Ich bin da nicht besonders bewandert, aber mit HAL scheint mit das relativ einfach zu sein. lshal oder gnome-device-manager (View->Device Properties aktivieren) liefern ja recht detaillierte Informationen über die angeschlossene Hardware und man kann darin auch gezielt suchen. Ich habe mir mal ein Script zusammengeschustert, dass mir das Device meines (IDE-)DVD-Brenners anzeigt
    Code:
    #!/bin/bash
    for UDI in $(hal-find-by-capability --capability storage.cdrom); do
     DVDRW=$(hal-get-property --key storage.cdrom.dvdrw --udi $UDI)
      if [ $DVDRW == "true" ]; then
        hal-get-property --key block.device --udi $UDI
      fi
    done
    PS
    Habe das mal auf einem anderen PC ausprobiert, der CD-Brenner zeigt dort auch storage.cdrom.dvdrw = true an, ist also nicht verlässlich.
    Geändert von buzz768 (16.10.09 um 13:17 Uhr)
    Arch Linux / Intel Z77 / i5-3570K / 8GB PC3-1333 / SAMSUNG SSD 830 128GB

Ähnliche Themen

  1. DVD Brenner von Philips und K3B
    Von l0rd im Forum stationäre Hardware
    Antworten: 1
    Letzter Beitrag: 19.09.05, 08:55
  2. DVD Brenner nicht richtig erkannt.
    Von Boddidharma im Forum System installieren und konfigurieren
    Antworten: 2
    Letzter Beitrag: 04.06.04, 18:14
  3. Erkennen von DVD und Brenner unter SuSE 8.1 ???
    Von MajinGogeta im Forum stationäre Hardware
    Antworten: 8
    Letzter Beitrag: 31.10.02, 07:34
  4. dvd lw gegen brenner getauscht, linux hats nicht gemerkt??
    Von BlackCrow im Forum Linux Allgemein
    Antworten: 12
    Letzter Beitrag: 04.05.02, 17:55
  5. Antworten: 3
    Letzter Beitrag: 10.03.01, 19:09

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •