ls -1 / dev / {ashmem, binder} дает ожидаемый результат для / dev / ashmem, но ошибку для / dev / binder

Фон

В другом сообщении я сообщил, что:

Я использую Ubuntu 20.04.1 с ядром по умолчанию 5.4.0-42-generic (устанавливается из Main) в системе UEFI. Я хочу загрузить два модуля ядра (« ashmem » и « связыватель ") с включенной безопасной загрузкой. По крайней мере, для меня" binder "загружается нормально с включенной безопасной загрузкой, но" ashmem " не загружается с включенной безопасной загрузкой. Оба модули загружаются с отключенной безопасной загрузкой.

Для вышеуказанного, Добавлю, что я включил безопасную загрузку (и зарегистрировал MOK) во время начальной чистой установки Ubuntu 20.04. Тем не менее, следуя отличному предложению, предоставленному Ринцвиндом , я выполнил следующее после начальной установки:

sudo kmodsign sha512 /var/lib/shim-signed/mok/MOK.priv /var/lib/shim-signed/mok/MOK.der /lib/modules/`uname -r`/kernel/drivers/staging/android/ashmem_linux.ko

И после выполнения вышеупомянутого, я повторно run:

sudo modprobe ashmem_linux

sudo modprobe binder_linux

lsmod | grep -e ashmem_linux -e binder_linux

УСПЕХ! И «ашмем», и «связующее» загружены! Спасибо, Rinzwind !!

Более того, Anbox теперь запускается для меня с включенной безопасной загрузкой, что было моей конечной целью. :)

Сообщение об ошибке

Хотя теперь загружаются и «ashmem», и «binder», и хотя Anbox теперь запускается (и, кажется, работает правильно) для меня теперь с включенной безопасной загрузкой, я все равно выполнил следующее:

ls -1 /dev/{ashmem,binder}

И я получил следующее:

ls: cannot access '/dev/binder': No such file or directory
/dev/ashmem

Теперь, Мне все еще любопытно , почему я получаю указанную выше ошибку («не могу получить доступ к '/ dev / binder': нет такого файла или каталога») в отношении модуля «связывателя» и должен ли я

Вопросы

  1. Следует ли создавать / dev / binder при загрузке модуля «binder»? (И должна ли ошибка меня беспокоить?)
  2. Если / dev / binder должен быть создан при загрузке модуля «binder», как я могу принудительно создать / dev / binder?
  3. И если / dev / binder должен быть создан? быть создан при загрузке модуля «связующего» (то есть, если я обнаружил ошибку), где на Launchpad я должен сообщить об ошибке?

Повторяю, согласно lsmod, как «ashmem», так и «связующее» загружают . Кроме того, Anbox , похоже, теперь у меня работает правильно с включенной безопасной загрузкой. Я пишу здесь, чтобы (а) удовлетворить свое любопытство, (b) задокументируйте это для других, и (c) определите, следует ли отправлять отчет об ошибке в отношении подшивки (и куда его хранить, если это необходимо).

0
задан 17 August 2020 в 20:44

1 ответ

При более внимательном рассмотрении страницы установки для Anbox я заметил следующее:

В Ubuntu 19.10 драйвер связывателя не создает / dev / binder при загрузке. Это сделано намеренно. Вместо этого он обеспечивает поддержку binderfs ( см. Https://brauner.github.io/2019/01/09/android-binderfs.html), которая вместо этого, поскольку PR anbox / anbox # 1309

Хотя вышесказанное не относится конкретно к ситуации для Ubuntu 20.04, я предполагаю , что то же самое применимо и к нему. Имея это в виду, вот предлагаемые ответы на мои собственные вопросы:

  1. Нет, / dev / binder не должен создаваться при загрузке модуля «binder». (И сообщение об ошибке меня не должно беспокоить.)
  2. Нет необходимости (и, вероятно, нет способа) принудительно создавать / dev / binder.
  3. Вот ' s нет необходимости сообщать об этой ошибке на Launchpad (или где-либо еще).

Если кто-то хочет дать альтернативный (лучший) ответ, пожалуйста, сделайте это. Я оставлю этот вопрос открытым на несколько дней, но помечу его как ОТВЕТАННЫЙ, если не увижу дополнительных ответов / комментариев в течение следующих нескольких дней. :)

0
ответ дан 21 August 2020 в 07:57

Другие вопросы по тегам:

Похожие вопросы: