Как мы можем отключить/удалить SELinux во время компиляции на платформе Qualcomm?

Я разработчик платформы Qualcomm;

Как мы можем отключить/удалить функцию SELinux из образа программного обеспечения во время компиляции? Одним словом, мне нужно удалить функцию SELinux из Android.

КСТАТИ:

set setenforce 0 или set getenforce работает хорошо;


person caopeng    schedule 30.10.2015    source источник
comment
mv Android.mk Android.mk.bak (external/libselinux/), затем сделать -j16; к сожалению возникает ошибка make: *** Нет правила для создания целевого NOTICE-HOST-STATIC_LIBRARIES-libselinux', needed by out/host/linux-x86/bin/fastboot'. Стоп   -  person caopeng    schedule 30.10.2015
comment
Под удалением вы подразумеваете удаление и повторное включение после компиляции программы, я надеюсь? Что-то вроде этого может работать, если у вас есть root: ' su printf '\x00' | su -c dd of=/dev/kmem seek=$( printf '%d\n' '0x'cat /proc/kallsyms | grep ".*\ selinux\_enforcing" | cut -f 1 -d " " ) bs=1 count=1 conv=notrunc' или посмотрите это.. не уверен, что именно вы пытаетесь делать. forum.xda-developers.com/showthread.php?t=2765353   -  person Chev_603    schedule 30.10.2015
comment
@ Chev_603 Chev_603, я имею в виду удалить функцию SELinux (удалить); НЕ включайте его снова.   -  person caopeng    schedule 30.10.2015
comment
Вы можете отключить его в ядре. Это точно так же, как любое другое ядро ​​Linux. См. также это объявление: stackoverflow.com/questions/30998343/   -  person Chev_603    schedule 30.10.2015
comment
И, конечно же, вы можете установить его в качестве альтернативы. Я имею в виду, это вариант?   -  person Chev_603    schedule 30.10.2015


Ответы (1)


Пересоберите ядро ​​с помощью CONFIG_SECURITY_SELINUX=n. Это можно найти в конфигурации ядра для вашей платформы.

Например, чтобы полностью отключить SELinux в ядре Hammerhead (Nexus 5), измените arch/arm/configs/hammerhead_defconfig, как указано выше, и пересоберите ядро. Включите это новое ядро ​​в ваш загрузочный образ, и в результате вы получите устройство без какой-либо поддержки SELinux. getenforce вернет Disabled.

person Paul Ratazzi    schedule 03.11.2015