Определения файла устройства [SOLVED]

Hi there,

Подскажите, пожалуйса, как определить какой файл (/dev/*) какому устройству отвечает. В частности не могу смонтировать флешку:

uvsoft linux-2.6.15-gentoo-r1 # mount -t vfat /dev/sda /mnt/flash/
mount: /dev/sda is not a valid block device
uvsoft linux-2.6.15-gentoo-r1 # mount -t vfat /dev/sda1 /mnt/flash/
mount: /dev/sda1 is not a valid block device

ядро собрано с поддержкой USB Mass Storage.

--
Regards,
UVSoft.

Вставить

Вставить флешку, снова выполнить dmesg. В конце будет написано имя файла флешки.

вот так вот...

uvsoft soft # dmesg
......
usb 3-2: new full speed USB device using uhci_hcd and address 4
scsi1 : SCSI emulation for USB Mass Storage devices
usb-storage: device found at 4
usb-storage: waiting for device to settle before scanning
Vendor: USB Model: Mass Sorage Rev: 1.23
Type: Direct-Access ANSI SCSI revision: 00
1:0:0:0: Attached scsi generic sg0 type 0
usb-storage: device scan complete

uvsoft soft # mount -t vfat /dev/sg0 /mnt/flash/
mount: /dev/sg0 is not a block device

uvsoft soft # ls -l /dev/sg0
crw-rw---- 1 root root 21, 0 Фев 26 06:09 /dev/sg0

вот так вот.... и что из этого всего подключать?
--
Regards,
UVSoft.

В ядре должна

В ядре должна быть поддержка SCSI ....

На ЛОРе есть

На ЛОРе есть хорошая статейка на эту тему, поищи....

поделись

поделись пожалуйста ссылкой....

если ты про эту

http://www.linux.org.ru/books/ru-linux-faq/rulinux.faq-7.html#ss7.10

то прочитал раздел Mass Storage Devices, вроде у меня все так, однако смонтировать не могу

udevmonitor

запусти udevmonitor из под root'а и попробуй вставь/вынь, а вообще диски в /dev/disk/by-что-нибудь появляются

uvsoft soft # which

uvsoft soft # which udevmonitor
which: no udevmonitor in (/sbin:/bin:/usr/sbin:/usr/bin)

uvsoft soft # emerge udevmonitor
Calculating dependencies
emerge: there are no ebuilds to satisfy "udevmonitor".

udevmonitor

э-э-э... udevmonitor - помоему часть UDEV, у тебя udev есть?

uvsoft soft #

Спасибо, но как из этого всего определить что монтировать?

uvsoft soft # udevmonitor
udevmonitor prints the received event from the kernel [UEVENT]
and the event which udev sends out after rule processing [UDEV]

UEVENT[1141128193.450905] add@/devices/pci0000:00/0000:00:1d.1/usb3/3-2
UEVENT[1141128193.452059] add@/devices/pci0000:00/0000:00:1d.1/usb3/3-2/3-2:1.0
UEVENT[1141128193.452119] add@/class/scsi_host/host0
UEVENT[1141128193.452145] add@/class/usb_device/usbdev3.3
UEVENT[1141128198.459626] add@/devices/pci0000:00/0000:00:1d.1/usb3/3-2/3-2:1.0/host0/target0:0:0/0:0:0:0
UEVENT[1141128198.459694] add@/class/scsi_device/0:0:0:0
UEVENT[1141128198.459712] add@/class/scsi_generic/sg0

и вот ты что-то еще говорил насчет /dev/disks/... такого нет, есть вот что:

uvsoft soft # ls -R /dev/discs/
/dev/discs/:
disc0 disc1

/dev/discs/disc0:
disc part1 part2 part5

/dev/discs/disc1:
disc part1 part2 part5 part6

зайди

зайди в /dev там есть папка disk(вроде) а вней есть ещё папки by-id,
by-label, и т.д. их 4 пошарься в них

у меня нет

у меня нет папки /dev/disk, есть /dev/discs/, в ней disc0, disc1

soft@uvsoft /dev/discs/disc0 $ ls -l
итого 0
lrwxrwxrwx 1 root root 9 Мар 1 2006 disc -> ../../hda
lrwxrwxrwx 1 root root 10 Мар 1 2006 part1 -> ../../hda1
lrwxrwxrwx 1 root root 10 Мар 1 2006 part2 -> ../../hda2
lrwxrwxrwx 1 root root 10 Мар 1 2006 part5 -> ../../hda5

soft@uvsoft /dev/discs/disc1 $ ls -l
итого 0
lrwxrwxrwx 1 root root 9 Мар 1 2006 disc -> ../../hdb
lrwxrwxrwx 1 root root 10 Мар 1 2006 part1 -> ../../hdb1
lrwxrwxrwx 1 root root 10 Мар 1 2006 part2 -> ../../hdb2
lrwxrwxrwx 1 root root 10 Мар 1 2006 part5 -> ../../hdb5
lrwxrwxrwx 1 root root 10 Мар 1 2006 part6 -> ../../hdb6

вот тут

вот тут посмотрел темы про usb устройста....

uvsoft ~ # lsmod
Module Size Used by
nvidia 4093232 12

вроде сдесь должно быть еще что-то вроде usbcore, usb_storage, еще там что-то.... так ли это, и если да, то где достать сие модули. Или просто они у меня собраны монолитно с ядром... В ядре поддержка включена.

uvsoft ~ # cat /usr/src/linux/.config | grep -v "#" | grep -i usb
CONFIG_USB_ARCH_HAS_HCD=y
CONFIG_USB_ARCH_HAS_OHCI=y
CONFIG_USB=y
CONFIG_USB_DEVICEFS=y
CONFIG_USB_EHCI_HCD=y
CONFIG_USB_UHCI_HCD=y
CONFIG_USB_PRINTER=y
CONFIG_USB_STORAGE=y
CONFIG_USB_HID=y
CONFIG_USB_HIDINPUT=y
CONFIG_USB_EGALAX=m
CONFIG_USB_MON=y
CONFIG_USB_CYTHERM=m
CONFIG_USB_PHIDGETSERVO=m

uvsoft ~ # modprobe usbcore
FATAL: Module usbcore not found.
uvsoft ~ # modprobe usb_storage
FATAL: Module usb_storage not found.

uvsoft ~ # cat /proc/bus/usb/devices

T: Bus=05 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2
B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0
D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 2.06
S: Manufacturer=Linux 2.6.15-gentoo-r1 uhci_hcd
S: Product=UHCI Host Controller
S: SerialNumber=0000:00:1d.3
C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr= 0mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms

T: Bus=04 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2
B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0
D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 2.06
S: Manufacturer=Linux 2.6.15-gentoo-r1 uhci_hcd
S: Product=UHCI Host Controller
S: SerialNumber=0000:00:1d.2
C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr= 0mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms

T: Bus=03 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2
B: Alloc= 93/900 us (10%), #Int= 1, #Iso= 0
D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 2.06
S: Manufacturer=Linux 2.6.15-gentoo-r1 uhci_hcd
S: Product=UHCI Host Controller
S: SerialNumber=0000:00:1d.1
C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr= 0mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms

T: Bus=03 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=1.5 MxCh= 0
D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=046d ProdID=c03e Rev=20.00
S: Manufacturer=Logitech
S: Product=USB-PS/2 Optical Mouse
C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr= 98mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=02 Driver=usbhid
E: Ad=81(I) Atr=03(Int.) MxPS= 4 Ivl=10ms

T: Bus=03 Lev=01 Prnt=01 Port=01 Cnt=02 Dev#= 3 Spd=12 MxCh= 0
D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=1005 ProdID=a001 Rev= 1.21
C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=100mA
I: If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
E: Ad=81(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms
E: Ad=02(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms

T: Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2
B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0
D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 2.06
S: Manufacturer=Linux 2.6.15-gentoo-r1 uhci_hcd
S: Product=UHCI Host Controller
S: SerialNumber=0000:00:1d.0
C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr= 0mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms

T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=480 MxCh= 8
B: Alloc= 0/800 us ( 0%), #Int= 0, #Iso= 0
D: Ver= 2.00 Cls=09(hub ) Sub=00 Prot=01 MxPS=64 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 2.06
S: Manufacturer=Linux 2.6.15-gentoo-r1 ehci_hcd
S: Product=EHCI Host Controller
S: SerialNumber=0000:00:1d.7
C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr= 0mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=256ms

Есть у меня

Есть у меня мысль дать тебе свой конфиг ядра. Посмотришь как сделано и сравнишь со своим. Авось какие мысли и появтся.

различия наших

различия наших конфиков по все параметрам со вхождением строки USB:

это все есть у меня но нет у тебя:
CONFIG_USB_DEVICEFS=y
CONFIG_USB_UHCI_HCD=y
CONFIG_USB_PRINTER=y
CONFIG_USB_HID=y
CONFIG_USB_HIDINPUT=y
CONFIG_USB_EGALAX=m
CONFIG_USB_MON=y
CONFIG_USB_CYTHERM=m
CONFIG_USB_PHIDGETSERVO=m

блин я не понимаю, неужели нет какого-нибудь универсального способа выяснить какой файл какому устройству отвечает и наоборот, что за тупость? ведь видно же например через тот же самый udevmonitor что при подключении и отключении ядро все подхватывает....

Я тут подумал...

Я тут подумал...
у тебя UDEV какой версии?

UVSoft написал(а):
блин я не понимаю, неужели нет какого-нибудь универсального способа выяснить какой файл какому устройству отвечает и наоборот, что за тупость? ведь видно же например через тот же самый udevmonitor что при подключении и отключении ядро все подхватывает....

дело в том, что udev в соответствии с правилами кидает ссылку на device. А правила хоть сам составляй - device он твой видит

P.S. у меня в fstab ещё про usb написано что оно монтируется(сама шина):

/proc/bus/usb none usbfs

правда я незнаю нужно или нет...

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".