linux文件权限报错实例,自定义系统service SELinux权限报错

报错:

E SELinux : avc:  denied  { add } for service=flashlight pid=3485 uid=1000 scontext=u:r:system_server:s0 tcontext=u:object_r:default_android_service:s0 tclass=service_manager permissive=1

添加权限:

android\out\target\product\product-xxx\root\service_contexts

Android源码添加自定义系统服务

http://www.cnblogs.com/liam999/p/5933827.html

android\device\xxx\sepolicy

android\system\sepolicy

报错:

01-01 07:34:37.870  3704  3704 E flashlightHAL: Failed to open device file /sys/class/leds/flashlight/brightness -- Permission denied.

修改文件权限:(类似)

@ubuntu-server:~$ grep -rsn "timed_output" android/device/ android/system/

android/device/xxx/common/rootdir/etc/init.xxx.factory.rc:224:    chown system system /sys/class/timed_output/vibrator/enable

android/device/xxx/common/rootdir/etc/init.xxx.factory.rc:237:    chown system system /sys/class/timed_output/vibrator/enable

android/system/core/rootdir/init.rc:565:    chown system system /sys/class/timed_output/vibrator/enable

android/system/core/rootdir/init.rc:577:    chown system system /sys/class/timed_output/vibrator/enable

android/system/sepolicy/dumpstate.te:87:# /sys/class/timed_output/vibrator/enable

一、ramdisk介绍

ramdisk通过直面意思就大概能理解意思,ram disk虚拟内存盘,将ram模拟成硬盘来使用的文件系统。对于传统的磁盘文件系统来说,这样做的好处是可以极大提高文件访问速度;但由于是ram,所以在掉电后,这部分内容不能保存。ramdisk文件系统是在系统上电后直接从磁盘一次性加载到内存,在整个运行期间都不会有写回操作,所以,任何修改都掉电后丢失。

二、ramdisk.img介绍

ramdisk.img是编译Android生成的一个镜像文件,最后和kernel一起打包生成boot.img镜像。ramdisk.img中主要是存放android启动后第一个用户进程init可执行文件和init.*.rc等相关启动脚本以及sbin目录下的adbd工具。如下图所示

ramdisk.img是将上图目录打包压缩而来的,我们可以通过下面命令,来解压出其中的内容

首先使用file命令查看ramdisk.img文件类型

file ramdisk.imgramdisk.img: gzip compressed data, from Unix

看出为gzip压缩过的文件,将ramdisk.img重命名为ramdisk.img.gzmv ramdisk.img ramdisk.img.gz再用file来看一下ramdisk.img,此时为

ramdisk.img: ASCII cpio archive (SVR4 with no CRC)

这时候使用cpio来提取ramdisk.img中的内容mkdir temp

cp temp

cpio -i -F ../ramdisk.img

android的init.rc脚本就是ramdisk一个例子,在板子上修改是没有用的,重启丢失,只有修改device/平台/../init.rc然后重新make bootimage重新生产boot.img烧录到板子上才能修改成功

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/405732.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Silverlight动画制作之From/To/By基本动画

Silverlight动画制作之From/To/By基本动画From/To/By基本动画其中包含了三个最重要的属性:From;To;By。From指的是对象目标属性的起始值,To指的是对象目标属性的结束值,By指的是结束状态相对于起始状态的偏移量。这里我…

NFS配置管理

From: http://www.goooogle.com.cn/Article/NFS-configuration-and-management.aspx 1. NFS概述 NFS即网络文件系统,是主机间通过网络进行文件共享的网络协议,最早由Sun公司提出的,多用于Unix操作系统(Windows中也有相应版本的实现) 。 NFS…

svn相关操作

1. add操作 svn add 操作可以添加 转载于:https://www.cnblogs.com/bufferfly/p/4566305.html

Qt中如何获得文件和文件夹的路径信息

一、添加头文件 #include <QFile> #include <QFileInfo> #include <QFileDialog> 二、具体操作 void MainWindow::ShowFilePath() {ui->textEdit->append("请选择文件夹路径...");QString FileDirPath QFileDialog::getExistingDirector…

llvm编译linux,在Linux上编译LLVM/Clang 8.0.0等全部源代码

