ls -1 / dev / {ashmem, binder} produce un resultado anticipado para / dev / ashmem, pero un error para / dev / binder

Aug 18 2020

Antecedentes

En otra publicación , informé que:

Estoy ejecutando Ubuntu 20.04.1 con el kernel predeterminado 5.4.0-42-generic (instalado desde Main) en un sistema UEFI. Quiero cargar dos módulos del kernel (" ashmem " y " binder ") con Secure Boot habilitado. Al menos para mí, "binder" se carga bien con Secure Boot habilitado, pero "ashmem" no se carga con Secure Boot habilitado. Ambos módulos se cargan con Secure Boot desactivado.

A lo anterior, agregaré que habilité el Arranque seguro (e inscribí MOK) durante la instalación limpia inicial de Ubuntu 20.04. Aun así, siguiendo la excelente sugerencia proporcionada por Rinzwind , ejecuté lo siguiente después de la instalación inicial:

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

Y después de ejecutar lo anterior, volví a ejecutar:

sudo modprobe ashmem_linux

sudo modprobe binder_linux

lsmod | grep -e ashmem_linux -e binder_linux

¡ÉXITO! ¡Se cargaron "ashmem" y "binder"! ¡¡Gracias Rinzwind !!

Es más, Anbox comienza ahora para mí con Secure Boot habilitado, que era mi objetivo final. :)

Mensaje de error

Aunque ahora se cargan "ashmem" y "binder", y aunque Anbox ahora se inicia (y parece funcionar correctamente) para mí ahora con el Arranque seguro habilitado, todavía ejecuté lo siguiente:

ls -1 /dev/{ashmem,binder}

Y obtuve lo siguiente:

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

Ahora, todavía tengo curiosidad por saber por qué recibo el error anterior ("no se puede acceder a '/ dev / binder': no existe tal archivo o directorio") con respecto al módulo "binder", y si debería preocuparme.

Preguntas

  1. ¿Debería crearse / dev / binder al cargar el módulo "binder"? (¿Y debería preocuparme el error?)
  2. Si / dev / binder debe crearse al cargar el módulo "binder", ¿cómo puedo forzar la creación de / dev / binder?
  3. Y si / dev / binder debe crearse al cargar el módulo "binder" (es decir, si he descubierto un error), ¿en qué lugar del Launchpad debo informar del error?

Reiterar, según lsmod, tanto la carga “ashmem” como la “aglutinante”. Además, Anbox parece funcionar correctamente para mí ahora con Secure Boot habilitado. Estoy publicando aquí para (a) satisfacer mi propia curiosidad, (b) documentar esto para otros y (c) determinar si se debe presentar un informe de error con respecto a la carpeta (y dónde presentarlo, si se justifica).

Respuestas

4 GizmoChicken Aug 18 2020 at 08:42

Al revisar la página de instalación de Anbox más de cerca, noté lo siguiente:

En Ubuntu 19.10, el controlador de binder no crea / dev / binder cuando se carga. Eso es intencional. En su lugar, proporciona soporte para binderfs ( consulte https://brauner.github.io/2019/01/09/android-binderfs.html ) que es desde PR anbox / anbox # 1309

A pesar de lo anterior no se refiere específicamente a la situación para Ubuntu 20.04, estoy adivinando que lo mismo se aplica a ella. Con eso en mente, aquí se proponen respuestas a mis propias preguntas:

  1. No, / dev / binder no debería crearse al cargar el módulo "binder". (Y el mensaje de error no debería preocuparme).
  2. No es necesario (y probablemente no hay forma) de forzar la creación de / dev / binder.
  3. No es necesario informar este error en Launchpad (o en otro lugar).

Si alguien quiere brindar una respuesta alternativa (mejor), no dude en hacerlo. Dejaré esta pregunta abierta durante unos días, pero la marcaré como RESPUESTA si no veo ninguna respuesta o comentario adicional en los próximos días. :)