[How To] Get root access on F series

Here is information about customize your F series firmware.

m2tk
SamyGO Project Donor
Posts: 38
Joined: Wed Aug 28, 2013 8:32 pm

Re: [How To] Get root access on F series

Post by m2tk »

Tamagnun wrote:
m2tk wrote:Your run.sh is not called. Can you show us how your widgetlist.xml looks like? Is it:
<widget id="SamyGO">
I write some Main.js to autoscan all USBs for needed files, worked for me.
Hi m2tk, thank you for interest in my trouble.
I agree with you about run.sh is not called at the TV boot time, the question is: WHY?!?!?

The Main.js provided by the developers with the root tool for F-series is yet capable to scan all the USB ports; the tool for F-series is quite different from the one for E-series: during the SamyGo Widget installation (that I performed by using the SammyWidget program, this prg simulates an http server and automatically provides to the TV the right widgetlist.xml file) only Main.js, run.sh and data.zip are copied on the TV, at widget execution (Main.js ran) the AutoStart and libSkype.so are copied into the TV Skype folders, during next TV boot the autostart process will execute a "function" stored into libSkype.so that, because the library had been substituted, will execute run.sh.

Something doesn't work on my TV: widget installation is regular, widget execution also (I have also modified the Main.js to get a copy of the original libSkype.so library before to overwrite it!), but at boot time the new libSkype.so doesn't perfom the planned actions, anyone seems to be capable to explain why...
I've posted the original libSkype.so (and nine guys have downloaded it at the present time!!), I hope someone will be able to explain which are the differences by the modded libSkype.so to explain what happen on my TV!

I ask you a pleasure: do you now a way to execute a bash script from Main.js?
[...]

Regards
Roberto

Code: Select all

//Param="filePlugin.Unzip('"+ Path +"/data/SamyGO.zip','/mtd_rwcommon/widgets/user/SamyGO/')";
//r = eval(Param);
//if (r==1) str = 'OK'; else str = 'No';
//Log("Unzip "+ usbPath +"/data/SamyGO.zip: " + str);

Log('/mtd_rwcommon/widgets/user/SamyGO : ' + filePlugin.IsExistedPath('/mtd_rwcommon/widgets/user/SamyGO'));
Param="filePlugin.Copy('/mtd_rwcommon/moip/engines/Skype/libSkype.so', '"+ usbPath +"/data/libSkype.so')";
r = eval(Param);
if (r==1) str = 'OK'; else str = 'No';
Log("Copy "+ Path +"/data/libSkype.so: " + str);
Hello Roberto.
I propose you to add to Main.js that code. First part is optional and second will test if there is widget installed and copy modified libSkype.so to the usb drive to be sure if it's overwritten. Open it in some hex viewer and search for "SamyGO" (case sensitive).
You must be sure that original libSkype.so was substituted by the one from USB.
Set usbPath to your real usb i.e. '/dtv/usb/sda1' or '$USB_DIR'.

I think that setting Skype in autostart mode is not necessary, that code will probably turn it on:

Code: Select all

Param="filePlugin.Copy('"+ usbPath +"/data/AutoStart', '/mtd_rwcommon/moip/engines/Skype/AutoStart')";
r = eval(Param);
if (r==1) str = 'OK'; else str = 'No';
Log("Copy "+ Path +"/data/AutoStart: " + str);
If not try to run Skype after reboot it will probably try to launch 'run.sh' from '/mtd_rwcommon/widgets/user/SamyGO/data/run.sh'.

mito
SamyGO Project Donor
Posts: 32
Joined: Mon Oct 21, 2013 8:42 am

Re: [How To] Get root access on F series

Post by mito »

Rooting works great on UE32F6470SS with firmware 1107.
Big THX

Thorsten2605
SamyGO Project Donor
Posts: 13
Joined: Fri Oct 11, 2013 11:37 am

Re: [How To] Get root access on F series

Post by Thorsten2605 »

I have problems too to get root access.

I installed Skype und logged in after checking the box autostart with tv. Then installed SamyGo and launched. The result ist 2x OK.
But I don't get any ftp connection (I already tried by launching smart hub before connection).

Skype isn't running anymore even a reinstallation isn't working. So what's wrong?

I have a UE46F7090 with latest firmware (from september 2013).

Tamagnun
SamyGO Project Donor
Posts: 65
Joined: Tue Sep 10, 2013 7:31 pm
Location: Italy

Re: [How To] Get root access on F series