本教程使用的操作系统是Ubuntu Linux 18.04.2 LTS版本&#xff0c;编译器是GCC 6.5.0(不用新版的原因是某些代码不支持更高的版本)&#xff0c;要编译的LLVM源代码是8.0.0。1、安装必要的软件。它们是&#xff1a;build-essential/gcc-6/g-6/cmake/swig/python-swigpk/libxml2/…

Shit和trash不是评价设计的词汇

昨天听了一个年轻人的讲座&#xff0c;讲座将敏捷上升到精神层面&#xff0c;变为一种行为模式&#xff0c;论点是&#xff0c;凡事追求快捷&#xff0c;节省时间&#xff0c;要从意识上重视这种节省&#xff0c;避免浪费&#xff0c;这就是敏捷精神。 比如&#xff0c;如果使用…

linux下tree命令详解

From:http://blog.163.com/ly_89/blog/static/186902299201161302812880/ linux下tree命令详解---linux以树状图逐级列出目录的内容命令##############################################################################################命令格式tree <选项或者是参数> …

JavaScript(js)的replace问题的解决

我是前端的门外汉&#xff0c;js我用得比较少。今天意外发现js自带的replace “居然”只替换1处&#xff0c;而其它的许多许多语言都是替换全部的。你可能会说&#xff0c;切&#xff0c;我早就知道。高手请绕道。你可能会说&#xff0c;用js的正则就可以解决这个问题。对&…

在 Delphi 中调用 JavaScript(二)

本例效果图: 代码文件: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 class(TForm) Memo1: TMemo; Button1: TButton; Edit1: TEdit; Label1: TLabel; procedure Button1Click(…

STM32 软件重启导致死机的情况分析

一、背景 在一个项目中需要用到看门狗和软件重启&#xff0c;但是在工作过程中发现存在一种情况会导致STM32死机&#xff0c;经过分析是软件重启过程中复位信号被外部电路强制拉高&#xff0c;无法在复位后4个时钟拉低复位管脚&#xff0c;因此&#xff0c;将该复位引脚断开和…

linux 中查找文件,并且将目标文件按时间顺序排序

From: http://blog.csdn.net/linhx/article/details/5440288 linux 中&#xff0c;在redhat中检测过了&#xff0c;查找文件&#xff0c;并且将目标文件按时间顺序排序&#xff0c;这里是从近到远&#xff0c;从迟到早的顺序&#xff0c; 查找当前目录下的所有 version.ini文件…

linux进程和计划任务,linux进程和计划任务

内核的功用&#xff1a;进程管理、文件系统、网络功能、内存管理、驱动程序、 安全功能等进程管理&#xff1a;系统优先级&#xff1a;数字越小&#xff0c;优先级越高实时优先级&#xff1a; 99-0&#xff0c;值最大优先级最高nice值&#xff1a;-20 到19 &#xff0c;对应系统…

React开发(216):ant dedign 弹窗销毁后再打开,原来的值仍存在,如何销毁弹窗内容?

<Modaltitle"新增对账流水"visible{visible}onOk{() > {formRef.current.handleSubmit();}}onCancel{onClose}okText"确认"cancelText"取消"width{800}destroyOnClose // 关闭时销毁子元素>加destroyOnClose 属性&#xff0c;关闭时销毁…

新浪微博

转载于:https://blog.51cto.com/js5323/452656

嵌入式C开发中用到的位域结构体

一、位域描述 存放一个开关量或者其他开关状态时&#xff0c;用一位二进位即可。为了减少嵌入式内存资源的开销&#xff0c;可以使用位域进行定义&#xff0c;位域是C语言支持的一种数据结构&#xff0c;称为“位域”或“位段”。“位域”是把一个字节中的每个位划分为几个不同…

linux可配置哪些服务,linux操作系统下服务配置

linux操作系统下服务配置 (5页)本资源提供全文预览&#xff0c;点击全文预览即可全文预览,如果喜欢文档就下载吧&#xff0c;查找使用更方便哦&#xff01;17.90 积分实用标准文案数学与信息技术学院实 验 报 告实验课程名称&#xff1a; 信息系统与系统集成 实验项目名称&…

你会给别人提反馈吗?

几个例子 你会提反馈吗&#xff1f;不急回答&#xff0c;我们先来看几个例子。 例子一: 项目经理&#xff1a;“xxx&#xff0c;我本来对你的期望特别高&#xff0c;但是你让我有些失望啊。” xxx&#xff1a;“啊&#xff0c;不知道哪些地方做的不好呢&#xff1f;” 项目经理…