Essential Tools for Android Users: A Comprehensive Guide to Installing and Uninstalling Magisk

As an application that has the highest system privileges, the Magisk App has certain usage thresholds. A small mistake can lead to severe consequences, such as being unable to boot. This article will introduce the Magisk App based on official documentation and personal experience.
The content and screenshots of this article are based on Magisk v23 and cover four main functions of the new Magisk App: installing and uninstalling Magisk; granting Root permissions to applications; hiding Magisk; and obtaining and managing modules. Before diving into the freedom that Magisk offers, it is highly recommended that you read this article to understand the countermeasures in rare cases, which is also why this article appears before module recommendation articles. If you are still unsure how to flash Magisk, you can refer to “Essential Tools for Android Users: A Beginner’s Guide to Installing Magisk from Scratch”.
Essential Tools for Android Users: A Comprehensive Guide to Installing and Uninstalling Magisk

Installing and Uninstalling Magisk

The first screen of the Magisk App is responsible for the installation and uninstallation of the Magisk image. The functions on this page are often tied to specific usage scenarios, so the following text will introduce several important functions under this interface in four different contexts.
Essential Tools for Android Users: A Comprehensive Guide to Installing and Uninstalling Magisk

Scenario 1: Installing Magisk to the Original System

In the previous article on installing Magisk from scratch, we encountered this scenario. By using the “Install” > “Select and Patch a File” function next to the Magisk icon, Magisk modifies the extracted image for us to flash with fastboot or boot into the system.
This is the most basic use of the Magisk App, and apart from a few new models, this is also the most reliable way to flash Magisk. After each system update, we recommend re-flashing following this process.

Scenario 2: Magisk Needs Updating or Repairing

Before Magisk v22, each new version release would provide both magisk.zip and magisk.apk files, with the former representing the Magisk body to be injected into the system and the latter being the application used to manage and use Magisk. Therefore, each time before packing the boot.img image or directly flashing it into the system, one had to download the magisk.zip hosted on GitHub, which was very inconvenient.
After Magisk v22, the .zip and .apk packages were merged into one, and the installed Magisk App itself has a flashing function, meaning updating the application body is equivalent to updating the Magisk that is about to be injected into the system, without the need to frequently request downloads from the network.
Upon detecting that the system has already flashed Magisk, the “Install” submenu next to the Magisk icon will add a “Direct Install” option. “Direct Install” will flash the image of the same version as the App into the system. If some functions of Magisk inexplicably fail, you can try using this function to remount Magisk.
If an update is needed, just follow the previously mentioned process: first update the App body as prompted within the application, then click the “Upgrade” button to automatically flash.

Scenario 3: Performing System OTA

After the system downloads the update package, it will perform a complete integrity check before installation. Many Root tools fail this check due to modifications to underlying files, preventing the installation of OTA. The advantage of Magisk is that it “mounts” rather than “rewrites”. Of course, to complete OTA, manual operation is still required.
First, to prevent automatic installation of updates from causing failures, the first step after flashing Magisk is to disable the system’s “Automatic Install Updates” option. In AOSP-like systems, this project is generally located in the “Developer Options” interface; in systems with significant modifications, this option may be found in the system update App.
Readers should remember that we did modify the system’s boot.img or recovery.img when installing Magisk. Therefore, when receiving updates pushed by the manufacturer, we need to click on “Uninstall Magisk” > “Restore Original Image” (do not restart) on the Magisk App homepage to restore the original image. Theoretically, OTA should be able to install correctly at this point.
Essential Tools for Android Users: A Comprehensive Guide to Installing and Uninstalling Magisk
The image to disable updates comes from official documentation
After downloading and installing OTA, the system will prompt a restart, and after restarting we will lose Magisk. Therefore, we need to follow the method mentioned in the previous article “Packing the Image and Flashing” to extract the image > modify the image > flash/boot into the image to reinstall Magisk.
Unlike the Magisk body, modules do not need to be reinstalled. Magisk stores modules in a folder (/data/adb/modules), and each time the device boots, Magisk will automatically mount the modules in that folder. The original factory image cannot mount these modules, but it does not mean that these module files are deleted; as long as Magisk is reinstalled, these “dormant” modules can come back to life.
Based on years of flashing experience, here are some tips for reinstallation:
  1. Not every system update will significantly modify boot.img or recovery.img, which means that the old system image packaged by Magisk is likely to boot the new system smoothly. If we have previously saved or backed up the old system image modified by Magisk, after the system update, we can try booting the old image with fastboot boot magisk.img in the bootloader interface. If both the system and Magisk are normal, then we do not need to extract the new system image and can click “Install” > “Direct Install”; at this point, the target of “Direct Install” is the new system’s partition, allowing us to successfully flash Magisk for the new system.
  2. Magisk App can retain Magisk on A/B partition devices during system updates. If the A/B section on the App homepage shows “Yes”, we only need to click “Install” > “Install to Unused Slot” before rebooting to install OTA. However, as reported by well-known user Clyde, some systems with partition checks during OTA, like Pixel’s ROM, are likely to experience boot loops using this method. If related issues arise, it is more straightforward to switch to the general flashing method mentioned above.

Essential Tools for Android Users: A Comprehensive Guide to Installing and Uninstalling Magisk
The process of carrying Magisk through system OTA can be summarized as: Disable “Automatic Install Updates” > Receive OTA > “Uninstall Magisk” / “Restore Original Image” > Download and Install OTA >
  • For devices where A/B partition is “Yes”: Do not restart > “Install” > “Install to Unused Slot” > Restart to update the system.
  • For other devices: Restart to update the system > Reinstall Magisk.

If you encounter issues updating, try flashing the full package without clearing user data, and then reinstall Magisk. OnePlus and other models will automatically download the full package upon detecting Magisk. Always keep a full package handy to avoid panic.

Scenario 4: Completely Uninstalling Magisk

Under the “Uninstall Magisk” command, there is also an option for “Complete Uninstall”. Clicking this command will uninstall all installed modules and Magisk itself after rebooting the device.
This command is only used when we want to say goodbye to Magisk forever. If you want to uninstall a single module, please refer to the content of Chapter 4; if Magisk causes issues on the device, it is recommended to check MagiskHide and suspicious modules instead of completely uninstalling.

Granting Root Permissions to Applications

Android is a system based on the Linux kernel, and obtaining root on Android is similar to using a root account on Linux. With root permissions, we can modify underlying files, inject scripts, adjust system performance, read more detailed data… Of course, none of this requires us to manually write scripts; we just need to grant root permissions to applications that can accomplish these tasks through Magisk.
The request for root permissions is initiated by the application, and Magisk will then pop up a window similar to Windows UAC for user confirmation. To prevent malicious applications from simulating clicks, you can enable “Biometric Authentication” and “Click Hijack Protection” options in the Magisk App settings.
Essential Tools for Android Users: A Comprehensive Guide to Installing and Uninstalling Magisk
After authorizing an application, Magisk will by default pop up a notification when that application uses root permissions and log related activities. These two options are hidden in the superuser interface of the Magisk App, and by clicking on the name of the authorized application, you can find the switches to control notifications and logs.
Essential Tools for Android Users: A Comprehensive Guide to Installing and Uninstalling Magisk
Granting root permissions to an application means giving that application complete control over the phone, so be sure to ensure that this application is trustworthy. If you use root permissions on your primary device, you should be even more restrained and respectful.
Here are some additional tips regarding granting root permissions:
  • Many applications request root permissions simply to gain certain underlying permissions, which do not necessarily require root; we can grant them using adb commands instead, such as the battery monitoring applications we previously discussed, like Buoy or Gsam Battery Monitor.

  • Root is considered an inefficient and slow processing method, which led to the emergence of Shizuku. It can act as an intermediary between root permissions and applications that require root permissions, enhancing permissions through root/adb, and then granting those applications access to system APIs and adb permissions, which is more efficient than root permissions. If you are using applications like “Black Room”, “Fridge”, or “App Ops”, it is recommended to install Shizuku first and then use it to grant permissions to those applications.

