OpenHarmony开发者论坛

标题: native c++ 中这么获取/dev目录下的字符设备文件权限? [打印本页]

作者: jyjy    时间: 2024-2-6 14:00
标题: native c++ 中这么获取/dev目录下的字符设备文件权限?
【问题描述】
问题现象和发生的背景
使用open打开/dev/vendor_storage,报错permission denied,已经在profile文件中设置"apl":"system_core","app-feature":"hos_system_app"。
还需要修改什么地方吗?还是系统下的文件路径需要映射?

相关的代码,截图,日志信息
int fd = open("/dev/vendor_storage", O_RDWR, 0);
if(fd<0)
{
    OH_LOG_ERROR(LOG_APP, "failed result:%{public}s \n", strerror(errno));
}
(, 下载次数: 18)

我尝试过的解决方法和结果
已经在profile文件中设置"apl":"system_core","app-feature":"hos_system_app"。
使用mount把/dev/vendor_storage挂在到虚拟文件目录下  创建/storage目录返回promission denied
还需要修改什么地方吗?还是系统下的文件路径需要映射?

我想要达到的结果
正常获取权限,open()函数打开/dev/vendor_storage字符设备文件成功。

【运行环境】
硬件:rk3568设备
ROM版本:
DevEvoStudio版本:3.1.1 release
SDK版本:3.2.12.5

作者: jyjy    时间: 2024-2-7 10:15
已经解决了,是selinux的Enforcing模式拒绝了访问,改成Permissive模式就可以了。
临时修改模式命令:
# setenforce 0




欢迎光临 OpenHarmony开发者论坛 (https://forums.openharmony.cn/) Powered by Discuz! X3.5