Post by Tamagnun »

@hispan: I had to login to Skype before to turn on the autostart checkbox, so the answer is "yes, before to install SamyGO widget I login Skype and I've set it for autorun".

@m2tk: I'll add your code to Main.js to verify if the SamyGO widget has been installed and libSkype.so has been substituted in next days, but really if actually I try to execute Skype app (after SamyGO widget installation and execution, and TV reboot) it hangs (stopped on "loading" message), that means the library has been substitued!
In addition, even if I manually started Skype, telnet and ftp don't work!

I think that for some reason (maybe different module/function name between original and modded libSkype.so), when Skype starts (or autostart) it doesn't execute the right module that it's present into the modded library and which is demanded to start the run.sh script.
By following this idea, I've copied the original libSkype.so and uploaded it on this thread, I hope that any guys should be able to compare it with the modded one.
Another possible alternative is to install on my TV an original (maybe older, or with different language set...) Skype app on which we are sure that the root method works properly, do you know if it's possibile to find an older Skype widget to reinstall it?

Thank you at all for your interest in my trouble.
Regards
Roberto

m2tk
SamyGO Project Donor
Posts: 38
Joined: Wed Aug 28, 2013 8:32 pm

Re: [How To] Get root access on F series

Post by m2tk »

Tamagnun wrote: @m2tk: I'll add your code to Main.js to verify if the SamyGO widget has been installed and libSkype.so has been substituted in next days, but really if actually I try to execute Skype app (after SamyGO widget installation and execution, and TV reboot) it hangs (stopped on "loading" message), that means the library has been substitued!
In addition, even if I manually started Skype, telnet and ftp don't work!

I think that for some reason (maybe different module/function name between original and modded libSkype.so), when Skype starts (or autostart) it doesn't execute the right module that it's present into the modded library and which is demanded to start the run.sh script.
By following this idea, I've copied the original libSkype.so and uploaded it on this thread, I hope that any guys should be able to compare it with the modded one.
...
Roberto
Hello,
if Skype hangs that means original .so is substituted or missing.
Next, need to be sure that path

Code: Select all

/mtd_rwcommon/widgets/user/SamyGO/data/run.sh
exists when Skype starts.
I think you can test this path in .js. Try to modify run.sh so that you know it was launched by copying some file to USB.
Thorsten2605 wrote:I have problems too to get root access.
I installed Skype und logged in after checking the box autostart with tv. Then installed SamyGo and launched. The result ist 2x OK.
But I don't get any ftp connection (I already tried by launching smart hub before connection).
Skype isn't running anymore even a reinstallation isn't working. So what's wrong?
I have a UE46F7090 with latest firmware (from september 2013).
Hi,
How did you install SamyGO? By developer account?

k00l3
SamyGO Project Donor
Posts: 23
Joined: Mon Jun 04, 2012 6:57 pm

Re: [How To] Get root access on F series

Post by k00l3 »

worked perfectly for me

UA46F7500 running T-FXPDEUC 1102

Tamagnun
SamyGO Project Donor
Posts: 65
Joined: Tue Sep 10, 2013 7:31 pm
Location: Italy

Re: [How To] Get root access on F series

Post by Tamagnun »

And finally... WORKS!!! ;)

The reason of all my troubles was my bad idea to rename the SamyGO.zip file (the widget) in SamyGO Widget.zip after download it (to better recognize it in future!! :roll:) and before to copy into the ./widget folder of SammyWidget utility.

In this way, during the widget installation, all the files are written under/mtd_rwcommon/widgets/user/SamyGO Widget folder instead of the proper /mtd_rwcommon/widgets/user/SamyGO folder, and obviously the run.sh script couldn't be executed at TV boot time by the modded libSkype.so!!

I've verified this situation (thanks to m2tk for his suggestion) by modifying the Main.js in order to copy from the TV the three key tool files (run.sh, libSkype.so and data.zip) and obviously two of them were not found (bad directory!).
So I've written another version of Main.js to copy all the files under the known Skype folder, made hexadecimal editing of the libSkype.so in order to execute run.sh (name modified in /mtd_rwcommon/moip/engines/Skype/scriptrun.sh to keep the same filename length) and in this way the root has been obtained!
You can imagine my surprise (or daze, better... :x) when I found that the widget folder name wasn't the one expected!!

Of course I've restored the original situation, renamed the widget filename and tested (with success!! :) ) the normal root process!!