Hiding Magisk through MagiskHide

Due to the potential dangers posed by root permissions and the modules to be mentioned, some applications related to copyright, finance, and communication will check whether the system is “complete” in advance. If they find that the system is rooted or has certain modules mounted, they may issue warnings or even exit directly, and may restrict the content available to users. To alleviate the inconvenience caused to users by these applications, Magisk has designed the MagiskHide function.
First, click on the gear icon at the top right of the App homepage and check “MagiskHide”. At this point, the Magisk superuser interface will have an additional MagiskHide submenu.
Before hiding Magisk from applications, we can first test whether the device can pass the “SafetyNet Check” located on the App homepage. Click the test button on the homepage; the first test requires downloading additional components and the device must be able to access Google normally, so please ensure the network is functioning properly. If all goes well, a message stating “Passed the Check” will pop up shortly.
Essential Tools for Android Users: A Comprehensive Guide to Installing and Uninstalling Magisk
If basicIntegrity fails, it indicates that there is an issue with the integrity of the system image, which generally occurs in third-party ROMs. We can try installing the Universal SafetyNet Fix[1] module or changing ROMs to resolve this issue. If ctsProfile fails, it is likely that the device or ROM is not certified. Installing the MagiskHide Props Config[2] module usually resolves this issue. You can refer to Chapter 4 for module installation details.
After confirming that the SafetyNet test passes, we can then select the applications we want to hide the root status from.
Essential Tools for Android Users: A Comprehensive Guide to Installing and Uninstalling Magisk
Generally speaking, the following four types of applications often have root detection behaviors and countermeasures:
  1. Applications that provide copyrighted and region-restricted content: For example, if Google Play detects root, the device will become “uncertified”, and we won’t be able to search for streaming applications like Netflix.

  2. Payment applications: For instance, Cloud Flash Pay will issue a warning and directly hide the fingerprint payment option if it detects root.

  3. Communication applications: For example, ZohoMail will prompt users to log out if it detects root.

  4. Games: Some games have strict anti-cheat mechanisms and may refuse users to play if root is detected.

By considering the issues encountered or browsing online resources, we can determine which applications to hide Magisk from. In the MagiskHide interface, simply click the checkbox next to an application, and Magisk will automatically select the components under that application. If we have already opened that application before checking, we might need to clear the application cache or even data.
According to the author’s statement, this feature is a “dirty hack”, and one should try to exercise restraint while using it. It is not recommended to check applications that do not have root detection mechanisms.
If after the above settings, some applications still detect root permissions, we can enable the “Hide Magisk App” option in the Magisk settings. Once selected, Magisk will change its application name, and users will need to access the renamed Magisk App through search or created shortcuts. This can prevent some applications from detecting Magisk when scanning the user’s application list in lower version systems.

Obtaining and Managing Modules

Modules are the primary reason most users choose to install Magisk; they are ready-to-use system modification packages or components of modification packages. Modules can be automatically downloaded and installed from the Magisk App or manually downloaded from the internet, and some applications with root permissions can install modules directly without user authorization.
Due to the vast differences between Android devices, the same module cannot guarantee perfect compatibility with all devices; different modules, applications, and user modifications can sometimes conflict, leading to a series of serious issues; some modules also require a gradual improvement process, and some modules are inherently incomplete and need the assistance of other modules. Therefore, it is crucial to follow the installation process for modules. If issues arise with the device, there are often simple and easy solutions available.

Basic Process for Installing Modules

