Изменить: Я хотел бы немного упростить вопрос:

Основная проблема заключается в следующем: /dev /sda создается при загрузке независимо от того, вставлен ли мой USB-накопитель или нет. Если я вручную запустил rm /dev /sda, udev будет работать правильно, пока я не перезагружусь, после чего /dev /sda волшебным образом появится снова!

Оригинальный вопрос следует:

Я использую сборку Yocto Linux на встроенной плате и столкнулся с проблемой.

В новой сборке, когда я подключаю USB-накопитель к плате, он отображается как /dev /sda и /dev /sda1 (отлично!). Когда я отключаю диск, эти записи исчезают (тоже здорово!).

Проблема возникает после того, как я копирую дублированную корневую файловую систему на плату через USB-накопитель (чтобы я мог полностью обновить систему на плате). Все работает нормально, пока я не перезагружаюсь, когда внезапно /dev /sda и /dev /sda1 существуют независимо от того, вставлен ли USB-накопитель или нет.

Я проверил разрешения, и они выглядят одинаково в обоих случаях. Я попытался удалить файлы, но они появляются снова при следующей перезагрузке. Два файла не копируются с новой корневой файловой системой. Мое приложение использует наличие этих файлов, чтобы определить, вставлен ли диск, поэтому важно, чтобы они работали правильно.

Есть идеи?

Спасибо

Marlon

1 ответ1

1

Измените способ проверки USB-накопителя, поскольку этот ненадежен.

Используйте lsusb или check /proc/scsi/usb-storage . В обоих случаях вы получаете много информации из ядра, поэтому вы можете поиграть с такими вещами, как переключение на другую логику в зависимости от поставщика или серийного номера :)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .