USB-Stick automatisch mounten

Dieses Thema im Forum "FreeBSD - Allgemein" wurde erstellt von MediumO, 3 Januar 2005.

  1. MediumO

    MediumO New Member

    Registriert seit:
    25 September 2003
    Beiträge:
    12
    Ort:
    Balingen
    Gibt es unter FBSD ne Möglichlkeit z.B. meinen USB-Stick automatisch zu mounten, und evtl. dann z.B. noch einen Link in Gnome, KDE ... auf dem Desktop anzulegen?

    Automount duerfte damit ja nicht unbedingt klakommen, da sich der Devicename ja ändern kann oder z.B. eine externe Festplatte mehrere Partitionen haben kann.

    kennt da jemand was?

    mfg
    Olaf
  2. AndreasMeyer

    AndreasMeyer SLED 10

    Registriert seit:
    21 November 2003
    Beiträge:
    1.150
  3. orangutanklaus

    orangutanklaus надеть шляпу, снять шляпу

    Registriert seit:
    12 Oktober 2004
    Beiträge:
    101
    Ort:
    Thüringen
    tach,

    bei mir geht das ganze automatisch. d.h. mounten des usb-sticks automatisch über eintrag in /etc/devd.conf und /etc/fstab. unmounten muss ich von hand, weil beim automatischen unmounten das system einfriert.
    /etc/devd.conf:
    Code:
    attach 0 {
          device-name "umass[0-9]+";
          action "(sleep 2; chmod 666 /dev/da*; mount /mnt/umass)&";
    };
    detach 0 {
          device-name "umass[0-9]+";
          action "(sleep 2; umount -f /mnt/umass)&";
    };
    /etc/fstab:
    Code:
    /dev/da0s1       /mnt/umass  msdos   rw,-m=777        0       0
    für den, der es brauch, lässt sich das mountverzeichnis sicherlich auch noch mit einem link auf den desktop versehen..

    es sind auch schon beiträge im forum und im wiki zu diesem thema zu finden ;)

    cu
    Zuletzt bearbeitet: 3 Januar 2005
  4. juedan

    juedan Guest

    Hallo orangutanklaus,

    es ist besser, wenn noch ein "noauto" eingetragen ist, da sonst beim Systemstart ein mount-Versuch unternommen wird.

    Für Gnome brauchst Du keinen Link anlegen, da Nautilus automatisch ein Icon auf dem Desktop bringt.

    Viele Grüße

    Jürgen

    PS: Bei bleibt das System auch stehen, wenn der USB-Speicher abgezogen wird :zitter: .
  5. MediumO

    MediumO New Member

    Registriert seit:
    25 September 2003
    Beiträge:
    12
    Ort:
    Balingen
    Ok, Danke das hilft mir schonmal viel.

    Mein Problem ist aber das ich ja nicht immer sagen kann, dass es sich um da0s1 handelt.

    Folgendes Szenario:

    Ich Stecke nur den USB-Stick ein, dieser ist dann mit Fat32 formatiert und unter /dev/daos1 zu finden. Dann funktioniert das einwandfrei.

    Wenn ich aber eine USB-Platte einstecke mit 2 Partitionen und NTFS dann klappt das nicht mehr, oder wenn ich 2 Sticks einstecke. Gibts da ne Moeglichkeit?

    Unter Gnome wars mir bekannt, gibts ne Moeglichkeit fuer KDE?

    thx
    Olaf
  6. AndreasMeyer

    AndreasMeyer SLED 10

    Registriert seit:
    21 November 2003
    Beiträge:
    1.150
    Ich habe auch ein wenig mit devd.conf herumexperimentiert und zeige Euch meine Resultate, sicher verbesserungsfähig, aber es hilft sicher einigen weiter..

    /etc/devd.conf
    Code:
    # USB-Massenspeicher (Sony-Digitalkamera, USB-Stick)
    attach 0 {
          device-name "umass[0-9]+";
          action "(sleep 2; /usr/local/sbin/mountumass)&";
    };
    Kein detach => Umount nach dem physikalischen Entfernen des Gerätes ist ungesund!

    /etc/fstab
    Code:
    /dev/da0 /mnt/zip msdos rw,noauto,nodev,nosuid,-Lde_CH.UTF-8 0 0
    /dev/da0s4  /mnt/zip  msdos  rw,noauto,nodev,nosuid,-Lde_CH.UTF-8  0  0
    /dev/da1   /mnt/umass   msdos   rw,noauto,nodev,nosuid,-Lde_CH.UTF-8   0   0
    /dev/da1s1 /mnt/umass   msdos   rw,noauto,nodev,nosuid,-Lde_CH.UTF-8   0   0 
    /usr/local/sbin/mountumass
    Code:
    #!/bin/csh
    /sbin/mount /dev/da1s1 && /usr/local/sbin/createumasslink && exit
    /sbin/mount /dev/da1 && /usr/local/sbin/createumasslink && exit 
    /usr/local/sbin/createumasslink => Erstellt Links auf jedem KDE-Desktop
    Code:
    !/bin/csh
    ln -s /mnt/umass/ /root/Desktop/USB-Massenspeicher
    
    foreach i (`find /usr/home -mindepth 1 -maxdepth 1 -type d`)
     ln -s /mnt/umass/ ${i}/Desktop/USB-Massenspeicher
    end 
    /usr/local/sbin/umountumass => Wird über KDE-Menüeintrag aufgerufen
    Code:
    #!/bin/csh
    sudo /sbin/umount /mnt/umass && /usr/local/sbin/deleteumasslink && exit 
    /usr/local/sbin/deleteumasslink
    Code:
    #!/bin/csh
    rm -f /root/Desktop/USB-Massenspeicher
    
    foreach i (`find /usr/home -mindepth 1 -maxdepth 1 -type d`)
     rm -f ${i}/Desktop/USB-Massenspeicher
    end 
    /usr/local/sbin/mountzip => Wird über KDE-Menüeintrag aufgerufen
    Automatische Einhängung mit amd möglich => siehe dazu:
    http://wiki.bsdforen.de/tiki-index.php?page=Automount
    Code:
     #!/bin/sh
    sudo mount /dev/da0 && ln -s /mnt/zip ~/Desktop/Iomega\ Zip && exit
    sudo mount /dev/da0s4 && ln -s /mnt/zip ~/Desktop/Iomega\ Zip && exit 
    /usr/local/sbin/umountzip => Wird über KDE-Menüeintrag aufgerufen
    Code:
     #!/bin/sh
    sudo umount /mnt/zip && rm ~/Desktop/Iomega\ Zip 
  7. cheasy

    cheasy SysAdm*n from Hell

    Registriert seit:
    5 Mai 2003
    Beiträge:
    668
    Ort:
    Steinbach / Taunus
    Sieht doch sehr brauchbar aus. Dankeschön.
    Kann man das bitte in die HowTo's schieben?
  8. MediumO

    MediumO New Member

    Registriert seit:
    25 September 2003
    Beiträge:
    12
    Ort:
    Balingen
    Danke,

    Sieht super aus werde deine Scripte mal testen, werd mal schauen ob man Sie umstellen kann, das es nicht nur auf feste Devices beschränkt ist. Weil wenn man 2 USB-Medien dran hat kann es ja sein es nicht unbedingt da0 ist.

    Was noch nett wäre, wenn man das Gerät àla Desktopsymbol in Papierkorb verschieben, wie bei MacOS umounten könnte.

    so long
    Olaf
  9. Basti_litho

    Basti_litho New Member

    Registriert seit:
    17 Dezember 2005
    Beiträge:
    36
    Ich krame jetzt mal diesenn recht alten Thread nochmal raus. Aber bei mir funktioniert diese Anleitung leider nicht.

    Er reagiert nicht - bzw. führt nichts aus.
    /sbin/devd läuft. Wenn ich ihn im Debug Modus und nicht als Dämon starte, sehe ich auch das er einen usb-stick erkennt / findet. Aber weiter macht er nichts.

    Habe es jetzt auch schon mit einer einfacheren Konfiguration versucht:
    Code:
    attach 0 {
     device-name "ums[0-9]+";
      action "mount /dev/usbcam";
    };
    
    Hat jemand noch eine Idee warum es nicht gehen würde?

    Ausgabe von devd -Dd:
    Code:
    Processing event '? at port=0 vendor=0x0ea0 product=0x6803 devclass=0x00 devsubclass=0x00 sernum="7777777777777777" on uhub2'
    Pushing table
    setting port=0
    setting vendor=0x0ea0
    setting product=0x6803
    setting devclass=0x00
    setting devsubclass=0x00
    setting sernum=7777777777777777
    setting bus=uhub2
    Processing nomatch event
    Popping table
    Processing event '+umass0 vendor=0x0ea0 product=0x6803 devclass=0x00 devsubclass=0x00 sernum="7777777777777777" intclass=0x08 intsubclass=0x06 at port=0 interface=0 vendor=0x0ea0 product=0x6803 devclass=0x00 devsubclass=0x00 sernum="7777777777777777" intclass=0x08 intsubclass=0x06 on uhub2'
    Pushing table
    setting device-name=umass0
    setting vendor=0x0ea0
    setting product=0x6803
    setting devclass=0x00
    setting devsubclass=0x00
    setting sernum=7777777777777777
    setting intclass=0x08
    setting intsubclass=0x06
    Processing attach event
    Testing device-name=umass0 against ^ed50
    Testing device-name=umass0 against ^ukbd0
    Testing device-name=umass0 against ^ums[0-9]+
    Testing media type of umass0 against 0x20
    Testing media type of umass0 against 0x80
    Testing device-name=umass0 against ^(aac|adv|adw|aha|ahb|ahc|ahd|aic|amd|amr|asr|bt|ciss|ct|dpt|esp|ida|iir|ips|isp|mlx|mly|mpt|ncr|ncv|nsp|stg|sym|trm|wds)[0-9]+
    Popping table
    
    fstab:
    Code:
    /dev/da0s1              /mnt/usbcam     msdos   rw,noauto,nodev 0       0
    
    Danke & Gruß
    Basti_litho
  10. teuk

    teuk Member

    Registriert seit:
    26 Dezember 2003
    Beiträge:
    178
    hi,

    sollte es nicht eher
    Code:
    [...]
    device-name "um[B]as[/B]s[0-9]+";
    [...]
    
    heissen?

    Und ein vorangestelltes "sleep 2" wie von AndreasMeyer und orangutanklaus angegeben koennte evtl. auch ganz hilfreich sein.


    teuk
  11. H3LL

    H3LL New Member

    Registriert seit:
    22 Juni 2004
    Beiträge:
    19
    Ort:
    Altrip
    sollte es nicht auch
    action "mount /mnt/usbcam";
    heißen?
  12. Basti_litho

    Basti_litho New Member

    Registriert seit:
    17 Dezember 2005
    Beiträge:
    36
    @teuk: sorry, das war eigentlich ein Test - weil er auf "umass[0-9]" nicht reagierte und in seiner Debug Ausgabe "ums[0-9]" drinnen hatte, dachte ich ich versuchs mal damit. Den Eintrag mit "umass[0-9]" hatte ich noch zusätzlich drinnen.

    @H3LL: mist - stimmt - mieser tippfehler. Leider war das anscheindend nicht der einzige Fehler - es geht trotzdem nicht. :(

    Sollte er eigentlich irgendeine spezielle Ausgabe machen, wenn er ein Gerät und Zuordnung in der devd.conf, gefunden hat?


    Natürlich starte ich den devd sicherheitshaber immer neu, nach Änderungen in der devd.conf

    Gruß
    Basti
  13. Basti_litho

    Basti_litho New Member

    Registriert seit:
    17 Dezember 2005
    Beiträge:
    36
    Huhu! - habe es herausgefunden *hüstel*

    Am Ende der Datei war ein "*/" was mich auch schon gewundert hat. Da ich es nur einmal in der Datei gefunden hatte (sonst wäre es mir klar gewesen das es ein Kommentar war!).

    Nachdem ich meine Einträge vor das (ausleitetnde) Kommentarzeichen gesetzt habe - funktioniert es auch gleich :D


    Nur was ich leider immer noch nicht verstehe:

    Code:
    /usr/local/sbin/umountumass => [b]Wird über KDE-Menüeintrag aufgerufen[/b]
    
    #!/bin/csh
    sudo /sbin/umount /mnt/umass && /usr/local/sbin/deleteumasslink && exit
    
    Wie kann ich das denn ins KDE Menü integrieren? Ist damit aber nicht das normale Startmenü gemeint - oder? Schon das Kontext Menü.

    Gruß,

    Basti
    Zuletzt bearbeitet: 31 Dezember 2005
  14. AndreasMeyer

    AndreasMeyer SLED 10

    Registriert seit:
    21 November 2003
    Beiträge:
    1.150
    Die Idee war ins Startmenü (korrekt K-Menü), aber das Kontextmenü ist natürlich besser. Eine Anleitung für Einträge ins Kontextmenü gibt es unter:
    http://wiki.bsdforen.de/index.php/KDE_AntiVir_im_Kontextmenü
  15. Basti_litho

    Basti_litho New Member

    Registriert seit:
    17 Dezember 2005
    Beiträge:
    36
    Ahh, ja sowas (K-Menü) dachte ich mir schon. hmm.. mal sehen ob ich es mit dem Kontext Menü hinbekomme.

    Obwohl - wenn es als ganz normaler Link - bzw. Verzeichnis erscheint, müsste ich ja das Kontext Menü für alle Verzeichnisse so übernehmen.

    Irgendwie bräuchte das Icon schon einen speziellen Typ (damit man eben nicht bei jedem Verzeichnis im Kontext-Menü die Option "Laufwerk umounten" o.ä. sieht.


    Naja, mal sehen.

    Danke
  16. bossk

    bossk New Member

    Registriert seit:
    15 Oktober 2004
    Beiträge:
    91
    Ort:
    Dortmund
    Fuer usb-Geraete wuerde ich lieber usbd.conf nutzen, statt devd.conf.

    Mein USB-Stick eintrag sieht so aus
    Code:
    device "USBstick"
            vendor  0x13e0
            product 0x2517 
            attach "sleep 2; /sbin/mount -t ufs -r /dev/da0s1 /mnt/usbstick/"
    
    Habe nur ein USB-Geraet am laufen daher das statische da0s1. Das "Detachen" geht natuerlich nicht problemlos, daher manuell unmounten.

    hth
    Just my 2 cents.
  17. Basti_litho

    Basti_litho New Member

    Registriert seit:
    17 Dezember 2005
    Beiträge:
    36
    @bossk: ich hab irgendwo im Web gelesen das der devd den usbd ablösen soll - lieg ich da falsch?


    Hier noch die Lösung um "umount" in das Kontext Menü des Ordners zu integrieren:

    Suche des Verzeichnisses "servicemenus" (find / -type d -iname 'servicemenus')

    dort eine Datei anlegen (z.b. usbdevicemount o.ä) mit folgendem Inhalt:
    Code:
    [Desktop Entry]
    Actions=umountumass
    ServiceTypes=inode/directory
    X-KDE-Priority=TopLevel
    
    [Desktop Action umountumass]
    Name= Sicheres entfernen
    Exec=umountumass
    
    Die Option kann man auch in ein Submenü verbannen - dann einfach
    X-KDE-Priority=TopLevel
    mit
    X-KDE-Submenu=umountumass
    ersetzen.


    Hier noch eine zwei kleine Lösungen - ohne devd:

    LÖSUNG 1:

    Am einfachsten ist es im Kontrollzentrum von KDE unter:
    Code:
    Arbeitsfläche -> Verhalten -> Geräte-Symbole, 
    (die Option "Geräte Symbole anzeigen" muss eingeschaltet sein) die Auswahl: 
    "Nicht eingebundenes Wechsellaufwerk" und
    "Eingebundenes Wechsellaufwerk" - einschalten.
    
    Daraufhin bekommt man ein Symbol auf dem Desktop,
    mit dem man seinen USB-Stick mounten
    (draufklicken und warten) und umounten kann (rechtsklick -> Sicher entfernen).

    Der USB-Stick wird bei dieser einfachen und schnellen Lösung nicht automatisch eingehängt - sondern eben erst wenn man draufklickt (kann ein Vorteil sein - je nach dem wie man es gewohnt ist).

    LÖSUNG 2:

    Auf dem Desktop (auf einer freien Stelle) einen rechtsklick -> Neu erstellen -> Verknüpfung zu Gerät -> Festplatte.
    Dort unter "Gerät" den USB-Stick auswählen.



    Gruß
    Basti_litho
    Zuletzt bearbeitet: 1 Januar 2006
  18. bossk

    bossk New Member

    Registriert seit:
    15 Oktober 2004
    Beiträge:
    91
    Ort:
    Dortmund
    Darueber habe ich noch nichts gelesen, was nicht heissen muss, dass Du nicht recht hast. Mal recherieren oder evtl. weiss es jemand anderes.

    Gruss,
    bossk
  19. Basti_litho

    Basti_litho New Member

    Registriert seit:
    17 Dezember 2005
    Beiträge:
    36
    hab ich hier gefunden:
    http://www.freebsd.de/archive/de-bsd-questions/de-bsd-questions.200408/0549.html
    Code:
    .....
    usbd ist unter FreeBSD-5.3 mehr oder weniger obsolete. 
    Wenn man keinen der alten vorgefertigten Einträge in dessen Config 
    nutzen will braucht man den auch gar nicht mehr zu starten. 
    Die Ablösung ist der devd, welcher sich um alle Geräte kümmert und 
    nicht nur um USB.
    .....
    
    edit: wenn es nach dem alter der Manpages geht: usbd: 12.07.1998 / devd: 17.10.2002 ;)
    Zuletzt bearbeitet: 3 Januar 2006