From fbb4f85ef04f818a87b25bb6a85840a0a7b03f9e Mon Sep 17 00:00:00 2001 From: topjohnwu <topjohnwu@gmail.com> Date: Fri, 2 Oct 2020 21:47:47 -0700 Subject: [PATCH] Update documentation --- README.MD | 2 +- docs/README.md | 4 +- docs/boot.md | 20 ++-- docs/deploy.md | 2 +- docs/details.md | 87 +++++++++------ docs/faq.md | 11 ++ docs/guides.md | 75 ++++++++++--- docs/images/device_info.png | Bin 0 -> 148303 bytes docs/install.md | 204 +++++++++++++++++------------------- docs/ota.md | 2 +- docs/tools.md | 104 +++++++++--------- 11 files changed, 294 insertions(+), 217 deletions(-) create mode 100644 docs/faq.md create mode 100644 docs/images/device_info.png diff --git a/README.MD b/README.MD index ed520c8da..0634e0054 100644 --- a/README.MD +++ b/README.MD @@ -24,7 +24,7 @@ Here are some feature highlights: ## Useful Links - [Installation Instruction](https://topjohnwu.github.io/Magisk/install.html) -- [OTA Upgrade Guide](https://topjohnwu.github.io/Magisk/ota.html) +- [Frequently Asked Questions](https://topjohnwu.github.io/Magisk/faq.html) - [Full Official Docs](https://topjohnwu.github.io/Magisk/) - [Magisk Troubleshoot Wiki](https://www.didgeridoohan.com/magisk/HomePage) (by [@Didgeridoohan](https://github.com/Didgeridoohan)) diff --git a/docs/README.md b/docs/README.md index 010d102ed..c4c191c86 100644 --- a/docs/README.md +++ b/docs/README.md @@ -1,8 +1,8 @@ # Magisk Documentation -(Updated on 2020.3.23) +(Updated on 2020.10.2) - [Installation Instructions](install.md) -- [OTA Upgrade Guides](ota.md) +- [Frequently Asked Questions](faq.md) The following sections are for developers diff --git a/docs/boot.md b/docs/boot.md index 4701e876d..a6e70c632 100644 --- a/docs/boot.md +++ b/docs/boot.md @@ -30,12 +30,12 @@ Method | Initial rootdir | Final rootdir - Devices that does not fall in any of Method B and C's criteria - **Method B - Legacy SAR**: This method was first seen on Pixel 1. The kernel directly mounts the `system` partition as rootdir and exec `/init` to boot. - Devices with `(LV = 28)` - - Google: Pixel 1 and 2. Pixel 3 and 3a with `(RV = 28)` only. - - OnePlus: 5T - 7 + - Google: Pixel 1 and 2. Pixel 3 and 3a when `(RV = 28)`. + - OnePlus: 6 - 7 - Maybe some `(LV < 29)` Android Go devices? - **Method C - 2SI ramdisk SAR**: This method was first seen on Pixel 3 Android 10 developer preview. The kernel uses `initramfs` as rootdir and exec `/init` in `rootfs`. This `init` is responsible to mount the `system` partition and use it as the new rootdir, then finally exec `/system/bin/init` to boot. - Devices with `(LV >= 29)` - - Devices with `(LV < 28, RV >= 29)`, excluding exceptions that were using Method B + - Devices with `(LV < 28, RV >= 29)`, excluding those that were already using Method B - Google: Pixel 3 and 3a with `(RV >= 29)` ### Discussion @@ -47,7 +47,7 @@ However for Magisk, the real difference lies in what the device ends up using wh The criteria for Method C is a little complicated, in layman's words: either your device is modern enough to launch with Android 10+, or you are running an Android 10+ custom ROM on a device that was using Method A. - Any Method A device running Android 10+ will automatically be using Method C -- **Method B devices are stuck with Method B**, maybe only with the exception of Pixel 3 and 3a, which Google retrofitted the device to adapt the new method. +- **Method B devices are stuck with Method B**, with the only exception being Pixel 3 and 3a, which Google retrofitted the device to adapt the new method. SAR is a very important part of [Project Treble](https://source.android.com/devices/architecture#hidl) as rootdir should be tied to the platform. This is also the reason why Method B and C comes with `(LV >= ver)` criterion as Google has enforced all OEMs to comply with updated requirements every year. @@ -57,7 +57,9 @@ When Google released the first generation Pixel, it also introduced [A/B (Seamle Let's go back in time when Google is first designing A/B. If using SAR (only Boot Method B exists at that time), the kernel doesn't need `initramfs` to boot Android (because rootdir is in `system`). This mean we can be smart and just stuff the recovery ramdisk (containing the minimalist Linux environment) into `boot`, remove `recovery`, and let the kernel pick whichever rootdir to use (ramdisk or `system`) based on information from the bootloader. -As time passed from Android 7.1 to Android 10, Google introduced [Dynamic Partitions](https://source.android.com/devices/tech/ota/dynamic_partitions/implement). This is bad news for SAR, because the Linux kernel cannot understand this new partition format, thus unable to directly use `system` as rootdir. This is when they came up with Boot Method C: always boot into `initramfs`, and let userspace handle the rest of booting. +As time passed from Android 7.1 to Android 10, Google introduced [Dynamic Partitions](https://source.android.com/devices/tech/ota/dynamic_partitions/implement). This is bad news for SAR, because the Linux kernel cannot directly understand this new partition format, thus unable to directly mount `system` as rootdir. This is when they came up with Boot Method C: always boot into `initramfs`, and let userspace handle the rest of booting. This includes deciding whether to boot into Android or recovery, or as they officially call: `USES_RECOVERY_AS_BOOT`. + +Some modern devices using A/B with 2SI also comes with `recovery_a/_b` partitions. This is officially supported with Google's standard. These devices will then only use the boot ramdisk to boot into Android as recovery is stored on a separate partition. ## Piecing Things Together @@ -66,10 +68,9 @@ With all the knowledge above, now we can categorize all Android devices into the Type | Boot Method | Partition | 2SI | Ramdisk in `boot` :---: | :---: | :---: | :---: | :---: **I** | A | A-only | No | `boot` ramdisk -**II** | B | A/B | No | `recovery` ramdisk -**III** | B | A-only | No | ***N/A*** +**II** | B | A/B | Any | `recovery` ramdisk +**III** | B | A-only | Any | ***N/A*** **IV** | C | Any | Yes | Hybrid ramdisk -**II\* / III\*** | B | II / III | Yes | II / III These types are ordered chronologically by the time they were first available. @@ -77,8 +78,7 @@ These types are ordered chronologically by the time they were first available. - **Type II**: Legacy A/B devices. Pixel 1 is the first device of this type, being both the first A/B and SAR device - **Type III**: Late 2018 - 2019 devices that are A-only. **The worst type of device to ever exist as far as Magisk is concerned.** - **Type IV**: All devices using Boot Method C are Type IV. A/B Type IV ramdisk can boot into either Android or recovery based on info from bootloader; A-only Type IV ramdisk can only boot into Android. -- **Type \***: Type II* and III* are Boot Method B devices running on Android 10+ (2SI). **They are NOT new device types**. In Magisk the code treat them drastically different due to complicated reasons, hence mentioning them here. Further details on Type III devices: Magisk is always installed in the ramdisk of a boot image. For all other device types, because their `boot` partition have ramdisk included, Magisk can be easily installed by patching boot image through Magisk Manager or flash zip in custom recovery. However for Type III devices, they are **limited to install Magisk into the `recovery` partition**. Magisk will not function when booted normally; instead Type III device owners have to always reboot to recovery to maintain Magisk access. -Some Type III devices' bootloader will still accept and provide `initramfs` manually added to `boot` image to the kernel (e.g. some Xiaomi phones), but many device don't (e.g. Samsung S10, Note 10). It solely depends on how the OEM implements its bootloader. +Some Type III devices' bootloader will still accept and provide `initramfs` that was manually added to the `boot` image to the kernel (e.g. some Xiaomi phones), but many device don't (e.g. Samsung S10, Note 10). It solely depends on how the OEM implements its bootloader. diff --git a/docs/deploy.md b/docs/deploy.md index 531b9e186..49244b4be 100644 --- a/docs/deploy.md +++ b/docs/deploy.md @@ -1,5 +1,5 @@ # Deployment -(Note: This is not a user tutorial for installing Magisk, this is an explaination of how Magisk can be installed, and a guide for developers to properly deploy Magisk in various different situations) +(Note: This is not a user tutorial for installing Magisk, this is an explanation of how Magisk can be installed, and a guide for developers to properly deploy Magisk in various different situations) ## Systemless When a user flashes a Magisk zip in custom recoveries or have boot images patched in Magisk Manager, Magisk is installed in the systemless fashion. This is the only officially supported method to install Magisk on a device. The systemless method installs Magisk into a boot image's ramdisk CPIO, sometimes require additional patches to the kernel. diff --git a/docs/details.md b/docs/details.md index c8d18e1e3..a8b4e55df 100644 --- a/docs/details.md +++ b/docs/details.md @@ -1,43 +1,54 @@ # Internal Details + ## File Structure -### Paths in "sbin tmpfs overlay" -One of Magisk's breakthrough designs is sbin tmpfs overlay. It is required to support system-as-root devices, and also is the key to hiding Magisk from detection. All Magisk binaries, applets, mirrors, and other trivial stuffs are all located in the `tmpfs` mounted on `/sbin`. MagiskHide can just simply unmount `/sbin` and the bind mounts to hide all modifications easily. + +### Paths in "Magisk tmpfs directory" + +Magisk will mount a `tmpfs` directory to store some temporary data. For devices with the `/sbin` folder, it will be chosen as it will also act as an overlay to inject binaries into `PATH`. From Android 11 onwards, the `/sbin` folder might not exist, so Magisk will randomly create a folder under `/dev` and use it as the base folder. ``` +# In order to get the current base folder Magisk is using, +# use the command `magisk --path`. # Binaries like magisk, magiskinit, and all symlinks to -# applets are directly stored in /sbin, so they -# are all in PATH for apps and shell to access them +# applets are directly stored in this path. This means when +# this is /sbin, these binaries will be directly in PATH. +MAGISKPATH=$(magisk --path) # Magisk internal stuffs -MAGISKTMP=/sbin/.magisk +MAGISKTMP=$MAGISKBASE/.magisk -# Magisk BusyBox path -BBPATH=$MAGISKTMP/busybox +# Magisk's BusyBox directory. Within this folder stores +# the busybox binary and symlinks to all of its applets. +# Any usage of this directory is deprecated, please +# directly call /data/adb/magisk/busybox and use +# BusyBox's ASH Standalone mode. +# The creation of this path will be removed in the future. +$MAGISKTMP/busybox -# /data/adb/modules will be bind mounted here +# /data/adb/modules will be bind mounted here. +# The original folder is not used due to nosuid mount flag. $MAGISKTMP/modules -# The configuration used in last installation +# The current Magisk installation config $MAGISKTMP/config -# Partition mirrors. -# There would be system, vendor, data, and possibly product -# in this directory, each is the mirror to the name of the partition +# Partition mirrors +# Each directory in this path will be mounted with the +# partition of its directory name. +# e.g. system, system_ext, vendor, data ... $MAGISKTMP/mirror +# Block devices Magisk creates internally to mount mirrors. +$MAGISKTMP/block + # Root directory patch files # On system-as-root devices, / is not writable. -# All patched files are stored here and bind mounted at boot. +# All pre-init patched files are stored here and bind mounted. $MAGISKTMP/rootdir - -# The patched sepolicy file on system-as-root devices. -# This is required as /sepolicy does not exist -# on those devices and / is not writable. -/sbin/.se - ``` ### Paths in `/data` + Some binaries and files should be stored on non-volatile storages in `/data`. In order to prevent detection, everything has to be stored somewhere safe and undetectable in `/data`. The folder `/data/adb` was chosen because of the following advantages: - It is an existing folder on modern Android, so it cannot be used as an indication of the existence of Magisk. @@ -66,31 +77,36 @@ $SECURE_DIR/modules_update # Database storing settings and root permissions MAGISKDB=$SECURE_DIR/magisk.db -# All magisk related binaries, containing busybox, +# All magisk related binaries, including busybox, # scripts, and magisk binaries. Used in supporting # module installation, addon.d, Magisk Manager etc. -# This folder will be bind mounted to $BINMIRROR DATABIN=$SECURE_DIR/magisk ``` ## Magisk Booting Process + ### Pre-Init + `magiskinit` will replace `init` as the first program to run. -- Early mount required partitions. On system-as-root devices, we will switch root to system -- Inject magisk services into `init.rc` +- Early mount required partitions. On legacy system-as-root devices, we switch root to system; on 2SI devices, we patch fstab and execute the original `init` to mount partitions for us. - Load sepolicy either from `/sepolicy`, precompiled sepolicy in vendor, or compile split sepolicy -- Patch sepolicy rules and dump to `/sepolicy` or `/sbin/.se` and patch `init` or `libselinux.so` to load the patched policies -- Execute the original `init` to start the ordinary boot process +- Patch sepolicy rules and dump to `/sepolicy` or `/sbin/.se` or `/dev/.se` +- Patch `init` or `libselinux.so` to force the system to load the patched policies +- Inject magisk services into `init.rc` +- Execute the original `init` to continue the boot process ### post-fs-data -This triggers on `post-fs-data` when `/data` is properly decrypted (if required) and mounted. The daemon `magiskd` will be launched, post-fs-data scripts are executed, and module files are magic mounted. + +This triggers on `post-fs-data` when `/data` is decrypted and mounted. The daemon `magiskd` will be launched, post-fs-data scripts are executed, and module files are magic mounted. ### late_start -Later in the booting process, the class `late_start` will be triggered, and Magisk "service" mode will be started. In this mode, service scripts are executed, and it will try to install Magisk Manager if it doesn't exist. + +Later in the booting process, the class `late_start` will be triggered, and Magisk "service" mode will be started. In this mode, service scripts are executed. ## Resetprop + Usually, system properties are designed to only be updated by `init` and read-only to non-root processes. With root you can change properties by sending requests to `property_service` (hosted by `init`) using commands such as `setprop`, but changing read-only props (props that start with `ro.` like `ro.build.product`) and deleting properties are still prohibited. `resetprop` is implemented by distilling out the source code related to system properties from AOSP and patched to allow direct modification to property area, or `prop_area`, bypassing the need to go through `property_service`. Since we are bypassing `property_service`, there are a few caveats: @@ -99,16 +115,21 @@ Usually, system properties are designed to only be updated by `init` and read-on - persist properties (props that starts with `persist.`, like `persist.sys.usb.config`) are stored in both `prop_area` and `/data/property`. By default, deleting props will **NOT** remove it from persistent storage, meaning the property will be restored after the next reboot; reading props will **NOT** read from persistent storage, as this is the behavior of `getprop`. With the flag `-p`, deleting props will remove the prop in **BOTH** `prop_area` and `/data/property`, and reading props will be read from **BOTH** `prop_area` and persistent storage. ## Magic Mount -I will skip the details in the actual implementation and algorithm of Magic Mount, but you can always directly dive into the source code if interested. (`bootstages.cpp`) -Even though the mounting logic is pretty complicated, the final result of Magic Mount is actually pretty simple. For each module, the folder `$MODPATH/system` will be recursively merged into the real `/system`; that is: existing files in the real system will be replaced by the one in modules' system, and new files in modules' system will be added to the real system. +The details of the actual implementation and algorithm of Magic Mount is omitted here, please directly dive into the source code if interested (`core/module.cpp`). + +Even though the mounting logic is very complicated, the final result of Magic Mount is actually pretty simple. For each module, the folder `$MODPATH/system` will be recursively merged into the real `/system`; that is: existing files in the real system will be replaced by the one in modules' system, and new files in modules' system will be added to the real system. There is one additional trick you can use: if you place an empty file named `.replace` in any of the folders in a module's system, instead of merging the contents, that folder will directly replace the one in the real system. This will be very handy in some cases, for example swapping out a system app. If you want to replace files in `/vendor` or `/product`, please place them under `$MODPATH/system/vendor` or `$MODPATH/system/product`. Magisk will transparently handle both cases, whether vendor or product is a separate partition or not. -## Miscellaneous -Here are some tidbits in Magisk but unable to be categorized into any sections: +## SELinux Policies -- Socket name randomization: when you call `su`, `magiskhide`, and some commands in `magisk`, it connects to the magisk daemon `magiskd` running in the background. The connections are established through an abstract Unix socket. Any process can go through all active Unix sockets and see if the specifc name used by Magisk is in the list to determine whether `magiskd` is running. Starting from v15.4, the abstract name used in `magiskd` and `magisklogd` are randomized by `magiskinit` on each boot. -- Sevice name randomization: each service started up by `init` will be recorded. Some apps will detect the name of magisk boot services to determine whether Magisk is installed. Starting from v17.2, the service name assigned in `init.magisk.rc` is randomized by `magiskinit`. +Magisk will patch the stock `sepolicy` to make sure root and Magisk operations can be done in a safe and secure way. The new domain `magisk` is effectively permissive, which is what `magiskd` and all root shell will run in. `magisk_file` is a new file type that is setup to be allowed to be accessed by every domain (unrestricted file context). + +Before Android 8.0, all allowed su client domains are allowed to directly connect to `magiskd` and establish connection with the daemon to get a remote root shell. Magisk also have to relax some `ioctl` operations so root shells can function properly. + +After Android 8.0, to reduce relaxation of rules in Android's sandbox, a new SELinux model is deployed. The `magisk` binary is labelled with `magisk_exec` file type, and processes running as allowed su client domains executing the `magisk` binary (this includes the `su` command) will transit to `magisk_client` by using a `type_transition` rule. Rules strictly restrict that only `magisk` domain processes are allowed to attribute files to `magisk_exec`. Direct connection to sockets of `magiskd` are not allowed; the only way to access the daemon is through a `magisk_client` process. These changes allow us to keep the sandbox intact, and keep Magisk specific rules separated from the rest of the policies. + +The full set of rules can be found in `magiskpolicy/rules.cpp`. diff --git a/docs/faq.md b/docs/faq.md new file mode 100644 index 000000000..deff3a235 --- /dev/null +++ b/docs/faq.md @@ -0,0 +1,11 @@ +# Frequently Asked Questions + +### Q: Why is X app detecting root? + +Manually enable MagiskHide in settings (MagiskHide is no longer enabled by default). Also, there are known methods to detect Magisk, so your mileage may vary. + +### Q: I installed a module and it bootlooped my device. Help! + +If you have USB debugging enabled in developer options, connect your phone to the PC. If your device is detected (check by `adb devices`), enter ADB shell and run the command `magisk --remove-modules`. This will remove all your modules and automatically reboot the device. + +If unfortunately you do not have USB debugging enabled, reboot into Safe Mode. Most modern Android devices support pressing a special key combo at boot to enter Safe Mode as an emergency option. Magisk will detect Safe Mode being activated, and all modules will be disabled. Then reboot back to normal mode (the module disable state persists) and manage your modules through Magisk Manager. diff --git a/docs/guides.md b/docs/guides.md index 41bf050f3..47d34f0b4 100644 --- a/docs/guides.md +++ b/docs/guides.md @@ -1,5 +1,18 @@ # Developer Guides +## BusyBox +Magisk ships with a feature complete BusyBox binary (including full SELinux support). The executable is located at `/data/adb/magisk/busybox`. Magisk's BusyBox supports runtime toggle-able "ASH Standalone Shell Mode". What this standalone mode means is that when running in the `ash` shell of BusyBox, every single command will directly use the applet within BusyBox, regardless of what is set as `PATH`. For example, commands like `ls`, `rm`, `chmod` will **NOT** use what is in `PATH` (in the case of Android by default it will be `/system/bin/ls`, `/system/bin/rm`, and `/system/bin/chmod` respectively), but will instead directly call internal BusyBox applets. This makes sure that scripts always run in a predictable environment and always have the full suite of commands no matter which Android version it is running on. To force a command *not* to use BusyBox, you have to call the executable with full paths. + +Every single shell script running in the context of Magisk will be executed in BusyBox's `ash` shell with standalone mode enabled. For what is relevant to 3rd party developers, this includes all boot scripts and module installation scripts. + +For those who want to use this "Standalone Mode" feature outside of Magisk, there are 2 ways to enable it: + +1. Set environment variable `ASH_STANDALONE` to `1`<br>Example: `ASH_STANDALONE=1 /data/adb/magisk/busybox sh <script>` +2. Toggle with command-line options:<br>`/data/adb/magisk/busybox sh -o standalone <script>` + +To make sure all subsequent `sh` shell executed also runs in standalone mode, option 1 is the preferred method (and this is what Magisk and Magisk Manager internally uses) as environment variables are inherited down to child processes. + + ## Magisk Modules A Magisk module is a folder placed in `/data/adb/modules` with the structure below: @@ -111,7 +124,7 @@ module.zip │ This script will be sourced by update-binary ├── ... ├── ... /* The rest of module's files */ -| +│ ``` #### Customization @@ -122,7 +135,7 @@ If you need even more customization and prefer to do everything on your own, dec #### `customize.sh` Environment -Magisk's internal busybox's path `$BBPATH` is added in the front of `PATH`. The following variables and shell functions are available for convenience: +This script will run in Magisk's BusyBox `ash` shell with "Standalone Mode" enabled. The following variables and shell functions are available for convenience: ##### Variables - `MAGISK_VER` (string): the version string of current installed Magisk (e.g. `v20.0`) @@ -215,25 +228,61 @@ In Magisk, there are also 2 kinds of scripts: **general scripts** and **module s - Placed in `/data/adb/post-fs-data.d` or `/data/adb/service.d` - Only executed if the script is executable (execution permissions, `chmod +x script.sh`) - Scripts in `post-fs-data.d` runs in post-fs-data mode, and scripts in `service.d` runs in late_start service mode. - - Will still be executed when **Core-Only** mode is enabled. - Modules should **NOT** add general scripts since it violates encapsulation - Module Scripts - Placed in the folder of the module - Only executed if the module is enabled - `post-fs-data.sh` runs in post-fs-data mode, and `service.sh` runs in late_start service mode. - - Will NOT be executed when **Core-Only** mode is enabled (all modules are disabled) - Modules require boot scripts should **ONLY** use module scripts instead of general scripts -Magisk's internal busybox's path `$BBPATH` is added in the front of `PATH`. This means all commands you call in scripts are always using busybox unless the applet is not included. This makes sure that your script always run in a predictable environment and always have the full suite of commands regardless of which Android version it is running on. +These scripts will run in Magisk's BusyBox `ash` shell with "Standalone Mode" enabled. ## Root Directory Overlay System -Since `/` is read-only in system-as-root devices, Magisk provides an overlay system, allowing developers to patch files / add new rc scripts. Additional files shall be placed in the `overlay.d` folder in the ramdisk, and they will have the following restrictions: +Since `/` is read-only on system-as-root devices, Magisk provides an overlay system to enable developers to replace files in rootdir or add new `*.rc` scripts. This feature is designed mostly for custom kernel developers. -- All `*.rc` files in `overlay.d` will be read and concatenated *AFTER* `init.rc` -- Replacing existing files are allowed.<br> -e.g. you can replace `/res/random.png` by adding the file `overlay.d/res/random.png` -- Non-existing files will be ignored (with exceptions detailed in the next point).<br> -e.g. `overlay.d/new_file` will be ignored if `/new_file` does not exist -- Additional files in `overlay.d/sbin` is allowed as they will be copied into Magisk's sbin overlay.<br> -e.g. `overlay.d/sbin/libfoo.ko` will be copied to `/sbin/libfoo.ko`. +Overlay files shall be placed in the `overlay.d` folder in boot image ramdisk, and they follow these rules: + +1. All `*.rc` files in `overlay.d` will be read and concatenated **AFTER** `init.rc` +2. Existing files can be replaced by files located at the same relative path +3. Files that correspond to a non-existing file will be ignored + +In order to have additional files which you want to reference in your custom `*.rc` scripts, add them in `overlay.d/sbin`. The 3 rules above does not apply to everything in this specific folder, as they will directly be copied to Magisk's internal `tmpfs` directory (which used to always be located at `/sbin`). + +Due to changes in Android 11, the `/sbin` folder is no longer guaranteed to exist. In that case, Magisk randomly generates the `tmpfs` folder. Every occurrence of the pattern `${MAGISKTMP}` in your `*.rc` scripts will be replaced with the Magisk `tmpfs` folder when `magiskinit` injects it into `init.rc`. This also works on pre Android 11 devices as `${MAGISKTMP}` will simply be replaced with `/sbin` in this case, so the best practice is to **NEVER** hardcode `/sbin` in your `*.rc` scripts when referencing additional files. + +Here is an example of how to setup `overlay.d` with custom `*.rc` script: + +``` +ramdisk +│ +├── overlay.d +│ ├── sbin +│ │ ├── libfoo.ko <--- These 2 files will be copied +│ │ └── myscript.sh <--- to Magisk's tmpfs directory +│ ├── custom.rc <--- This file will be injected into init.rc +│ ├── res +│ │ └── random.png <--- This file will replace /res/random.png +│ └── new_file <--- This file will be ignored because +│ /new_file does not exist +├── res +│ └── random.png <--- This file will be replaced by +│ /overlay.d/res/random.png +├── ... +├── ... /* The rest of initramfs files */ +│ +``` + +Here is an example of the `custom.rc`: + +``` +# Use ${MAGISKTMP} to refer to Magisk's tmpfs directory + +on early-init + setprop sys.example.foo bar + insmod ${MAGISKTMP}/libfoo.ko + start myservice + +service myservice ${MAGISKTMP}/myscript.sh + oneshot +``` diff --git a/docs/images/device_info.png b/docs/images/device_info.png new file mode 100644 index 0000000000000000000000000000000000000000..56b6daa7c4db5818fe4d3a65e0284109c7749a30 GIT binary patch literal 148303 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%0DB!9B(pKjJ)kO22c*+-X( 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�A-BYYxF>vh^!vjtvdDzax#HA4gOTt~ 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 literal 0 HcmV?d00001 diff --git a/docs/install.md b/docs/install.md index b166e1609..77e415a45 100644 --- a/docs/install.md +++ b/docs/install.md @@ -1,147 +1,139 @@ # Installation -If you already have Magisk installed, it is **strongly recommended to upgrade directly via Magisk Manager**. The following tutorial is for first time users. + +If you already have Magisk installed, it is **strongly recommended** to upgrade directly via Magisk Manager using the "Direct Install" method. The following tutorial is only for initial installation. ## Getting Started -- If you are using a Huawei device running **EMUI 8 and higher**, please check [its section](#huawei). -- If you are using a Samsung device that is **launched with Android 9.0** (new devices in 2019), please check [its section](#samsung-system-as-root). -Otherwise, follow the instructions in [Knowing Your Device](#knowing-your-device), and choose the right steps +Before you start: -- If your device is **NOT** A/B, but **IS** using system-as-root, then you will have to install Magisk to the recovery partition of your device. Follow the instructions in [Boot Image Patching](#boot-image-patching), but instead of using your boot image, use your recovery image. **Read through the [Magisk in Recovery](#magisk-in-recovery) section!** -- Otherwise, you can either follow the instructions in [Custom Recovery](#custom-recovery) (if your device has custom recovery available) or [Boot Image Patching](#boot-image-patching). +- This tutorial assumes you understand how to use `adb` and `fastboot` +- Your device's bootloader has to be unlocked +- Make sure to remove any "boot image mods" such as other root solutions before installing Magisk. The easiest way is to restore the boot image with factory images, or reflash a *non-prerooted* custom ROM +- If you plan to also install custom kernels, install it after Magisk -Other notes: +--- -- If you plan to install custom kernels, flash the zip **AFTER** installing Magisk -- Make sure to remove any 'boot image mods' such as other root solutions. The easiest way is to restore the boot image from factory images, or reflash a *non-prerooted* custom ROM +Download and install the latest Magisk Manager. We use the app to gather some information about your device. In the home screen, you should see this: -### Knowing Your Device -If your device is running anything older than Android 7.1, skip this section as your device will not be using A/B nor system-as-root. +<p align="center"><img src="images/device_info.png" width="500"/></p> -First, you need to know whether your device is using [A/B partitions](https://source.android.com/devices/tech/ota/ab). If you don't know, use a terminal (adb shell or any terminal emulator) to check with this command: -``` -getprop ro.build.ab_update -``` -If the result is `true`, then your device is using A/B partitions. +Pay special attention to the **Ramdisk** info. If the result is **Yes**, congratulations, your device is perfect for installing Magisk! However, if the result is **No**, this means your device's boot partition does **NOT** include ramdisk, and unfortunately you would have to go through some hoops to make Magisk work properly. -If your device is A/B, then your device is also certainly using [system-as-root](https://source.android.com/devices/bootloader/system-as-root). To find out whether you are using system-as-root on a non-A/B device, use a terminal to check with this command: -``` -getprop ro.build.system_root_image -``` -If the result is `true`, then your device is using system-as-root. +> **If your device does not have boot ramdisk, read the [Magisk in Recovery](#magisk-in-recovery) section after installing. The information in that section is VERY important!** -(P.S. If you are interested more regarding system-as-root, please check [this Twitter thread](https://twitter.com/topjohnwu/status/1174392824625676288)) +If you are using a Samsung device and the **SAR** result is **Yes**, please check [its own section](#samsung-system-as-root). + +If you are using a Huawei device and the **SAR** result is **Yes**, please check [its own section](#huawei). + +Otherwise, continue to [Patching Images](#patching-images). + +(P.S.1 If your device have boot ramdisk, you can also install with [Custom Recovery](#custom-recovery))<br> +(P.S.2 If you are interested in how Android boots and how it affects Magisk, check out [this document](#boot.md)) + +## Patching Images + +If your device have boot ramdisk, you need a copy of the `boot.img`<br> +If your device does **NOT** have boot ramdisk, you need a copy of the `recovery.img` + +You should be able to extract either of them from official firmware packages, your custom ROM zip (if using one), or go to [XDA-Developers](https://forum.xda-developers.com/) and seek for resources, guides, discussions, or ask for help in your device's forum. + +- Copy the boot/recovery image to your device +- Press the **Install** button in the Magisk card +- If you are patching a recovery image, make sure **"Recovery Mode"** is checked in options.<br>In most cases it should already be automatically checked. +- Choose **"Select and Patch a File"** in method, and select the stock boot/recovery image +- Magisk Manager will patch the image to `[Internal Storage]/Download/magisk_patched.img`. +- Copy the patched image to your PC with ADB:<br> +`adb pull /sdcard/Download/magisk_patched.img` +- Flash the patched boot/recovery image to your device.<br> +For most devices, reboot into fastboot mode and flash with command:<br> +`fastboot flash boot /path/to/magisk_patched.img` or <br> +`fastboot flash recovery /path/to/magisk_patched.img` if flashing a recovery image +- Reboot and voila! ## Custom Recovery -If your device has custom recovery support, the easiest way is to install it through custom recoveries, such as TWRP. + +In some custom recoveries of modern devices, the installer scripts either cannot properly detect the correct device info, or the recovery environment does not meet its expectation, causing the installation to fail (or looks like success but actually bootloops). If you face any issues, use the [Patch Image](#patching-images) method as it is guaranteed to work 100% of the time. Due to this reason, we no longer recommend installing Magisk through custom recoveries on modern devices. The custom recovery installation method exists mostly for legacy support. - Download the Magisk installer zip - Reboot to custom recovery - Flash the zip and reboot -- Check whether Magisk Manager is installed. If for some reason it isn't installed automatically, manually install the APK - -## Boot Image Patching -You would want to choose this method if either your device does not have custom recoveries, your device is A/B and you don't want to mix recovery and boot images, or your device is using system-as-root without A/B partitions. - -To use this method, you are required to obtain a copy of the stock boot/recovery image, which can be found by extracting OEM provided factory images or extracting from OTA update zips. If you are unable to obtain one yourself, you might be able to find it somewhere on the internet. The following instructions will guide you through the process after you have the copy of boot/recovery image. - -- Copy the boot/recovery image to your device -- Download and install the latest Magisk Manager -- If you are patching a recovery image, **manually check "Recovery Mode" in Advanced Settings!** -- Press **Install → Install → Select and Patch a File**, and select your stock boot/recovery image file -- Magisk Manager will patch the image, and store it in `[Internal Storage]/Download/magisk_patched.img` -- Copy the patched image from your device to your PC. If you can't find it via MTP, you can pull the file with ADB: <br> -`adb pull /sdcard/Download/magisk_patched.img` -- Flash the patched boot/recovery image to your device and reboot. For most devices, here is the fastboot command: <br> -`fastboot flash boot /path/to/magisk_patched.img` or <br> -`fastboot flash recovery /path/to/magisk_patched.img` if you are patching a recovery image +- Check whether Magisk Manager is installed. If it isn't installed automatically, manually install the APK. ## Magisk in Recovery -Since some devices no longer use ramdisk in boot images, Magisk has no choice but to be installed in the recovery partition. For these devices, you will have to **boot to recovery every time** if you want Magisk. Since both Magisk and recovery lives in the same partition, what you actually end up getting when you choose to boot to recovery will be determined by **how long you press volume up**. -Each OEM and device has its own key combo to boot into recovery. For example on Samsung S10 it is **(Power + Bixby + Volume Up)**, and for Huawei it is **(Power + Volume Up)**. As soon as you press the combo and the device vibrates with a splash screen, the bootloader has already chosen which mode it is booting, either it be `boot`, `recovery`, or some OEM specific modes like `download`, `fastboot`, or `erecovery`. After the splash screen, release all buttons to boot into Magisk, since by default `recovery` mode will boot to the system with Magisk enabled. If you decide to boot to actual recovery, continue to press volume up until you see the recovery screen. +If your device does not have ramdisk in boot images, Magisk has no choice but to be installed in the recovery partition. For these devices, you will have to **reboot to recovery** every time you want Magisk. -**After installing Magisk in recovery:** -- **(Powering up normally) → (System with NO Magisk)** -- **(OEM Recovery Key Combo) → (Splash screen) → (Release all buttons) → (System with Magisk)** -- **(OEM Recovery Key Combo) → (Splash screen) → (Keep pressing volume up) → (Actual recovery)** +When Magisk is installed in your recovery, **you CANNOT use custom recoveries to install/upgrade Magisk!** The only way to install/upgrade Magisk is through Magisk Manager. The app will be aware of your device state and install to the correct partition and reboot into the correct mode. -Important Note: **You CANNOT use custom recoveries to install/upgrade Magisk!** +Since Magisk now hijacks the recovery of the device, there is a mechanism to let you *actually* boot into recovery mode when needed: it is determined by **how long you press volume up**. + +Each device has its own key combo to boot into recovery, as an example for Galaxy S10 it is (Power + Bixby + Volume Up). A quick Google search should easily get you this info of your device. As soon as you press the combo and the device vibrates with a splash screen, release all buttons to boot into Magisk. If you decide to boot into actual recovery mode, continue to press volume up until you see the recovery screen. + +**After installing Magisk in recovery (starting from power off):** + +- **(Power up normally) → (System with NO Magisk)** +- **(Recovery Key Combo) → (Splash screen) → (Release all buttons) → (System with Magisk)** +- **(Recovery Key Combo) → (Splash screen) → (Keep pressing volume up) → (Recovery Mode)** ## Samsung (System-as-root) -**If your device is NOT launched with Android 9.0 or higher (released after 2019), you are reading the wrong section.** + +**If your device is NOT launched with Android 9.0 or higher, you are reading the wrong section.** ### Before Installing Magisk -- Your device is non-A/B and uses system-as-root, so Magisk will be installed to the **recovery** partition of your device. **Please read the [Magisk in Recovery](#magisk-in-recovery) section!** + - Installing Magisk **WILL** trip KNOX -- Installing Magisk for the first time **REQUIRES** a full data wipe, backup before continue -- You have to have your bootloader unlocked before following the instructions +- Installing Magisk for the first time **REQUIRES** a full data wipe (this is **NOT** counting the data wipe when unlocking bootloader). Backup your data before continue. ### Unlocking Bootloader -Normally I wouldn't provide instructions for this, but since things had changed drastically from previous Samsung devices, and there are some caveats, I figure this would be helpful. -- Allow bootloader unlocking in Developer options → OEM unlocking -- Reboot your device to download mode. Either use `adb reboot download`, or use the key combo for your device. + +Unlocking BL on modern Samsung devices have some caveats, so I figure this would be helpful. + +- Allow bootloader unlocking in **Developer options → OEM unlocking** +- Reboot to download mode: reboot and press the download mode key combo for your device. - Long press volume up to unlock the bootloader. **This will wipe your data and automatically reboot.** -Just when you think the bootloader is unlocked, it is *actually* not! Samsung introduced `VaultKeeper`, meaning the bootloader will reject any unofficial partitions before `VaultKeeper` explicitly allows it. +If you think the bootloader is fully unlocked, it is actually not! Samsung introduced `VaultKeeper`, meaning the bootloader will still reject any unofficial partitions before `VaultKeeper` explicitly allows it. -- Go through the initial setup. Skip through all the steps since data will be wiped again later when we are installing Magisk. **Connect the device to internet in the setup!** -- Enable developer options, and **confirm that the OEM unlocking option exists and grayed out!** The `VaultKeeper` service will unleash the bootloader after it confirms that the user has the OEM unlocking option enabled. +- Go through the initial setup. Skip through all the steps since data will be wiped again later when we are installing Magisk. **Connect the device to Internet during the setup.** +- Enable developer options, and **confirm that the OEM unlocking option exists and is grayed out.** This means the `VaultKeeper` service has unleashed the bootloader. - Your bootloader now accepts unofficial images in download mode. ### Instructions -1. Download the firmware for your device. -2. Unzip the firmware and copy the **AP** tar file to your device. It is normally named as `AP_[device_model_sw_ver].tar.md5` -3. Install the latest Magisk Manager -4. In Magisk Manager: **Install → Install → Select and Patch a File** and select the AP tar file. -5. Magisk Manager will patch the whole firmware file and store the output to -`[Internal Storage]/Download/magisk_patched.tar` -6. Copy the patched file to your PC with `adb pull /sdcard/Download/magisk_patched.tar`. Do not use MTP as it is reported to corrupt files. -7. Reboot to download mode, and flash `magisk_patched.tar` as AP in Odin, together with the BL, CP and HOME_CSC files. Never flash only an AP file, as Odin can shrink your `/data` file-system if you do.<br> **Important: Uncheck "Auto Reboot" in Options!** -8. Magisk is now successfully flashed to your device! But there are still several steps before you can properly use the device. -9. We now want to boot into the stock recovery to factory reset our device. <br> -**Full data wipe is mandatory! Do not skip this step.** <br> -Press *Power + Volume Down* to exit download mode. As soon as the screen turns off, immediately press the combo key to boot to recovery (e.g. on the S10 it is *Power + Bixby + Volume Up*). Since we want to boot into stock recovery, **continue pressing the volume up button until you see the stock recovery screen**. -10. Use volume buttons to navigate through the stock recovery menu, and the power button to select an option. Choose *Wipe data/factory reset* to wipe the data of the device. -11. This time, we can finally boot to the system with Magisk. Select *Reboot system now*, and immediately press the combo key to recovery. After seeing the bootloader warning screen, release all buttons so it can boot to the system. -12. The device will automatically reboot for the first time it boots. This is completely normal and done by design. -13. After the device is booted up, do the usual initial setup. **The following steps will need an internet connection.** -14. You shall see Magisk Manager in your app drawer; if not, manually install the APK you downloaded in step 3 and continue to the next step. The app would be a stub and it shall automatically upgrade to the full Magisk Manager when you open it. -15. Magisk Manager will ask to do additional setups. Let it do its job and the app will automatically reboot your device. -16. Voila! Enjoy Magisk :) -### Additional Info -- Magisk actually patches 3 partitions on your device: - - `vbmeta`: replace with empty vbmeta image to disable partition verification - - `boot`: remove the signature of the image to prevent soft bricks - - `recovery`: this is where Magisk is actually installed -- **Never, ever** try to restore either of the 3 images mentioned back to stock! You can easily brick your device by doing so, and the only way out is to do full Odin restore following with factory reset. Just don't do it. -- If you want to upgrade your device, **never** flash the stock **AP** tar file with the reasons mentioned above. **Always** pre-patch the firmware before flashing in Odin. -- If you don't need to patch the full firmware, you can manually create a tar file with **at least** `vbmeta.img`, `boot.img`, and `recovery.img` to let Magisk Manager patch your images in the proper way. +- Use either [Frija](https://forum.xda-developers.com/s10-plus/how-to/tool-frija-samsung-firmware-downloader-t3910594) or [Samloader](https://forum.xda-developers.com/s10-plus/how-to/tool-samloader-samfirm-frija-replacement-t4105929) to download the latest firmware zip of your device directly from Samsung servers. +- Unzip the firmware and copy the `AP` tar file to your device. It is normally named as `AP_[device_model_sw_ver].tar.md5` +- Press the **Install** button in the Magisk card +- If your device does **NOT** have boot ramdisk, make sure **"Recovery Mode"** is checked in options.<br>In most cases it should already be automatically checked. +- Choose **"Select and Patch a File"** in method, and select the `AP` tar file +- Magisk Manager will patch the whole firmware file to `[Internal Storage]/Download/magisk_patched.tar` +- Copy the patched tar file to your PC with ADB:<br> +`adb pull /sdcard/Download/magisk_patched.tar`<br> +Do **NOT** use MTP as it is reported to corrupt files. +- Reboot to download mode. Open Odin on your PC, and flash `magisk_patched.tar` as `AP`, together with `BL`, `CP`, and `CSC` (**NOT** `HOME_CSC` because we want to **wipe data**) from the original firmware. +- After Odin is done, your device should reboot. You may continue with standard initial setup. +- If your device does **NOT** have boot ramdisk, reboot to recovery now to boot Android with Magisk (reason stated in [Magisk in Recovery](#magisk-in-recovery)). +- Although Magisk is installed, it still need some additional setup. Please connect to the Internet. +- Install the latest Magisk Manager and open the app. It should show a dialog asking for additional setups. Let it do its job and the app will automatically reboot your device. +- Voila! Enjoy Magisk 😃 + +### Additional Notes + +- **Never, ever** try to restore either `boot` or `recovery` partitions back to stock! You can easily brick your device by doing so, and the only way out is to do a full Odin restore with data wipe. +- To upgrade your device with a new firmware, **NEVER** directly use the stock `AP` tar file with reasons mentioned above. **Always** pre-patch `AP` in Magisk Manager before flashing in Odin. +- Use `HOME_CSC` to preserve your data when doing a firmware upgrade. Using `CSC` is only necessary for the initial installation. +- Never just flash only `AP`, or else Odin can shrink your `/data` filesystem. Flash full `AP` + `BL` + `CP` + `HOME_CSC` when upgrading. ## Huawei -Huawei devices using Kirin processors have a different partitioning method from most common devices. Magisk is usually installed to the `boot` partition of the device, however Huawei devices do not have this partition. Depending on what EMUI version your device is running, the instructions will be slightly different. +Magisk no longer officially support modern Huawei devices as the bootloader on their devices are not unlockable, and more importantly they do not follow standard Android partitioning schemes. The following are some general guidance for the few who managed to unlock their bootloader and really want to root it. -### Obtain Stock Images -Huawei does not release official factory images, however most firmware zips can be downloaded from the [Huawei Firmware Database](http://pro-teammt.ru/firmware-database/). To extract images from `UPDATE.APP` in the zip, you have to use [Huawei Update Extractor](https://forum.xda-developers.com/showthread.php?t=2433454) (Windows only!) +Huawei devices using Kirin processors have a different partitioning method from most common devices. Magisk is usually installed to the `boot` partition of the device, however Huawei devices do not have this partition. -### EMUI 8 -For EMUI 8 devices, your device has a partition named `ramdisk`, which is where Magisk is going to be installed. +Generally, follow [Patching Images](#patching-images) with some differences from the original instructions: -- If you plan to use custom recoveries, simply follow the instructions for custom recovery and you're all set. -- If you plan not to use custom recoveries, you will have to extract `RAMDISK.img` from your firmware. Follow the instructions for boot image patching above, but use the `RAMDISK.img` file instead of a boot image. -- To flash the patched image to your device, here is the fastboot command: <br> -`fastboot flash ramdisk /path/to/magisk_patched.img` <br> -Be aware you are flashing to `ramdisk`, not `boot`! - -### EMUI 9 or Higher -For EMUI 9+ devices, the `ramdisk` partition no longer exists. As a workaround, Magisk will be installed to the `recovery_ramdisk` partition. **Please read the [Magisk in Recovery](#magisk-in-recovery) section before following the instructions below!** - -*Note: As I tested on my Honor View 10, Huawei's kernel does not seem to be able to capture key button press events in early boot, so long pressing Volume Up does **NOT** boot to recovery on my device. Your experience may vary.* - -- If you plan to use custom recoveries, simply follow the instructions for custom recovery and you're all set. <br> -**Warning: Magisk will overwrite the custom recovery.** -- If you plan not to use custom recoveries, you will have to extract `RECOVERY_RAMDIS.img` from your firmware. Follow the instructions for boot image patching above, but use the `RECOVERY_RAMDIS.img` file instead of a boot image. -- To flash the patched image to your device, here is the fastboot command: <br> -`fastboot flash recovery_ramdisk /path/to/magisk_patched.img` <br> -Be aware you are flashing to `recovery_ramdisk`, not `boot`! +- After downloading your firmware zip (you may find a lot in [Huawei Firmware Database](http://pro-teammt.ru/firmware-database/)), you have to extract images from `UPDATE.APP` in the zip with [Huawei Update Extractor](https://forum.xda-developers.com/showthread.php?t=2433454) (Windows only!) +- Regarding patching images: + - If your device has boot ramdisk, patch `RAMDISK.img` instead of `boot.img` + - If your device does **NOT** have boot ramdisk, patch `RECOVERY_RAMDIS.img` (this is not a typo) instead of `recovery.img` +- When flashing the image back with `fastboot` + - If you patched `RAMDISK.img`, flash with command `fastboot flash ramdisk magisk_patched.img` + - If you patched `RECOVERY_RAMDIS.img`, flash with command `fastboot flash recovery_ramdisk magisk_patched.img` diff --git a/docs/ota.md b/docs/ota.md index 774633aad..873729a32 100644 --- a/docs/ota.md +++ b/docs/ota.md @@ -34,4 +34,4 @@ If you decide to start by installing Magisk without touching your recovery parti - If you have a copy of your stock image dump, install Magisk by using Magisk Manager's "patch images" feature - Once you restored back to stock recovery and other images, download the OTA. Optionally, once you have downloaded the OTA update zip, find a way to extract the zip (as it usually involved root) - Apply the OTA and reboot your device. This will use the official stock OTA installation mechanism of your device to upgrade your system. -- Once it's done you will be left with an upgraded, 100% stock, un-rooted device. You will have to manually flash Magisk back. Consider using the methods stated in step 1. to flash Magisk without touching the recovery partition if you want to receive stock OTAs frequently. \ No newline at end of file +- Once it's done you will be left with an upgraded, 100% stock, un-rooted device. You will have to manually flash Magisk back. Consider using the methods stated in step 1. to flash Magisk without touching the recovery partition if you want to receive stock OTAs frequently. diff --git a/docs/tools.md b/docs/tools.md index 484bf04a6..979fd5291 100644 --- a/docs/tools.md +++ b/docs/tools.md @@ -46,7 +46,7 @@ Supported actions: Search <hexpattern1> in <file>, and replace with <hexpattern2> cpio <incpio> [commands...] - Do cpio commands to <incpio> (modifications are done directly) + Do cpio commands to <incpio> (modifications are done in-place) Each command is a single argument, add quotes for each command Supported commands: exists ENTRY @@ -68,8 +68,8 @@ Supported actions: Return values: 0:stock 1:Magisk 2:unsupported (phh, SuperSU, Xposed) patch - Apply ramdisk patches. Configure settings with env variables: - KEEPVERITY KEEPFORCEENCRYPT + Apply ramdisk patches + Configure with env variables: KEEPVERITY KEEPFORCEENCRYPT backup ORIG Create ramdisk backups from ORIG restore @@ -83,10 +83,10 @@ Supported actions: print [-f] Print all contents of dtb for debugging Specify [-f] to only print fstab nodes - patch [OUT] + patch Search for fstab and remove verity/avb - If [OUT] is not specified, it will directly output to <input> - Configure with env variables: KEEPVERITY TWOSTAGEINIT + Modifications are done directly to the file in-place + Configure with env variables: KEEPVERITY split <input> Split image.*-dtb into kernel + kernel_dtb @@ -138,57 +138,60 @@ If neither --load or --compile-split is specified, it will load from current live policies (/sys/fs/selinux/policy) One policy statement should be treated as one parameter; -this means a full policy statement should be enclosed in quotes. +this means each policy statement should be enclosed in quotes. Multiple policy statements can be provided in a single command. -The statements has a format of "<rule_name> [args...]" -Multiple types and permissions can be grouped into collections -wrapped in curly brackets. -'*' represents a collection containing all valid matches. +Statements has a format of "<rule_name> [args...]". +Arguments labeled with (^) can accept one or more entries. Multiple +entries consist of a space separated list enclosed in braces ({}). +Arguments labeled with (*) are the same as (^), but additionally +support the match-all operator (*). + +Example: "allow { s1 s2 } { t1 t2 } class *" +Will be expanded to: + +allow s1 t1 class { all-permissions-of-class } +allow s1 t2 class { all-permissions-of-class } +allow s2 t1 class { all-permissions-of-class } +allow s2 t2 class { all-permissions-of-class } Supported policy statements: -Type 1: -"<rule_name> source_type target_type class perm_set" -Rules: allow, deny, auditallow, dontaudit +"allow *source_type *target_type *class *perm_set" +"deny *source_type *target_type *class *perm_set" +"auditallow *source_type *target_type *class *perm_set" +"dontaudit *source_type *target_type *class *perm_set" -Type 2: -"<rule_name> source_type target_type class operation xperm_set" -Rules: allowxperm, auditallowxperm, dontauditxperm -* The only supported operation is ioctl -* The only supported xperm_set format is range ([low-high]) +"allowxperm *source_type *target_type *class operation xperm_set" +"auditallowxperm *source_type *target_type *class operation xperm_set" +"dontauditxperm *source_type *target_type *class operation xperm_set" +- The only supported operation is 'ioctl' +- xperm_set format is either 'low-high', 'value', or '*'. + '*' will be treated as '0x0000-0xFFFF'. + All values should be written in hexadecimal. -Type 3: -"<rule_name> class" -Rules: create, permissive, enforcing +"permissive ^type" +"enforce ^type" -Type 4: -"attradd class attribute" +"typeattribute ^type ^attribute" -Type 5: -"<rule_name> source_type target_type class default_type" -Rules: type_transition, type_change, type_member +"type type_name ^(attribute)" +- Argument 'attribute' is optional, default to 'domain' -Type 6: -"name_transition source_type target_type class default_type object_name" +"attribute attribute_name" -Notes: -* Type 4 - 6 does not support collections -* Object classes cannot be collections -* source_type and target_type can also be attributes +"type_transition source_type target_type class default_type (object_name)" +- Argument 'object_name' is optional -Example: allow { s1 s2 } { t1 t2 } class * -Will be expanded to: +"type_change source_type target_type class default_type" +"type_member source_type target_type class default_type" -allow s1 t1 class { all-permissions } -allow s1 t2 class { all-permissions } -allow s2 t1 class { all-permissions } -allow s2 t2 class { all-permissions } +"genfscon fs_name partial_path fs_context" ``` ### magisk -When the magisk binary is called with the name `magisk`, it works as an utility tool with many helper functions and the entry points for several Magisk services. +When the magisk binary is called with the name `magisk`, it works as a utility tool with many helper functions and the entry points for several Magisk services. ``` Usage: magisk [applet [arguments]...] @@ -199,21 +202,22 @@ Options: -v print running daemon version -V print running daemon version code --list list all available applets - --daemon manually start magisk daemon --remove-modules remove all modules and reboot - --[init trigger] start service for init trigger + --install-module ZIP install a module zip file Advanced Options (Internal APIs): + --daemon manually start magisk daemon + --[init trigger] start service for init trigger + Supported init triggers: + post-fs-data, service, boot-complete --unlock-blocks set BLKROSET flag to OFF for all block devices --restorecon restore selinux context on Magisk files --clone-attr SRC DEST clone permission, owner, and selinux context --clone SRC DEST clone SRC to DEST --sqlite SQL exec SQL commands to Magisk database + --path print Magisk tmpfs mount path -Supported init triggers: - post-fs-data, service, boot-complete - -Supported applets: +Available applets: su, resetprop, magiskhide ``` @@ -254,10 +258,10 @@ Options: Flags: -v print verbose output to stderr - -n set properties without init triggers - only affects setprop - -p access actual persist storage - only affects getprop and deleteprop + -n set properties without going through init + affects setprop and prop file loading + -p also access props directly from persist storage + affects getprop and delprop ``` ### magiskhide