Почему преобразователи USB-232 отваливаются в Виртуалбокс под Линуксом?
Есть АРМ с установленной Астро линухой и софт, который поддерживает только Windows, поэтому установил Oracle VirtualBox 7.0 под линукс, на нем раскатал Windows 10, установил ПО, пробросил usb-преобразователь интерфейса, все заработало - ПО увидело приборы.
Все работало около часа - потом обмен между ПО и приборами прекратился, перезапуск ПО не помог - помогла полная перезагрузка ВМ, либо отключение и проброс по новой ком-порта.
Всего 5 объектов с такими системами - 1 отваливается каждые 20минут-час, другая работает уже 2 недели стабильно после замены преобразователя (сейчас везде стоят одинаковые), остальные отваливаются через час-два - никакой закономерности.
Стоит сказать подобная система с данным ПО у меня стоит из-под Винды и трудится уже больше 3х лет, таких приколов ни разу не было.
Думал что может проблема в ВМ/Оракле/ПО/Преобразователе, но написать сюда меня сподвигло сегодняшнее общение с одним из разработчиков отечественного ПО, который поведал что у них при таких сборках (Линукс->Оракл->ВМ винды) на некоторых объектах, была проблема с отвалом проброшенных USB-hasp'ов, которые какое-то время работают, а потом система переходит в демо-режим из-за потери лицензии, хотя в диспетчере устройств данный ключ виден. И мой преобразователь тоже не "отваливается" физически, они в системе, просто прекращается обмен с приборами. Так вот, предположения пали именно на Хостовую ОС, данную проблему победить не удалось не им, ни мне.. Производители Астры дали несколько инструкций по отключению спящего режима ЮСБ в ядре и т.п., но проблема так и осталась.
Кто-нибудь сталкивался с данной проблемой? Победил? Потому как моя пока стоит на костылях с автоперезапуском ВМ по таймеру.
а в kvm не отваливается?
на сколько я знаю, у oracle проброс usb сделан ну очень тяп ляп, и работает это с очень небольшим количеством устройств (чудо что вообще работает)
в kvm же можно как пробросить все устройство (причем не usb а сразу serial), зачем это делать через usb посредника?
ну и на засыпку, kvm позволяет пробрасывать целый usb контроллер, это исключает многие косяки, которые могут наложиться из-за особенностей реализации портов в windows и linux, даже можно в ядре в загрузчике попросить не трогать устройство (т.е. оно даже не будет инициализировано до запуска виртуальной машины), такой подход должен быть самым надежным
Пытался я дома на гостевой ОС под ВБоксом, настроить kvm, но так и не совладал, на каждом шаге ошибки сыпались, и пул создал и права раздал, и в группы юзера добавил, по астровской инструкции, так и не запустил машину из-за запрета доступа. и бросил эту затею, либо у меня клешни, либо потому что астра сама уже на виртуалке стояла