初始化警告:服务 myservice 需要定义 SELinux 域。请修复

2024-01-04

我想在启动时执行可执行文件在 Android 5.1 的目标板上所以我将其添加到 init.rc 中:

on boot
    start myservice

service myservice /system/bin/myservice
    #class main
    user root
    group root
    #oneshot   

我做了拆包和重新包装的工作。
然而,当进行更改时,屏幕会继续打印:

 init warning: Service myservice needs a SELinux domain defined. Please fix.
 type=1400 ... avc:denied ... scontext ... tcontext ... #some annoying warning messages like this

SELinux 对我来说似乎是一个巨大的项目。我只是想避免这种情况。我尝试了两种方法:

1. setenv kernelargs 'console=ttyS0,115200n8 rootdelay=1 selinux=0' and saveenv
2. set enforce 0

对于方法 1,printenv给出结果:

kernelargs=console=ttyS0,115200n8 rootdelay=1 selinux=0

所以你看,已经做出了改变。但重新启动后仍会打印警告消息。
对于方法2,它说:

Could not set enforce status. Permission denied.

所以现在我陷入了两难的境地,不知道该何去何从。我的问题:

    1. 有人知道如何在 android 中禁用或设置宽容模式吗?
    1. 如果我想为新服务定义域,我应该修改哪些文件?

除了,ls -Z /system/bin/myservice给出这个:

u:object_r:system_file:s0

  1. 您需要 su 来设置宽容模式。或者您需要源代码来禁用 SELinux,例如在内核配置中禁用 SELinux,或者在 device/vendor_name/product_name/BoardConfig.mk 中的 BOARD_KERNEL_CMDLINE 中禁用 SELinux。

  2. 如果您有源代码,您可以根据需要定义新域。

请参考Android官方文档:https://source.android.com/security/selinux/device-policy https://source.android.com/security/selinux/device-policy

部分:标记新服务并解决拒绝问题

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

初始化警告:服务 myservice 需要定义 SELinux 域。请修复 的相关文章

随机推荐

  • AngularJS - 启用 HTML5 模式页面刷新而不会出现 404 错误 [重复]

    这个问题在这里已经有答案了 我也尝试通过设置 locationProvider html5Mode true 在 ui routing 和 base href 中它删除了哈希值 但在刷新时它给出了404错误 请帮帮我 正如其他人所说 启用
  • 在重复的动态类型部分视图中从匿名类型属性发出 HTML 字符串

    我将匿名类型传递到动态部分视图中作为 model 其中一个属性是包含一些 HTML 的字符串 当我使用HtmlHelper方法来呈现属性 Razor 引擎正在对字符串进行编码 从而在页面上生成文字文本 i text i 在这种情况下 而不是
  • PowerShell 舍入和格式浮点到最多 2 位小数?

    我发现了很多东西可以将浮点数格式化为常见的已知数字 但是如何将浮点数格式化为最多 2 位小数 但前提是需要小数 例子 1 11 not 1 111 1 12 it was 1 116 round up 1 1 not 1 10 1 not
  • 逐行比较 2 个数据帧的随时间分析

    这是我正在使用的数据框的一小部分 以供参考 https i stack imgur com 7fdwL jpg我正在 R 中使用一个数据框 MG53 HanLab 其中有一列时间 几列名称为 MG53 的列 几列名称为 F2 的列以及几列名
  • 有没有办法让 git 忽略整个分支?

    这可能违背了 git 的设计理念 但是 在我的组织中 我不断地删除数千个开发人员分支 例如Dev
  • std 函数 std::_Rb_tree_rebalance_for_erase () 中的分段错误

    请注意未来的读者 不出所料 错误出现在我的代码中 而不是 std Rb tree rebalance for erase 我对编程有点陌生 不确定如何处理似乎来自 std 函数的分段错误 我希望我做了一些愚蠢的事情 即滥用容器 因为我不知道
  • ValidationMessages.properties 文件之间的冲突

    我习惯将所有验证约束收集在一个公共库中 在罐子的根部我放了一个ValidationMessages it properties文件 一切正常 如果我将此库放入 jsf 2 war 项目中 所有验证消息都会正确显示 但是 如果我再放一个 就会
  • JS/CSS 幻灯片效果适用于小提琴,不适用于 html

    我的第一个问题是小提琴不工作 现在它可以工作了 但是如果我将它复制到括号文件中 它就不再工作了 我确实包含了放置在外部资源中的链接 这是小提琴 https jsfiddle net wtbdxx2b 6 https jsfiddle net
  • Python 更新 SQL 数据库时出错

    我有一些看起来像这样的 python 代码 import pypyodbc import pandas as pd home c SQL df pd read sql query sql4 conn3 for y1 in range 0 k
  • 获取已安装服务的版本信息?

    我想以编程方式检查是否安装了最新版本的 Windows 服务 我有 var ctl ServiceController GetServices Where s gt s ServiceName MyService FirstOrDefaul
  • PHP 执行时显示加载图像

    我想在 php 脚本执行时显示加载图像 我读过关于如何做到这一点的不同答案 但大多数人都说我应该有一个单独的 php 页面 但是我使用单页来显示行 那么如何才能显示加载图像 我用来获取数据的选择查询示例 stmt mydb gt prepa
  • 在长字符串中插入换行符——自动换行

    这是我编写的一个函数 用于将长字符串分成不长于给定长度的行 strBreakInLines lt function s breakAt 90 prepend words lt unlist strsplit s if length word
  • android - 启动另一个应用程序的活动以获取其结果

    我有两个应用程序 A 和 B 我从 A 启动 B 以获取结果 使用以下代码 Intent fmIntent getPackageManager getLaunchIntentForPackage com example B fmIntent
  • BLE 设备在完美工作数周后停止与 Android 连接

    我有一台配备 Blue Gecko BLE 的设备 在各种 Android 手机和平板电脑上一切似乎都工作正常 连接 数据传输以及断开连接后重新连接 注意 我们不配对我们的设备 它只是连接 并且我们不使用自动连接 现在的问题是 有时某些设备
  • 程序何时会受益于预取和非临时加载/存储?

    我用这个做了测试 for i32 i 0 i lt 0x800000 i Hopefully this can disable hardware prefetch i32 k i 997 0x7FFFFF 0x40 mm prefetch
  • VIM宏编辑

    假设我录制了一个很长的宏 其中包含许多命令和特殊字符 我很可能在某个地方犯了错误 如何编辑宏 更正错误并再次保存 例如 我想复制一行 然后将其中的数字加一 这个宏是 yyp d
  • dask dataframe groupby 导致一个分区内存问题

    我正在将 64 个压缩的 csv 文件 可能是 70 80 GB 读入一个 dask 数据帧 然后使用聚合运行 groupby 这项工作从未完成 因为显然 groupby 创建了一个只有一个分区的数据框 这个帖子 https stackov
  • C++:push_back(new Object()) 是内存泄漏吗?

    下面的C 代码是否存在内存泄漏 list push back new String hi 据我了解 任何 std 集合 容器中的 push back 总是会生成一个副本 因此 如果复制了新字符串 则没有任何东西可以删除新字符串 对吧 因为在
  • PHP 中的无效参数

    当我在 Wamp 中运行脚本时 我收到以下第 17 行和第 21 行的警告通知 这告诉我什么以及可以 应该做什么来解决该问题 Warning 为 C wamp www eCardScript ecard lib php 中的 foreach
  • 初始化警告:服务 myservice 需要定义 SELinux 域。请修复

    我想在启动时执行可执行文件在 Android 5 1 的目标板上所以我将其添加到 init rc 中 on boot start myservice service myservice system bin myservice class