現在、ユーザーが所有する0755ディレクトリの内容を一覧表示できません。

現在、ユーザーが所有する0755ディレクトリの内容を一覧表示できません。

プラットフォームは、ルート化されたAndroid 8.1携帯電話です(マジスク)そしてテモックス Android端末エミュレータとLinux環境アプリケーションインストールする。モバイルサーバーとして使用しています。

USBスマートカードリーダーを接続した後、ルートとしてUSBデバイスファイルを正常に表示できます。ただし、通常のユーザーとして、ユーザーをインクルードディレクトリの所有者として作成した後でも、これらのファイルは表示されません。

$ whoami
u0_a88
$ ls -l /sys/bus/usb/devices
ls: cannot open directory '/sys/bus/usb/devices': Permission denied
$ ls -ld /sys/bus/usb/devices
drwxr-xr-x 2 root root 0 Aug 20 08:48 /sys/bus/usb/devices
$ su
# whoami
root
# ls -l /sys/bus/usb/devices/
total 0
lrwxrwxrwx 1 root root 0 Aug 20 08:49 1-0:1.0 -> ../../../devices/soc/a800000.ssusb/a800000.dwc3/xhci-hcd.0.auto/usb1/1-0:1.0
lrwxrwxrwx 1 root root 0 Aug 20 08:49 1-1 -> ../../../devices/soc/a800000.ssusb/a800000.dwc3/xhci-hcd.0.auto/usb1/1-1
lrwxrwxrwx 1 root root 0 Aug 20 08:49 1-1:1.0 -> ../../../devices/soc/a800000.ssusb/a800000.dwc3/xhci-hcd.0.auto/usb1/1-1/1-1:1.0
lrwxrwxrwx 1 root root 0 Aug 20 08:49 2-0:1.0 -> ../../../devices/soc/a800000.ssusb/a800000.dwc3/xhci-hcd.0.auto/usb2/2-0:1.0
lrwxrwxrwx 1 root root 0 Aug 20 08:49 usb1 -> ../../../devices/soc/a800000.ssusb/a800000.dwc3/xhci-hcd.0.auto/usb1
lrwxrwxrwx 1 root root 0 Aug 20 08:49 usb2 -> ../../../devices/soc/a800000.ssusb/a800000.dwc3/xhci-hcd.0.auto/usb2
# chown u0_a88.u0_a88 /sys/bus/usb/devices
# exit
$ ls -ld /sys/bus/usb/devices
drwxr-xr-x 2 u0_a88 u0_a88 0 Aug 20 08:54 /sys/bus/usb/devices
~$ ls -l /sys/bus/usb/devices
ls: cannot open directory '/sys/bus/usb/devices': Permission denied

ここで何が起こっているのでしょうか?

ベストアンサー1

私が見つけた限り、これは次のようなことがあるかもしれません。SELinux:

$ su
# getenforce
Enforcing

次の例に示すように、一般ファイルに一般ユーザーアクセス権を付与できます。

$ su
# echo foo >bar
# exit
$ cat foo
cat: bar: Permission denied
$ su
# ls -Z bar
u:object_r:app_data_file:s0 bar
# restorecon bar
SELinux: Loaded file_contexts
# ls -Z bar
u:object_r:app_data_file:s0:c512,c768 bar
# chown u0_a88.u0_a88 bar
# exit
$ cat bar
foo

ただし、restoreconand を使用するだけchmodでは、次の項目にアクセスできません/sys/bus/usb/devices

# restorecon /sys/bus/usb/devices
# chown u0_a88.u0_a88 /sys/bus/usb/devices
# ls -Zd /sys/bus/usb/devices
u:object_r:sysfs:s0
# exit
$ ls -ld /sys/bus/usb/devices
drwxr-xr-x 2 u0_a88 u0_a88 0 Aug 23 11:49 /sys/bus/usb/devices
$ ls -l /sys/bus/usb/devices
ls: cannot open directory '/sys/bus/usb/devices': Permission denied

システムが壊れるかどうか心配で、パス上の権限を変更しようとしませんでした。

(私の説明が正しいようです。SELinuxをご存知の方が回答していただければ幸いです。)

おすすめ記事