This is basically a megathread of any bits I can find on rooting the device, most of this comes from an XDA thread but I'll keep updating as and when.
I'm not going to teach you how to use adb, so this guide simply assumes you are already able. If you're not I wouldn't recommend this as at all.
Also of yet, I haven't managed to get SuperSU working so your favorite root apps WILL NOT WORK. I simply used this to change some files so my wireless 360 pad would work properly, if I get SuperSU working I will update this post.
-
Download this firmware file , I'm not sure why this needs to be done but it does. Unzip it and copy the contents to a FAT32 formatted drive.
-
Enable developer mode. This can be done in your settings on the Mi Box, find "About" and then click on "build" 7 times to enable the developer menu. It will confirm you've done this with an on-screen toast.
-
Enable adb. This can be done by going back into settings and clicking the newly-created "Developer options" and then enabling "USB Debugging".
-
Grab (or make) a USB MALE TO MALE cable to hook up the Mi Box usb to your computer.
-
Run adb devices on your computer to confirm it's all good, it should be listed. If not, wait for the Mi Box to display a dialogue confirming you want to allow adb on this computer this can take a couple of moments so don't cry yet.
-
Once adb is sorted you need to run "adb reboot recovery" which will bring you to the recovery screen.
-
Unhook the cable and plug in your usb, click INSTALL FROM EXT then FROM UDISK and select the zip file then just let the update do it's thing. It will take a while so go and pop the kettle on.
-
It's done! Reboot and let's get started.
-
Once we're back, see if the box is still under adb devices. If not, you know what to do.
-
Run "adb root" then "adb disable-verity" and then "adb reboot".
-
Once it comes back on, YOU ARE ROOTED! Run Adb root and then adb remount to start making edits. (thanks /u/evilp0tat0 for clarification!)
Bonus: SuperSU is now go , but just be really careful. Bad things could happen! (thanks /u/evilp0tat0)
TLDR; Adb > Cable > Update > Run some commands > ??? > Profit
Most of this is taken from here but it's pretty brief and messy... If I get SuperSU working I will post back here. If anybody knows how to manually push su to 6.0.1 via adb then please help!
I wrote the original guide on XDA. To answer your question about why that firmware needs to be installed -- the stock firmware is not a userdebug build, but that firmware is. Userdebug builds allow the "adb root" (run root shell) and "adb disable-verity" (make changes to system partion) commands.
Installing SuperSU is possible, but not advised. Selinux is enforcing on boot and there's a context issue, which results in a hung boot. Since the bootloader is locked, and xiaomi not providing unlock images for this device, the selinux context issue can't be fixed.
Edit-- in addition to step 11-- "adb remount" can be used after "adb root" to unlock system partion