[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: udev Hilfe gesucht



Servus Andreas,

Andreas Pakulat <apaku@gmx.de> wrote:
>On 23.04.06 16:25:06, Frank Dietrich wrote:
>> habe für verschiedene USB-Sticks eine Regel in udev.rules
>> eingetragen
>> 
>> BUS="usb", KERNEL="sd*1", SYSFS{idProduct}="6386", \
>> SYSFS{idVendor}="058f", SYMLINK="captiva512"
>> 
>> Damit hat das es, als ich es im Januar, eingerichtet hab auch
>> funktioniert. Leider funktioniert es jetzt damit nicht mehr. 
>> [...]
>> So wie ich das bisher herausgefunden habe scheint der Stick nur
>> noch über Bus="scsi" erkannt zu werden. Damit stehen mit aber
>> idProduct und idVendor nicht mehr zur Verfügung 
>1. sd*1 kann auch schief gehen, wenn mehr als 1 Partition auf dem
>Stick ist, oder der Stick gar keine Partitionen hat

Da hast Du Recht. Wäre aber hier zu vernachlässigen, da alle Sticks
nur 1 Partition besitzen.

>2. Solltest du wohl rausbekommen warum BUS="usb" nicht funktioniert
>bzw. was ihn sonst daran stoeren koennte... 

Hättest Du einen Tipp wie? Ich "doktor" nun schon fast 3 Wochen dran
rum und finde nicht heraus was da schief läuft.

# funktioniert nicht
BUS="usb", KERNEL="sd*1", SYMLINK="captiva512"

# das funktioniert, möcht ich aber nicht verwenden, weil diese Regel
# hier dann für alle Sticks greifen würde, was sie aber nicht soll
BUS="scsi", KERNEL="sd*1", SYMLINK="captiva512"

Die Lösung steckt wahrscheinlich in der Antwort auf die Frage "Warum
geht es nur noch mit scsi statt mit usb bei der Angabe für den Bus?".

>Steht was im syslog von udev, wenn du die Sticks einsteckst?
>Ansonsten mal die Prioritaet von udev erhoehen auf info oder debug
>(in /etc/udev.conf udev_log="info" o.ae.) und dann schauen.

Gebe zu meine Informationen waren etwas spärlich. Hier nun alles was
ich bisher schon gefunden hab. Vielleicht hilft es ja weiter und
jemand kann mir einen Tipp geben.

--- syslog beim einstecken des Sticks ---
kernel: usb 1-1: new full speed USB device using uhci_hcd and address
3 
kernel: scsi3 : SCSI emulation for USB Mass Storage devices
kernel: usb-storage: device found at 3
kernel: usb-storage: waiting for device to settle before scanning
usb.agent[11033]:      usb-storage: already loaded
kernel:   Vendor: Generic   Model: Flash D           Rev:
kernel:   Type:   Direct-Access                      ANSI SCSI
revision: 00 
kernel: SCSI device sdb: 1023998 512-byte hdwr sectors (524 MB)
kernel: sdb: Write Protect is off kernel: sdb: Mode Sense: 03 00 00 00
kernel: sdb: assuming drive cache: write through
kernel: SCSI device sdb: 1023998 512-byte hdwr sectors (524 MB)
kernel: sdb: Write Protect is off
kernel: sdb: Mode Sense: 03 00 00 00
kernel: sdb: assuming drive cache: write through
kernel:  sdb: sdb1
kernel: Attached scsi removable disk sdb at scsi3, channel 0, id 0,
lun 0 
kernel: usb-storage: device scan complete
scsi.agent[11087]:      sd_mod: loaded sucessfully (for disk)
udev[11100]: creating device node '/dev/sdb'
udev[11112]: creating device node '/dev/sdb1'
--- ende syslog ---


~/ udevinfo -q all -n /dev/sdb
P: /block/sdb
N: sdb


~/ udevinfo -a -p /block/sdb
device '/sys/block/sdb' has major:minor 8:16
  looking at class device '/sys/block/sdb':
    SUBSYSTEM="block"
    SYSFS{dev}="8:16"
    SYSFS{range}="16"
    SYSFS{removable}="1"
    SYSFS{size}="1023998"
    SYSFS{stat}="       1        3        8        6        0\
0        0        0        0        6        6"

follow the class device's "device"
  looking at the device chain at '/sys/devices/pci0000:00/\
0000:00:1f.2/usb1/1-1/1-1:1.0/host6/target6:0:0/6:0:0:0': BUS="scsi"\
ID="6:0:0:0" DRIVER="sd"
    SYSFS{device_blocked}="0"
    SYSFS{iocounterbits}="32"
    SYSFS{iodone_cnt}="0xb"
    SYSFS{ioerr_cnt}="0x2"
    SYSFS{iorequest_cnt}="0xb"
    SYSFS{max_sectors}="240"
    SYSFS{model}="Flash D"
    SYSFS{queue_depth}="1"
    SYSFS{queue_type}="none"
    SYSFS{rev}=""
    SYSFS{scsi_level}="3"
    SYSFS{state}="running"
    SYSFS{timeout}="30"
    SYSFS{type}="0"
    SYSFS{vendor}="Generic "


Um an die idVendor und idProduct Werte zu kommen habe ich folgenden
Aufruf verwendet (stammt noch aus meinen Notizen vom Januar)

~/ udevinfo -a -p /sys/devices/pci0000:00/0000:00:1f.2/usb1/1-1/
  looking at class device \
'/sys/devices/pci0000:00/0000:00:1f.2/usb1/1-1':
    SUBSYSTEM="unknown"
    SYSFS{bConfigurationValue}="1"
    SYSFS{bDeviceClass}="00"
    SYSFS{bDeviceProtocol}="00"
    SYSFS{bDeviceSubClass}="00"
    SYSFS{bMaxPower}="100mA"
    SYSFS{bNumConfigurations}="1"
    SYSFS{bNumInterfaces}=" 1"
    SYSFS{bcdDevice}="0102"
    SYSFS{bmAttributes}="80"
    SYSFS{devnum}="9"
    SYSFS{idProduct}="6386"
    SYSFS{idVendor}="058f"
    SYSFS{manufacturer}="Generic"
    SYSFS{maxchild}="0"
    SYSFS{product}="Mass Storage Device"
    SYSFS{serial}="00000000"
    SYSFS{speed}="12"
    SYSFS{version}=" 2.00"


Beim suchen im Internet bin ich darauf gestossen das es evtl. mit der
Art zusammen hängen kann wie das Modul usbcore die Gerätedaten
abfragt. Ein
  ~/ echo Y > /sys/module/usbcore/old_scheme_first 
hat aber auch nicht zum alten (funktionierenden) Verhalten von udev
beigetragen.

Nun hab ich einfach keine Ideen mehr was sich geändert hat und warum
es nicht mehr funktioniert.

netten Gruß
Frank
-- 
echo '23dd4-+dn10-P18+d4+d14+PPP[]pq'|dc



Reply to: