Portál AbcLinuxu, 16. srpna 2025 02:13


Dotaz: USB automount

27.12.2004 17:35 ondra
USB automount
Přečteno: 478×
Odpovědět | Admin
Ahoj, mam nasledujici problem: chtel jsem si napsat skript pro automaticky mount USB zarizeni pri pripojeni (v mem pripade jde o fotak). Dmesg pri jeho pripojeni ukazuje toto:
usb 1-1: new full speed USB device using address 6
scsi4 : SCSI emulation for USB Mass Storage devices
  Vendor: NIKON     Model: NIKON DSC E2200   Rev: 1.00
  Type:   Direct-Access                      ANSI SCSI revision: 02
SCSI device sdb: 248320 512-byte hdwr sectors (127 MB)
sdb: assuming Write Enabled
sdb: assuming drive cache: write through
 sdb: sdb1
Attached scsi removable disk sdb at scsi4, channel 0, id 0, lun 0
Attached scsi generic sg0 at scsi4, channel 0, id 0, lun 0,  type 0
USB Mass Storage device found at 6
Pouzivam udev, takze jsem si vytvoril pravidlo
BUS="usb",SYSFS{manufacturer}="NIKON",
SYSFS{serial}="000004648378", NAME="%k", SYMLINK="nikon"
Vysledkem by tedy melo byt to, ze se na nej muzu odkazovat jako /dev/nikon a nemusim se starat, jestli je zrovna jako /dev/sda1, /dev/sdb1 atd. (coz je prave to, co potrebuju pro ten skript) Problem je v tom, ze /dev/nikon odkazuje na /dev/sg0, coz je jakesi druhe zarizeni, ktere to pri pripojeni naslo (viz ten vypis z dmesg). Je nejak mozne si vybrat ze zarizeni, pokud jich pri pripojeni jednoho kusu hardware najde vic? Diky!
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

18.1.2005 16:01 Michal Svanda
Rozbalit Rozbalit vše Re: USB automount
Odpovědět | | Sbalit | Link | Blokovat | Admin
Sorry za trochu pozdni odpoved, ale nedavno jsem resil neco podobneho, takze: to pravidlo pro udev musis trochu upravit:
BUS="usb",SYSFS{manufacturer}="NIKON",
SYSFS{serial}="000004648378", KERNEL="sd*", NAME="%k", SYMLINK="nikon"
Pak by to melo fungovat.
18.1.2005 16:22 Michal Svanda
Rozbalit Rozbalit vše Re: USB automount
Odpovědět | | Sbalit | Link | Blokovat | Admin
BTW -- jak resis ten automaticky mount. Ja jsem si napsal skript /etc/dev.d/block/usb.dev, jednoduchy, neco jako:
#!/bin/bash

if [ "$ACTION" == "add" ]
then
  if test -b /udev/usbpen
  then
    mount /mnt/usbdisk
  elif test -b /udev/c4000z
  then
    mount /mnt/olympus
  elif test -b /udev/sda1
  then
    mount /mnt/usba
  elif test -b /udev/sdb1
  then
    mount /mnt/usbb
  elif test -b /udev/sdc1
  then
    mount /mnt/usbc
  fi
fi
Coz funguje perfektne, nicmene odmountovat pak zarizeni muze prirozene jenom root. Jsem schopny zajistit i odmountovani v temze skriptu, ale to se bude dit az pri vytrzeni zarizeni z USB portu, coz mi prijde vice nez nekorektni. Da se nejakym parametrem (treba ve fstabu) zaridit, aby mohl zarizeni odpojit kdokoli (prirozene, pokud neni pouzivano), bez ohledu na to, kdo ho pripojil?
18.1.2005 17:01 nemo
Rozbalit Rozbalit vše Re: USB automount
Parametr v fstabu je users, anebo pouzij parametr sync a odpojuj ze skriptu az po vytazeni z USB (coz by v tomto pripade nemelo vadit).
18.1.2005 18:27 Michal Švanda | skóre: 19 | blog: vlkovo
Rozbalit Rozbalit vše Re: USB automount
Tohle je presne to, co jsem hledal. Asi bych mel neco delat s ocima -- "man fstab" jsem samozrejme cetl, ale tuto informaci tam nasel az po tvem upozorneni.

Kazdopadne diky, funguje to skvele. Ted jeste fotodiodu a mechanismus s palickou na maso, ktera uzivatele prasti pres prsty, kdyz bude LEDka rychle blikat a oni se pokusi zarizeni vytrhnout z pocitace.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.