将 Android 设备的 SELinux 模式从 “Enforcing“ 改为 “Permissive“ 步 ...

打印 上一主题 下一主题

主题 1012|帖子 1012|积分 3036

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
将 Android 设备的 SELinux 模式从 “Enforcing” 改为 “Permissive” 可以提高设备的调试和开发灵活性,但也会降低体系的安全性。以下是步骤:
注意事项



  • 确保设备已 root。
  • 修改 SELinux 模式可能会使设备暴露于安全风险中,请谨慎操作。
  • 修改 SELinux 设置可能会被体系还原,详细情况取决于设备和固件。
修改步骤


  • 获取 root 权限:
    确保你的设备已 root 而且 ADB 已连接。通过 ADB 进入 shell:
    1. adb root
    2. adb shell
    复制代码
  • 检查当前 SELinux 模式:
    通过以下命令检查当前模式:
    1. getenforce
    复制代码
    通常输出会是 Enforcing 或 Permissive。
  • 修改 SELinux 模式:
    将模式改为 Permissive:
    1. setenforce 0
    复制代码
  • 验证修改:
    再次检查 SELinux 模式以确保已更改:
    1. getenforce
    复制代码
    输出应为 Permissive。
长期化修改(仅限部分设备)

一些设备在重启后会恢复为 Enforcing 模式,假如你希望修改在重启后仍然生效,可以尝试以下方法:

  • 修改启动脚本:
    修改体系启动脚本,例如 init.rc 文件。此方法须要对体系镜像进行修改并重新刷入设备。
  • 使用 Magisk 模块:
    使用 Magisk 的 SELinux Permissive 模块可以在每次启动时自动将 SELinux 设置为 Permissive。

    • 安装 Magisk Manager。
    • 在 Magisk Manager 中搜索并安装 SELinux Permissive 模块。
    • 重启设备以应用模块。

使用 Magisk 刷入 Permissive 模块


  • 安装 Magisk:
    请确保你的设备已经通过 TWRP 等自界说恢复工具安装了 Magisk。假如没有,请按照设备的详细步骤安装 Magisk。
  • 安装 SELinux Permissive 模块:

    • 打开 Magisk Manager。
    • 进入“下载”部分,搜索 SELinux Permissive 模块。
    • 下载并安装该模块。
    • 安装完成后重启设备。

  • 验证修改:
    重启后再次检查 SELinux 模式:
    1. adb shell
    2. getenforce
    复制代码
    应表现 Permissive。
告诫

修改 SELinux 模式为 Permissive 会导致设备的安全性大幅降低,仅用于调试和开发目标。请在完成干系任务后只管恢复为 Enforcing 模式以确保设备的安全性。
Android 设备上通过 ADB 打开 RTS 流控,并使用 AT 指令进行串口读写操作。

stty 命令用于设置和表现终端设备(如串口)的设置。下面是对 stty -F /dev/ttyS0 cs8 115200 ignbrk -brkint -icrnl -imaxbel -opost -onlcr -isig -icanon -iexten -echo -echoe -echok -echoctl -echoke noflsh -ixon -crtscts 命令各个选项的解释:

  • stty -F /dev/ttyS0

    • stty:设置终端设备的命令。
    • -F /dev/ttyS0:指定要设置的设备为 /dev/ttyS0。

  • cs8

    • 设置字符大小为 8 位(8 数据位)。

  • 115200

    • 设置波特率(传输速率)为 115200 bps。

  • ignbrk

    • 忽略输入的 BREAK 信号。

  • -brkint

    • 克制 BREAK 信号导致一个 SIGINT 信号被发送到程序中。

  • -icrnl

    • 克制将输入的 CR(回车符)转换为 NL(换行符)。

  • -imaxbel

    • 克制在输入队列满时响铃。

  • -opost

    • 克制输出处理(即输出时不做任何修改)。

  • -onlcr

    • 克制将输出的 NL(换行符)转换为 CR-NL(回车-换行符对)。

  • -isig

    • 克制天生信号(如 INTR, QUIT, SUSP)。

  • -icanon

    • 克制规范模式输入(即克制行缓冲)。

  • -iexten

    • 克制实现扩展功能(如 DISCARD 和 LNEXT)。

  • -echo

    • 克制回显输入字符。

  • -echoe

    • 克制回显 ERASE 字符作为一个 BS-SP-BS 序列。

  • -echok

    • 克制回显 KILL 字符后的新行。

  • -echoctl

    • 克制回显控制字符作为 ^char 格式。

  • -echoke

    • 克制擦除行时回显删除的字符。

  • noflsh

    • 克制在 INTR、QUIT 和 SUSP 信号时刷新输入和输出队列。

  • -ixon

    • 克制软件流控(即克制接收时的 XON/XOFF 流控)。

  • -crtscts

    • 启用硬件 RTS/CTS 流控。

综上所述,这个 stty 命令设置了串口 /dev/ttyS0,设定了 8 数据位、115200 波特率、忽略 BREAK 信号、克制各种信号处理和回显、禁用软件流控并启用了硬件流控。如许设置后的串口适合于一些对串口通信有特定要求的应用,比如与某些嵌入式设备进行通信。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

曂沅仴駦

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表