Installing modules involves three steps: reading the module description > confirming related dependencies > installing the module and rebooting. The most important step is the first one, as it directly determines whether the current module meets your needs and whether it can be installed and used. Below, we will take the content interception module Energized Protection found in the Magisk App as an example to explain these three steps in detail.
We enter the module interface on the fourth screen of the Magisk App and use the search function to find Energized Protection. Click the folder icon at the bottom right of the module to read its description. Since it is obtained from GitHub, if the module description fails to load, you can try enabling “Secure DNS” in the settings. These in-app modules are actually hosted in the Magisk Modules[3] repository, and we can also use a computer to access the related Repo[4] to read the module description.
Essential Tools for Android Users: A Comprehensive Guide to Installing and Uninstalling Magisk
The most important parts of the module description are the dependencies and usage. Many modules require cooperation with other modules or Apps to function. Before installing these modules, it is essential to confirm the status of related dependencies. For example, Energized Protection tells us it requires the Systemless Hosts module, and versions of Magisk prior to 20.4 also need to install Busybox for Android NDK. It uses command line methods, thus we also need a terminal for the Android platform, such as Termux[5].
Essential Tools for Android Users: A Comprehensive Guide to Installing and Uninstalling Magisk
After confirming that all these dependencies are installed, click “Install” and reboot the system for the module to be considered installed. If the installed module is unfamiliar to you, this article does not recommend installing many at once.
Modules not listed in the App, such as NotoCJK, have their descriptions at the release point. Installing these modules requires using the “Install from Local” command at the top of the module interface and then selecting the downloaded module zip file.

Self-Rescue After Module Issues

If issues like application crashes, error displays, and inability to boot occur after installing a module, it is likely that one of the modules is problematic. For different situations, there are currently five relatively simple self-rescue methods:
  • If you can still access the Magisk App, go to the module interface, “Remove” the problematic module, and then restart to completely uninstall that module.
  • If you can no longer open the Magisk App but can use adb, connect to your computer and input adb wait-for-device shell magisk –remove-modules; this will delete all modules and reboot.
  • If you cannot access adb, try entering safe mode. Different devices have different ways to enable safe mode: while the device is on, a common way is to press and hold the power button to bring up the reboot button; while the device is off, it is usually activated by specific physical buttons. Once in safe mode, Magisk will automatically disable all modules. Restarting again will keep the modules disabled, and the device should be able to return to normal.
Essential Tools for Android Users: A Comprehensive Guide to Installing and Uninstalling Magisk
  • If you have third-party Recovery, use the file management function in Recovery (Advanced > File Management), navigate to /data/adb/modules, rename the problematic module to “remove”, and Magisk will automatically uninstall that module upon reboot. A simpler and more brute-force method is to directly delete the problematic module files in that directory.
Essential Tools for Android Users: A Comprehensive Guide to Installing and Uninstalling Magisk
  • If you have third-party Recovery, you can also rename Magisk.apk to uninstall.zip and flash it in Recovery, which will completely uninstall Magisk, allowing you to leave gracefully.

Magisk provides a high degree of freedom for devices while also exposing them to significant risks. However, to enjoy its benefits, one must also bear its burdens. Therefore, while this article demonstrates the four core functions of the Magisk App, it also explains how to carry out OTA normally with Magisk and how to resolve module issues.
These measures can maximize the safety of device data, but to prevent issues from occurring in the first place, the most important thing is to improve one’s ability to discern and gather information, and to be cautious with modules and applications from dubious sources.
Reference Links
[1] Universal SafetyNet Fix:
https://github.com/kdrag0n/safetynet-fix
[2] MagiskHide Props Config:
https://github.com/Magisk-Modules-Repo/MagiskHidePropsConf
[3] Magisk Modules:
https://github.com/Magisk-Modules-Repo
[4] Related Repo:
https://github.com/Magisk-Modules-Repo/energizedprotection
[5] Termux:
https://termux.com/

This article is co-authored by multiple authors

Main Author
Essential Tools for Android Users: A Comprehensive Guide to Installing and Uninstalling Magisk Ke Pa
Co-Author
Essential Tools for Android Users: A Comprehensive Guide to Installing and Uninstalling Magisk Lu Zhongnan
/ More Popular Articles /
Essential Tools for Android Users: A Comprehensive Guide to Installing and Uninstalling Magisk
Essential Tools for Android Users: A Comprehensive Guide to Installing and Uninstalling Magisk
Essential Tools for Android Users: A Comprehensive Guide to Installing and Uninstalling Magisk

Essential Tools for Android Users: A Comprehensive Guide to Installing and Uninstalling Magisk

Leave a Comment

×