There are quite a few steps involved in achieving the desired root, but it is all straightforward if you follow the directions!! We will be here to assist with the rooting process only! The reason i say that is due to the fact of all that the ENG system.img contains, you can nuke your phone to oblivion if you aren't careful, hence this next part... Anything and everything done with the ENG system.img and root after root is achieved is on YOU, and the team and I will NOT be held RESPONSIBLE! Don't blame us for your experimenting! Root works, and won't mess your device up that is what we are here for, any further research/testing is all on the USER!!
After a long 4 months, we have finally achieved our main objective! Countless hours have been put into this process, as well as much lost sleep; so we could be here, at this point releasing root to you, the community! However before we get to that point there are some people need to be thanked, whom without; none of this would have been possible!
First off i would like to apologize about the delay i planned on having this uploaded shortly after @elliwigy made his thread, however my internet was not being the greatest and i was having issues uploading the needed files. Now after all day it is finally done and i am here to present to you the community, ROOT for the USA Samsung Galaxy S8/S8+ This thread will be focused on the regular S8 variant, the S8+ thread can be found here Root Samsung Galaxy S8+ Now without further ado, we shall begin!!!
Samsung won this one for us! We flash 4 ENG Odin files, then the way we achieve root is by executing an su binary that they so graciously provided us within the ENG systems xbin. Afterwards we run a script that pushes the rest of what we need in and installs superSU to the system. At that point root is done, however it is not the most stable/smooth. The next process is optional, but recommended. We will be taking a stock system.img.ext4 from a firmware of your choice either U or U1, a supersu.zip(that will be provided) which installs root to the system. They are then flashed in flashfire, resulting in a stock rooted rom.
--4 Firmware Files(provided by us)--
--Odin Prince Cosmey and Regular--
--systemroot.zip(provided by us)--
--SuperSU.zip(provided by us)--
--PC with ADB--
--Full stock firmware, either G950U or G950U1(just in case need to flash stock, as well as for system.img.ext4 and cache.img.ext4)--
--Full combo firmware(for whatever reason... we may need you to have it to fix issues you are having)--
- Download the SamPWND_S8_4File_Firm, the SamPWND_S8.zip, and the systemroot.zip
- Download Odin Prince Comsy and Normal Odin
- Extract SamPWND_S8_Firm to your desired destination (desktop works), then open Odin Prince Comsy, and place the files in their respective slot (BL --> BL, AP --> AP, CP--> CP, CSC--> CSC)
- In Odin, go to options and select, Auto Reboot, Re-Partition, F. Reset Time, Nand Erase All, and Phone Bootloader Update (This will wipe the device)
- Put Samsung Galaxy S8 into Download mode (Power + Volume Down + Bixby) A warning screen will come up warning you about flashing a custom os, to continue press Volume Up.
- Press Start in Odin (Flashing will begin, this can take up to 10 min)
- When complete device will reboot into recovery mode, at this point just select reboot system now.
- Complete the Setup, and accept device RSA Keys, to authorize adb (if popup is not there already, or you have dismissed it; please disconnect and reconnect phone, then accept)
- Now take the systemroot.zip dowloaded in step one, and extract it to your adb install directory (usually C:adb)
- Navigate to adb directory and CTRL + Shift + Right Click, select open cmd window here
- Once you have cmd open and the extracted systemroot folder in your adb directory, we can begin.
- Type: adb push systemroot /data/local/tmp/systemroot
- When that completes type: adb shell
- Once in the shell type: chmod -R 0777 /data/local/tmp
- This next one is tricky, type: setsid su (the output will look like this: dreamqltesq:/ $ /system/bin/sh: No controlling tty: open /dev/tty: No such device or address
- /system/bin/sh: warning: won't have full job control), you will then be in a very unstable root shell
- In order for this shell to become stable you must type exit, it will then drop you into a stable root shell, however this will probably take a few tries as most commands sent to the unstable shell are returned as gibberish. The shell itself will continue to change from standard user to root user, upon a press of the enter key. This will continue until exit is successfully ran and you are dropped into the stable shell (Note: Since the shell is changing from user to root after each command the exit command must be executed will the shell is root, otherwise instead of dropping to a root shell, you will drop to a user shell and have to begin with setsid su again)
- Once a stable root shell is achieved you will type: echo /data/local/tmp/systemroot/remount2.sh > /sys/kernel/uevent_helper (this will remount system and rootfs as r/w)
- Wait 10 sec and type: mount (confirm that system is mounted as r/w)
- Now we will execute the script, type: sh /data/local/tmp/systemroot/root.sh (there will be some errors displayed back to you in adb, don't worry about them everything is going accordingly)
- When the script is done running your device will reboot, and at this point you are done. However, although root has been achieved it is not the smoothest/most stable, but we have a remedy for that as well!
- With your device still connected to the computer** Take the SamPWND_S8.zip downloaded from step one, and either put it on your device's internal storage or sdcard
- Take your stock firmware of choice, and extract it to your desktop. From this you will take the system.img.ext4 and either put it on your device's inter storage or sdcard
- Download flashfire from the Play Store
- Open flashfire and grant root permissions (this must be done with airplane mode enabled), exit flashfire
- Open SuperSU, go to settings, scroll to the bottom, and enable pro features. Reopen SuperSU, select flashfire, and force user ROOT
- Open flashfire again, and select flash firmware package (choose system.img.ext4)
- Select flash ZIP or OTA (choose SamPWND_G950U.zip) Under options for the zip make sure to select mount /system read/write!!
- Select wipe and make sure the top 3 options are selected, press the check in the right hand corner
- This next step is very important! There is a specific order that these are supposed to be in, from top to bottom: WIPE --> Flash Firmware Package --> Flash ZIP or OTA. If your order is not this, hold down on wipe like it is an app and drag it to the top of the list. Make sure it is in that order before pressing the flash button!
- Select EverRoot from main screen and under options disable inject SuperSU
- Press the lightning bolt to begin flashing, and wait for your device to reboot
Thank you for your continuous support over the past few months, all the work put into this root method/Rom project was done for you guys, so that you could experience the best device of 2017 (so far), how you want it! With your own customization's and endless freedom! We truly hope that you enjoy our work, and remember donations help in the process!
The developers that have worked on this project over these past few months, did so while living their lives; attending work,
etc, as well as without pay. Those who pledged a bounty thank you, we hope that you are true to your words and pay your pledge, to do so please visit the bounty thread! All others if you benefited from this in anyway and want to show your appreciation, all the team members have a donation email on their profile, we love to see the support!
SamPWND, ROM for the Samsung Galaxy S8
ROM OS Version: 7.x Nougat
ROM Kernel: Linux 4.x
Current Stable Version: 1.0
Stable Release Date: 2017-08-19
Current Beta Version: N/A