Anzeige:
Ergebnis 1 bis 12 von 12

Thema: USB Stick automatisch erkennen in bashscript

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Registrierter Benutzer
    Registriert seit
    14.03.2010
    Beiträge
    8

    USB Stick automatisch erkennen in bashscript

    Hallo Ihr da zusammen,
    Ich möchte in einem laufenden Bashscript auf das einstecken eines USB-Sticks warten und aus diesem Script automatisch den Devicenamen (/dev/sdx) des eingesteckten Sticks ermitteln. Hat jemand eine Ahnung, wie so etwas aussehen kann?

    Gruß

  2. #2
    Registrierter Benutzer Avatar von bischi
    Registriert seit
    10.04.2003
    Beiträge
    4.828
    lsusb?

    MfG Bischi

    "There is an art, it says, or rather, a knack to flying. The knack lies in learning how to throw yourself at the ground and miss it" The hitchhiker's guide to the galaxy by Douglas Adams

    --> l2picfaq.pdf <-- www.n.ethz.ch/~dominikb/index.html LaTeX-Tutorial, LaTeX-Links, Java-Links,...

  3. #3
    Registrierter Benutzer
    Registriert seit
    14.03.2010
    Beiträge
    8
    lsusb sagt mir nur, dass ein USB-Gerät erkannt wurde, doch wie komme Ich auf den Devicenamen?
    Es ist egal ob Ich meinen SD-Card-Reader mit oder ohne SD-Karte einstecke, lsusb zeigt in beiden Fällen folgendes an:
    Bus 001 Device 008: ID 14cd:6700 Super Top Card Reader

    Man könnte dies über /var/log/messages herausbekommen, doch wie extrahiere Ich den Devicenamen aus dem Logfile?

  4. #4
    Registrierter Benutzer Avatar von undefined
    Registriert seit
    01.03.2004
    Beiträge
    1.255
    Dafür verwendet man hal oder UDEV.
    Hal Informiert über Hardware Änderungen und mit udev kannst du extra devices für deinen Stick anlegen.
    Der vorteil bei hal ist das du auf den laufenden X-Server zugreifen kannst. PopUp etc.
    Mit einem Shell Script von udev aus geht das nur mit viel aufwand.
    Der Vorteil von udev ist wenn du fstab Einträge nutzen möchtest kannst du eigene Devices z.B: /dev/meinUSBStick anlegen und diese in der fstab fest eintragen.
    Geändert von undefined (16-03-2010 um 15:28 Uhr)
    mfg undefined
    --
    Undefined Behavior (undefiniertes Verhalten) bedeutet meistens etwas ungültiges.
    xhtml Debugger

  5. #5
    Registrierter Benutzer
    Registriert seit
    14.03.2010
    Beiträge
    8
    wie kann man das denn mit HAL umsetzten?
    Ich habe es jetzt erst mal so gelöst:

    DEVOLD=`ls /dev/ | grep sd`
    DEVNEW=`ls /dev/ | grep sd`
    while [ "$DEVOLD" == "$DEVNEW" ] ;do
    sleep 1
    printf "."
    DEVNEW=`ls /dev/ | grep sd`
    done
    a=0 ; for i in $DEVOLD ; do let "a += 1" ;done
    devlist=($DEVNEW)
    DEV="/dev/${devlist[$a]}"
    echo
    echo $DEV


    vielleicht geht es auch einfacher?

  6. #6
    Registrierter Benutzer
    Registriert seit
    14.03.2010
    Beiträge
    8
    denke mal, HAL ist mein Freund.

    Die USB-Devices bekomme Ich so heraus:
    hal-get-property --udi `hal-find-by-property --key storage.bus --string usb` --key block.device

    Doch wie bekomme Ich jetzt heraus, welches USB-Storage Device als letztes eingesteckt wurde.
    Anzeigen kann Ich dies ja mit "lshal -m", aber wie frage Ich das in dem Script ab. Ich stehe da jetzt echt auf dem Schlauch.

Lesezeichen

Berechtigungen

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