Now, two additional questions:
1) WinSCP (ftp client) works perfectly, but accessing the TV by using telnet the default shell is very poor: someone knows a different shell that can be executed to have a more normal Linux shell?
2) Someone knows a default script always (and only!!) executed at the boot time, so I will modify it in order to execute the root script from an USB key (if connected to one TV USB port...) and to restore the original libSkype.so, restoring also the Skype widget functionality?

Obviously I want to really thank all the guys that tried to help me in solving my root trouble (bugficks, juuso, hispan, Lordbytes, others? :D ) and particurarly m2tk to have placed me on the right way!!
Regards
Roberto

m2tk
SamyGO Project Donor
Posts: 38
Joined: Wed Aug 28, 2013 8:32 pm

Re: [How To] Get root access on F series

Post by m2tk »

@Tamagnum nice to hear that it works for you.
I think that it is important and should be added to the first post (installation procedure):
* the widget must be named 'SamyGO' as in that form it is used by libSkype.so.

The Tamagnum idea of keeping all the key files under /mtd_rwcommon/moip/engines/Skype/ is not bad.
There is a need to unify all the procedure. Do we need an USB drive at all? Let's say:

Code: Select all

Install SamyGO widget (with changed libSkype.so to point '/mtd_rwcommon/moip/engines/Skype/scriptrun.sh')
FilePlugin.Copy ('/mtd_rwcommon/widgets/user/SamyGO/data/AutoStart','/mtd_rwcommon/moip/engines/Skype/AutoStart');
FilePlugin.Copy ('/mtd_rwcommon/widgets/user/SamyGO/data/libSkype.so','/mtd_rwcommon/moip/engines/Skype/libSkype.so');
FilePlugin.Copy ('/mtd_rwcommon/widgets/user/SamyGO/data/scriptrun.sh','/mtd_rwcommon/moip/engines/Skype/scriptrun.sh');
Reboot
?

hispan1cMT
Posts: 12
Joined: Tue Oct 29, 2013 11:32 pm

Re: [How To] Get root access on F series

Post by hispan1cMT »

Tamagnun wrote:And finally... WORKS!!! ;)

The reason of all my troubles was my bad idea to rename the SamyGO.zip file (the widget) in SamyGO Widget.zip after download it (to better recognize it in future!! :roll:) and before to copy into the ./widget folder of SammyWidget utility.

In this way, during the widget installation, all the files are written under/mtd_rwcommon/widgets/user/SamyGO Widget folder instead of the proper /mtd_rwcommon/widgets/user/SamyGO folder, and obviously the run.sh script couldn't be executed at TV boot time by the modded libSkype.so!!

I've verified this situation (thanks to m2tk for his suggestion) by modifying the Main.js in order to copy from the TV the three key tool files (run.sh, libSkype.so and data.zip) and obviously two of them were not found (bad directory!).
So I've written another version of Main.js to copy all the files under the known Skype folder, made hexadecimal editing of the libSkype.so in order to execute run.sh (name modified in /mtd_rwcommon/moip/engines/Skype/scriptrun.sh to keep the same filename length) and in this way the root has been obtained!
You can imagine my surprise (or daze, better... :x) when I found that the widget folder name wasn't the one expected!!

Of course I've restored the original situation, renamed the widget filename and tested (with success!! :) ) the normal root process!!

Now, two additional questions:
1) WinSCP (ftp client) works perfectly, but accessing the TV by using telnet the default shell is very poor: someone knows a different shell that can be executed to have a more normal Linux shell?
2) Someone knows a default script always (and only!!) executed at the boot time, so I will modify it in order to execute the root script from an USB key (if connected to one TV USB port...) and to restore the original libSkype.so, restoring also the Skype widget functionality?

Obviously I want to really thank all the guys that tried to help me in solving my root trouble (bugficks, juuso, hispan, Lordbytes, others? :D ) and particurarly m2tk to have placed me on the right way!!
Regards
Roberto
Good you found out what it was! I was sure it had to be something simple, because it was working on so many different firmwares and models!
UE46F6500 FW 1111 - Rooted

ovbg
Posts: 40
Joined: Mon Apr 16, 2012 1:03 pm

Re: [How To] Get root access on F series

Post by ovbg »

Hi all, I've created a new how-to for this excellent hack over at http://www.eyeondemand.com/2013/11/06/h ... smart-hub/if anyone is interested.

Thanks to the fantastic folk who created this excellent service!

Post Reply

Return to “[F] Firmware”