Android 设备节点权限说明
文章目录
selinux 权限
android使用selinux安全,需要关闭selinux才能打开设备节点
1. 临时关闭selinux(重启后失效)
# 关闭:setenforce 0
# 打开:setenforce 1
# 查看:getenforce
2. 源码selinux改成警告模式(无法关掉整个selinux)
修改 system/core/init/selinux.cpp
bool IsEnforcing() {
+ return false; //add to close selinux
if (ALLOW_PERMISSIVE_SELINUX) {
return StatusFromCmdline() == SELINUX_ENFORCING;
}
return true;
}
或者
在device/qcom/msm8953_64/BoardConfig.mk文件修改模式androidboot.selinux=permissive
设备节点文件权限
设备节点权限默认:0660,操作设备节点需要:0666
1. 临时加权限(重启后失效)
chmod 666 /dev/ttyHSL1
2. 源码修改权限
修改 system/core/rootdir/ueventd.rc (失效)
添加:
/dev/ttyHSL1 0666 root root
/dev/ttyHSL2 0666 root system
在启动脚本中修改(生效)
chmod 666 /dev/ttyHSL1
chmod 666 /dev/spidev7.0
APP权限
# frameworks/base/services/core/java/com/android/server/pm/permission/PermissionManagerService.java
备注
作者 [@lhgcs]
2020 年 07月 03日