ls -1 / dev / {ashmem, binder} menghasilkan hasil yang diantisipasi untuk / dev / ashmem, tetapi kesalahan untuk / dev / binder

Aug 18 2020

Latar Belakang

Di postingan lain , saya melaporkan bahwa:

Saya menjalankan Ubuntu 20.04.1 dengan kernel default 5.4.0-42-generic (diinstal dari Utama) pada sistem UEFI. Saya ingin memuat dua modul kernel (" ashmem " dan " binder ") dengan Boot Aman diaktifkan. Setidaknya bagi saya, "binder" dimuat dengan baik dengan Secure Boot diaktifkan, tetapi "ashmem" tidak dimuat dengan Secure Boot diaktifkan. Kedua modul memuat dengan Secure Boot dinonaktifkan.

Di atas, saya akan menambahkan bahwa saya telah mengaktifkan Boot Aman (dan mendaftarkan MOK) selama instalasi bersih awal Ubuntu 20.04. Meski begitu, mengikuti saran luar biasa yang diberikan oleh Rinzwind , saya menjalankan yang berikut ini setelah instalasi awal:

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

Dan setelah menjalankan yang di atas, saya menjalankan kembali:

sudo modprobe ashmem_linux

sudo modprobe binder_linux

lsmod | grep -e ashmem_linux -e binder_linux

KEBERHASILAN! Baik "ashmem" dan "binder" dimuat! Terima kasih Rinzwind !!

Terlebih lagi, Anbox memulai untuk saya sekarang dengan Boot Aman diaktifkan, yang merupakan tujuan akhir saya. :)

Pesan eror

Meskipun "ashmem" dan "binder" sekarang dimuat, dan meskipun Anbox sekarang mulai (dan tampaknya berfungsi dengan baik) untuk saya sekarang dengan Boot Aman diaktifkan, saya masih menjalankan yang berikut:

ls -1 /dev/{ashmem,binder}

Dan saya mendapatkan yang berikut ini:

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

Sekarang, saya masih penasaran mengapa saya mendapatkan kesalahan di atas ("tidak dapat mengakses '/ dev / binder': Tidak ada file atau direktori seperti itu") yang berkaitan dengan modul "binder", dan apakah saya perlu khawatir.

Pertanyaan

  1. Haruskah / dev / binder dibuat saat memuat modul "binder"? (Dan haruskah kesalahan itu menjadi perhatian saya?)
  2. Jika / dev / binder harus dibuat saat memuat modul "binder", bagaimana saya bisa memaksa / dev / binder dibuat?
  3. Dan jika / dev / binder harus dibuat setelah memuat modul "binder" (yaitu, jika saya menemukan bug), di mana di Launchpad saya harus melaporkan kesalahan tersebut?

Untuk mengulangi, menurut lsmod, baik beban "ashmem" dan "binder". Juga, Anbox tampaknya berfungsi dengan baik untuk saya sekarang dengan Boot Aman diaktifkan. Saya memposting di sini untuk (a) memuaskan keingintahuan saya sendiri, (b) mendokumentasikannya untuk orang lain, dan (c) menentukan apakah laporan bug harus diajukan terkait binder (dan di mana menyimpannya, jika diperlukan).

Jawaban

4 GizmoChicken Aug 18 2020 at 08:42

Saat meninjau halaman instalasi untuk Anbox lebih dekat, saya memperhatikan yang berikut:

Di Ubuntu 19.10 driver binder tidak membuat / dev / binder saat dimuat. Itu disengaja. Sebagai gantinya, ia memberikan dukungan untuk binderfs ( lihat https://brauner.github.io/2019/01/09/android-binderfs.html ) yang merupakan PR anbox / anbox # 1309

Meskipun penjelasan di atas tidak secara khusus merujuk situasi untuk Ubuntu 20.04, saya menduga hal yang sama berlaku untuk itu. Dengan mengingat hal itu, berikut adalah jawaban yang diusulkan untuk pertanyaan saya sendiri:

  1. Tidak, / dev / binder tidak boleh dibuat saat memuat modul "binder". (Dan pesan kesalahan seharusnya tidak menjadi perhatian saya.)
  2. Tidak perlu (dan mungkin tidak ada cara) untuk memaksa / dev / binder dibuat.
  3. Tidak perlu melaporkan kesalahan ini di Launchpad (atau di tempat lain).

Jika ada yang ingin memberikan jawaban alternatif (lebih baik), silakan lakukan. Saya akan membiarkan pertanyaan ini terbuka selama beberapa hari, tetapi akan menandainya sebagai DIJAWAB jika saya tidak melihat jawaban / komentar tambahan dalam beberapa hari ke depan. :)