zoukankan      html  css  js  c++  java
  • 【转】[MTK软件原创] [SELinux] 如何设置确认selinux模式

    原文网址:http://bbs.16rd.com/thread-54766-1-1.html

    [Description]


    linux SELinux 分成Enforce 以及 Permissive 两种模式,如何进行设置与确认当前SELinux模式?


    [Keyword]


    android, SELinux, Enforce, Permissive


    [Solution]


    在Android KK 4.4 版本后,Google 有正式有限制的启用SELinux, 来增强android 的安全保护。
    在ENG 版本中, 可以使用setenforce 命令进行设置:
    adb shell setenforce 0 //设置成permissive 模式
    adb shell setenforce 1 //设置成enforce 模式
    在ENG/USER 版本中,都可以使用getenforce 命令进行查询,如:
    root@mt6589_phone_720pv2:/ # getenforce
    getenforce
    Enforcing
    如果想开机一启动就设置模式,你可以用下面方式:
    KK 版本:更新mediatek/custom/{platform}/lk/rules_platform.mk
    L 版本: 更新bootable/bootloader/lk/platform/mt6xxx/rules.mk
    # choose one of following value -> 1: disabled/ 2: permissive /3: enforcing
    SELINUX_STATUS := 3
    可直接调整这个SELINUX_STATUS这个的值为2, 严禁直接设置成1:disabled, 此会造成生成的文件无法正确的打上标签,造成在再次设置成
    enforcing时,难以预料的情况发生。
    注意的是:
    在L 版本后, Google 要求强制性开启enforcing mode, 前面的设置只针对userdebug, eng 版本有效, 如果要对user 版本有效,
    需要修改system/core/init/Android.mk
    如果是L 版本 新增:
    ifeq ($(strip $(TARGET_BUILD_VARIANT)),user)
    LOCAL_CFLAGS += -DALLOW_DISABLE_SELINUX=1
    endif
    如果是在M 版本 将:
    ifneq (,$(filter userdebug eng,$(TARGET_BUILD_VARIANT)))
    init_options += -DALLOW_LOCAL_PROP_OVERRIDE=1 -DALLOW_DISABLE_SELINUX=1
    init_options += -DINIT_ENG_BUILD
    else
    修改成:
    ifneq (,$(filter user userdebug eng,$(TARGET_BUILD_VARIANT)))
    init_options += -DALLOW_LOCAL_PROP_OVERRIDE=1 -DALLOW_DISABLE_SELINUX=1
    init_options += -DINIT_ENG_BUILD
    else
    需要注意的是, Google 要求强制性开启SELinux Enforcing Mode, 如果您关闭,将无法通过Google CTS.

  • 相关阅读:
    python读写文件模式的区别
    【Terminal】终端美化
    【Macintosh】MAC基本使用
    【MySQL】使用mysql数据量统计
    软件测试自学还是报班好?需要掌握哪些技能?
    400页共计800道软件测试面试真题汇总!超全干货
    软件测试是吃青春饭的吗?30岁后软件测试该何去何从?
    leetcode_链表操作1
    [数据库系列之MySQL] Mysql整体架构浅析一
    Ubuntu 配置谷歌Android Test Station
  • 原文地址:https://www.cnblogs.com/wi100sh/p/5586585.html
Copyright © 2011-2022 走看看