Смонтируйте usbfs в ядре Linux 3.10
Я обновил ядро Linux с версии 2.6 до версии 3.10. В init nn 2.6 я установил usbfs mount -t usbfs usbfs /proc/bus/usb -onodev,nosuid,noexec
Чтобы включить usbfs я сделал CONFIG_USB_DEVICEFS=y
а также CONFIG_USB_DEVICE_CLASS=y
в конфигурации ядра, но они устарели в ядрах 3.10
Так как же эмулировать usbfs на ядре 3.10? Я нашел следующую тему https://bugs.launchpad.net/ubuntu/+source/linux/+bug/488274
Где рекомендуется сделать
mount --bind /dev/bus /proc/bus
ln -s /sys/kernel/debug/usb/devices /proc/bus/usb/devices
но mount --bind /dev/bus /proc/bus
говорит мне
mount: special device /dev/bus does not exist
Здесь нет /dev/bus
совсем
У кого-нибудь есть мысли, которые могут мне помочь?
2 ответа
У меня такая же проблема. Причиной этой проблемы является то, что libusb
смотрит в /dev/bus/usb
, но последние ядра перемещают это в sysfs
под /sys/bus/usb
,
Что я сделал ln -s /sys/bus /dev/bus
создать symlink
от dev
в sys
чтобы libusb
может найти подсистему USB.
Кроме того, вы можете использовать крепление для привязки. Проблема с вашей командой в том, что целевая точка монтирования должна существовать до того, как монтирование связывания может быть успешным. В этом случае mkdir /dev/bus
,
Мне пришлось заставить мою C-программу работать с подключенным к USB USB-дисплеем на коробке SuperMicro, работающей под управлением CentOS 7. После устаревания usbfs библиотеки / proc / bus / usb переместились. В /etc/rc.local:
#
/usr/bin/mount --bind /dev/bus /proc/bus
/usr/bin/ln -s /sys/bus /dev/bus
/usr/bin/ln -s /sys/kernel/debug/usb/devices /proc/bus/usb/devices
Мне также пришлось обновить параметры загрузки ядра grub2 в /etc/default/grub (а затем запустить grub2-mkconfig), чтобы вернуть мои стандарты именования ole "eth0", чтобы я мог редактировать сетевые конфигурации через панель lcd:
GRUB_CMDLINE_LINUX="net.ifnames=0 biosdevname=0"