USB経由で私のボックスに接続されているAndroidデバイスで、Google Chromeに表示されているウェブサイトをデバッグしようとしています。この目的のために、リモートデバッグプロトコルは、Google ChromeとChromiumのデスクトップ版で実装されています。これは質問の文脈ですが、私の質問の本質ではありません。
ChromeとDevToolsがrootとして実行されると、デスクトップクロームはUSB接続のandroid-chromeと通信できます。/dev
root以外のユーザーには、一部の文字デバイスへの読み取り/書き込みアクセス権がないようです。だからChromeを実行するとヤロスラフ、USBデバイスのリストが空です。
ルートとして検出されたデバイス:
一般ユーザーには機器が不足しています。
ステイスが救出に来ます(?)
アプリケーション(デスクトップChrome)が自分のシステムでどのリソースにアクセスしようとしているのかを確認したいのですが、プラットフォームに関する知識が限られているので、何を探すべきかについてのアドバイスが必要です。以下は、アプリケーションで使用される一意のシステムコールのリストです。次のうち、USBデバイスとの通信/ネゴシエーション通話とは何かをご存知ですか?
access getrandom rename
arch_prctl getresgid rt_sigaction
bind getresuid rt_sigprocmask
brk getsockname rt_sigreturn
clock_getres gettid sched_getparam
clone ioctl sched_getscheduler
close listen sendmsg
connect lseek sendto
creat lstat setpriority
dup mkdir set_robust_list
eventfd2 mmap setsockopt
execve mprotect set_tid_address
fadvise64 mremap shutdown
fallocate msync socket
fcntl munmap socketpair
fstat open stat
fstatfs pipe statfs
ftruncate poll symlink
futex prctl sysinfo
getdents prlimit64 uname
geteuid read unlink
getpeername readlink wait4
getpid recvfrom write
getpriority recvmsg writev
私の考えでは、ChromeはUSBデバイスを検索できると思います(約80通)。
open("/sys/bus/pci/devices/0000:**:**.*/ \
{class,device,irq,resource,vendor}", O_RDONLY) = 153
しかし、ありません/dev
。では、一般ユーザーが読むためにどのデバイスを開く必要がありますか?
私のコンテンツは次のとおりです/dev
。
# ls -l hidraw* bus/usb/*/*
crw-rw-r-- 1 root usb 189, 0 180418 17:53 bus/usb/001/001
crw-rw-r-- 1 root usb 189, 1 180418 17:53 bus/usb/001/002
crw-rw-r-- 1 root usb 189, 128 180418 17:53 bus/usb/002/001
crw-rw-r-- 1 root usb 189, 129 180418 17:53 bus/usb/002/002
crw-rw-r-- 1 root usb 189, 256 180418 17:53 bus/usb/003/001
crw-rw-r-- 1 root usb 189, 257 180418 17:53 bus/usb/003/002
crw-rw-r-- 1 root usb 189, 258 180418 17:53 bus/usb/003/003
crw-rw-r-- 1 root usb 189, 259 180418 17:53 bus/usb/003/004
crw-rw-r-- 1 root usb 189, 260 180418 17:53 bus/usb/003/005
crw-rw---- 1 root plugdev 189, 263 180419 10:47 bus/usb/003/008
crw-rw-r-- 1 root usb 189, 384 180418 17:53 bus/usb/004/001
crw-rw-r-- 1 root usb 189, 385 180418 17:53 bus/usb/004/002
crw------- 1 root root 251, 0 180418 11:32 hidraw0
crw------- 1 root root 251, 1 180418 11:32 hidraw1
crw------- 1 root root 251, 2 180418 11:32 hidraw2
たぶん私がしなければならないことは追加するだけです。ヤロスラフ到着プラグ開発者グループ?ちなみに、これはudev 236を含むLinux 4.12.12です。
要約する:
- USB通信に関するシステムコールは何ですか?
/dev
ユーザーにアクセスを許可するにはどのノードが必要ですか?