Проблема с установкой модулей (подлкючение флешки) в Gentoo 2006.0 [solved]
Windows 10 ноября, 2006 - 23:55
Скомпилировал ядро 2.6 -> make && make modules_install
"find /usr/src/linux/ -name *.o " выдает, что есть куча модулей с расширением .o .
Oднако make modules_install показывает, что идет копирование(установка) модулей _только_ с расширением .ko
И например команда modprobe usb-storage выдает, что модуль usb_storage not found.
Что не так делаю?
»
- Для комментирования войдите или зарегистрируйтесь
Вы делаете всё
Вы делаете всё правильно. .ko - это готовый модуль ядра, а .о это объектный файл - т.е. просто скомпилированный исходник - заготовка для модуля ядра.
OK, спасибо. С
OK, спасибо. С этим разобрался.
Осталась одна проблема - не могу смонтировать флэшку.
less /proc/bus/usb/devices выдает, что Product = Flash disk, Manufacturer=Generic на одной из шин (Bus=01, Lev = 01 и т.д.)
т.е. флешка вроде системой наблюдается. Когда же даю команду монтирования - mount -t vfat /dev/sda1 /mnt/flash - то появляется сообщение - sda1 is not valid block device.
dmesg | grep usb
usb1-2: new full speed device using uhci_hcd and address 3
Вcе нужные модули скомпилировал, как написано вот здесь
Только один нюанс - комп не новый:
less /proc/cpuinfo - Celeron (Mendocino) 501 Mhz (класса PII)
Может что-то с железом?
Флешка рабочая - нормально работает на соседней PIII-машине с Debian на борту и ядром 2.4. В Gentoo использую 2.6.
А файл /dev/sda1
А файл /dev/sda1 есть?
udev запущен?
> А файл /dev/sda1
> А файл /dev/sda1 есть?
Есть. Когда поставил udev, как написано вот здесь, sda* исчез.
# udevinfo -e | grep usb
P: /class/usb_device/usbdev1.1
N: bus/usb/001/001
P: /class/usb_device/usbdev1.2
N: bus/usb/001/002
#less /proc/bus/usb/devices
Bus=01, Lev = 01 и т.д.
Manufacturer=Generic
Product = Flash disk
#dmesg | grep SCSI
SCSI subsystem initialized
# mount -t vfat /dev/sda1 /mnt/flash
mount: special device /dev/sda1 does not exist
mount /sda - тоже самое
?
Стоп. А usb-storage у
Стоп. А usb-storage у тебя как компилится, модулем или в ядро?
> Стоп. А usb-storage
> Стоп. А usb-storage у тебя как компилится, модулем или в ядро?
Компилировался в ядро. Переделал. Сейчас модулем... Во время загрузки выдается сообщение - usb-storage подгружен. lsmod это подверждает.
Отключаю флешку. rmmod usb-storage. lsmod показывает usb-storage выгружен. Подключаю флешку, lsmod показывает, что ядро само подхватило usb-storage.
Однако /dev/sda1 при этом не создается.
?
А если файл
А если файл вручную создаешь, работает?
# mknod /dev/sda b 8 0
# mknod /dev/sda1 b 8 1
Процесс udev есть?
# pgrep -l udev
> А если файл
> А если файл вручную создаешь, работает?
Нет, если создать вручную, будет так - /dev/sda1 in not valid block device.
> Процесс udev есть?
Есть ->
# pgrep -l udev
1001 udevd
Видимо, все-таки что-то с железом...
Попробуй
Попробуй собрать с OHCI HCD.
fdisk -l что-нибудь кроме винтов показывает?
> fdisk -l
> fdisk -l что-нибудь кроме винтов показывает?
Нет, кроме винтов ничего
> Попробуй собрать с OHCI HCD.
Я собрал OHCI HCD и UHCI HCD модулями.
Когда подгружаю modprobe uhci-hcd, автоматически подхватывается usb_storage (видно по lsmod). C ohci-hcd такого эффекта не наблюдается.
Кроме того lspci -v | grep USB показывает: -if 00 [UHCI]
Значит, все-таки нужен UHCI.
Проблема
Проблема разрешилась самым неожиданным образом.
После внимательного рассмотрения dmesg, выяснилось, что udev подключает флешку на устройство uba:
udevinfo показало -
При попытке подмантировать uba1 командой mount -t vfat /dev/uba1 /mnt/flash выдалось сообщение -
В dmesg нашел причину -
Тогда в fstab прописал следующее -
После чего команды mount /mnt/flash прошла на Ура!
С устройства можно считывать и записывать файлы. Все работает нормально.
Подозреваю, что такая проблема может случаться на старых usb-контролерах.
несовсем так,
несовсем так, просто в ядре включена поодержка "медленного усб драйвера", там кстати и варнинг есть.
> просто в ядре
> просто в ядре включена поодержка "медленного усб драйвера", там кстати и варнинг есть.
Я ее на нашел. Подскажите, pls, где ее искать?
В Device Drivers -> USB support у меня стоит -
[ * ] Support for Host-side USB
[ * ] Usb device filesystem
< M > OHCI HCD support
< M > UHCI HCD support
< M > USB Mass Storage support
[ * ] USB Mass Storage verbose debug
< M > USB Human Interface Device (full HID) support
[ * ] HID input layer support
< M > eGalax TouchKit USB Touchscreen Driver
[ * ] USB Monitor
< M > Cypress USB thermometer driver support
< M > USB PhidgetServo support
видимо тут
видимо тут
Да, все верно!
Да, все верно! Когда отключаешь это -
CONFIG_BLK_DEV_UB:
Symbol: BLK_DEV_UB [=n]
Prompt: Low Performance USB Block driver
Defined at drivers/block/Kconfig:354
Depends on: USB
Location:
-> Device Drivers
-> Block devices
То flash'ка начинает определяться через /dev/sda1/
Где Вы раньше были? ;-) Столько времени потратил... ;(
Re: Где Вы раньше были? ;-) Столько времени потратил... ;(
на поиск по сайту? ;)
:))
Ты своим ником людей отпугиваешь :))
я?!! может мне
я?!!
может мне уйти? :)