Ideal downgrade Fire TV OS via hardware (eMMC) - Fire TV Android Development

Hi every one!
I have idea downgrade Fire TV OS via hardware (eMMC)
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
My Fire TV Gen 2 running on Fire TV OS version 5.2.6.1. it can't root by kingroot. i follow instruction hardware root but not work. i desolder eMMC and connect to Linux PC use Transcend USB 3.0 with SD Card Adaptor
Now i can see all partition layout via command :
- to see partition :
Code:
[COLOR="red"] - need on first time and enter your password[/COLOR]
sudo su
fdisk /dev/sda
enter "x" then enter "p"
or open Gparted to see
- to export and backup partition layout:
Code:
fdisk /dev/sda
Enter "O"
Enter name
Enter "q" to quit
Now i can dump all partition use command :
Code:
dd if=/dev/sda1 of=/home/duong/Desktop/dump/1PRO_INFO.bin
dd if=/dev/sda2 of=/home/duong/Desktop/dump/2NVRAM.bin
dd if=/dev/sda3 of=/home/duong/Desktop/dump/3TEE1.bin
dd if=/dev/sda4 of=/home/duong/Desktop/dump/4TEE2.bin
dd if=/dev/sda5 of=/home/duong/Desktop/dump/5lk.bin
dd if=/dev/sda6 of=/home/duong/Desktop/dump/6boot.img
dd if=/dev/sda7 of=/home/duong/Desktop/dump/7recovery.img
dd if=/dev/sda8 of=/home/duong/Desktop/dump/8KB.bin
dd if=/dev/sda9 of=/home/duong/Desktop/dump/9DKB.bin
dd if=/dev/sda10 of=/home/duong/Desktop/dump/10MISC.bin
dd if=/dev/sda11 of=/home/duong/Desktop/dump/11LOGO.bin
dd if=/dev/sda12 of=/home/duong/Desktop/dump/12EXPDB.bin
dd if=/dev/sda13 of=/home/duong/Desktop/dump/13system.img status=progress
dd if=/dev/sda14 of=/home/duong/Desktop/dump/14cache.img status=progress
dd if=/dev/sda15 of=/home/duong/Desktop/dump/15userdata.img status=progress
I try mount system and edit them use comand :
Code:
[COLOR="red"]- make folder "system" to root path :[/COLOR]
cd /
mkdir system
[COLOR="red"]- mount system :[/COLOR]
mount -o loop /home/duong/Desktop/dump/13system.img /system
[COLOR="Red"]- mount system to rw for modify:[/COLOR]
mount -o remount,rw /system
[COLOR="Red"]- mount system to ro:[/COLOR]
mount -o remount,ro /system
i try modify something "put manual su, supolicy" to path /system/xbin symlink "daemonsu" to "su"
put "libsupol.so" to path "/system/lib64" and remount system ro, unmount system
Now i write all partition to eMMC use command:
Code:
dd if=/home/duong/Desktop/dump/1PRO_INFO.bin of=/dev/sda1
dd if=/home/duong/Desktop/dump/2NVRAM.bin of=/dev/sda2
dd if=/home/duong/Desktop/dump/3TEE1.bin of=/dev/sda3
dd if=/home/duong/Desktop/dump/4TEE2.bin of=/dev/sda4
dd if=/home/duong/Desktop/dump/5lk.bin of=/dev/sda5
dd if=/home/duong/Desktop/dump/6boot.img of=/dev/sda6
dd if=/home/duong/Desktop/dump/7recovery.img of=/dev/sda7
dd if=/home/duong/Desktop/dump/8KB.bin of=/dev/sda8
dd if=/home/duong/Desktop/dump/9DKB.bin of=/dev/sda9
dd if=/home/duong/Desktop/dump/10MISC.bin of=/dev/sda10
dd if=/home/duong/Desktop/dump/11LOGO.bin of=/dev/sda11
dd if=/home/duong/Desktop/dump/12EXPDB.bin of=/dev/sda12
dd if=/home/duong/Desktop/dump/13system.img of=/dev/sda13 status=progress
dd if=/home/duong/Desktop/dump/14cache.img of=/dev/sda14 status=progress
dd if=/home/duong/Desktop/dump/15userdata.img of=/dev/sda15 status=progress
i solder eMMC to board but not root
I believe if your device has been root and your share all dump partition, i can downgrade Fire TV OS to old version and root it
What do you think about this?
Anyone can dump all partition via adb and share file? (your device need root and running on old version OS)
I will try it. thank
Sorry my English

Have you tried the old downgrade method? (Instructions here)
I would try to use that method to downgrade to 5.2.1.0, which is rootable. You can get the stock package from here. Just be sure to use the full version and not the incremental version. If the downgrade works, root using this method.

AFTVnews.com said:
Have you tried the old downgrade method? (Instructions here)
I would try to use that method to downgrade to 5.2.1.0, which is rootable. You can get the stock package from here. Just be sure to use the full version and not the incremental version. If the downgrade works, root using this method.
Click to expand...
Click to collapse
thank for reply.
My Fire TV 2 has not been root. it running on version 5.2.6.1. i use kingroot but not work.
i use command
"
adb devices
adb shell
su
"
/system/bin/su: not found
so i can't downgrade my device to old OS version

Jackie393 said:
thank for reply.
My Fire TV 2 has not been root. it running on version 5.2.6.1. i use kingroot but not work.
i use command
"
adb devices
adb shell
su
"
/system/bin/su: not found
so i can't downgrade my device to old OS version
Click to expand...
Click to collapse
What I meant is use the eMMC reader to place the 5.2.1.0 package in the /cache directory and the "command" file containing "--update_package=/cache/update.zip" in the /cache/recovery directory. Then boot into stock recovery and see if the Fire TV installs the older OS.

AFTVnews.com said:
What I meant is use the eMMC reader to place the 5.2.1.0 package in the /cache directory and the "command" file containing "--update_package=/cache/update.zip" in the /cache/recovery directory. Then boot into stock recovery and see if the Fire TV installs the older OS.
Click to expand...
Click to collapse
yes. i know. i will try it. thank you

AFTVnews.com said:
What I meant is use the eMMC reader to place the 5.2.1.0 package in the /cache directory and the "command" file containing "--update_package=/cache/update.zip" in the /cache/recovery directory. Then boot into stock recovery and see if the Fire TV installs the older OS.
Click to expand...
Click to collapse
i have trouble : cache space only 262MB, file update : 442,7MB. what should i do?
sda14 is "cache" you can see "partition" above

when i mount partition sda14 (cache) i can see :
file update > free space. it only have 262MB

Jackie393 said:
when i mount partition sda14 (cache) i can see :
file update > free space. it only have 262MB
Click to expand...
Click to collapse
Try placing the file in /sdcard/update.zip and modify the command file to contain --update_package=/sdcard/update.zip
Instead, you might need to place it in /storage/emulated/0/update.zip and modify the command file to contain --update_package=/storage/emulated/0/update.zip
The command file needs to still go in /cache/recovery/

AFTVnews.com said:
Try placing the file in /sdcard/update.zip and modify the command file to contain --update_package=/sdcard/update.zip
Instead, you might need to place it in /storage/emulated/0/update.zip and modify the command file to contain --update_package=/storage/emulated/0/update.zip
The command file needs to still go in /cache/recovery/
Click to expand...
Click to collapse
i mount partition sda15 "usedata". i can't find path "/storage/0/".
Try place file to "/sdcard/update.zip". Does it mean put to path "/sdcard/ "or put to Micro SD Card?
Sorry my english

Can i find recovery for FIRE TV GEN 2?
i can't find enywhere. www.aftvnews.com/software-fireos3/#firetvrecovery

Jackie393 said:
i mount partition sda15 "usedata". i can't find path "/storage/0/".
Try place file to "/sdcard/update.zip". Does it mean put to path "/sdcard/ "or put to Micro SD Card?
Sorry my english
Click to expand...
Click to collapse
Yes, this means the internal /sdcard directory. You don't need eMMC reader to place files here. Use standard ADB to transfer the file with the command: adb push update.zip /sdcard/
You'll need the eMMC reader to place the command file.

AFTVnews.com said:
Yes, this means the internal /sdcard directory. You don't need eMMC reader to place files here. Use standard ADB to transfer the file with the command: adb push update.zip /sdcard/
You'll need the eMMC reader to place the command file.
Click to expand...
Click to collapse
i place file command to /cache/recovery (eMMC)
and put update.zip to path /sdcard/
i use command via adb
Code:
adb devices
adb reboot recovery
after Fire TV reboot to recovery and nothing

i think if i have 15 partition, file partition layout . i flash them, may be it work because bootloader block or recovery block downgrade to old version

I view path "META-INF/com/google/android/update-script" of file update.zip. i can see partition will flash
Code:
getprop("ro.product.device") == "sloane" || abort("This package is for \"sloane\" devices; this is a \"" + getprop("ro.product.device") + "\".");
show_progress(0.750000, 0);
ui_print("Patching system image unconditionally...");
block_image_update("/dev/block/platform/mtk-msdc.0/by-name/system", package_extract_file("system.transfer.list"), "system.new.dat", "system.patch.dat");
show_progress(0.050000, 5);
package_extract_file("boot.img", "/dev/block/platform/mtk-msdc.0/by-name/boot");
show_progress(0.200000, 10);
package_extract_file("images/preloader.img", "/dev/block/mmcblk0boot0");
package_extract_file("images/lk.bin", "/dev/block/platform/mtk-msdc.0/by-name/lk");
package_extract_file("images/tz.img", "/dev/block/platform/mtk-msdc.0/by-name/TEE1");
#
# Edify script to copy the correct logo image
#
ui_print("Copying logo.bin to LOGO partition ...");
package_extract_file("images/logo.bin", "/dev/block/platform/mtk-msdc.0/by-name/LOGO");
package_extract_file("META-INF/com/amazon/android/target.blocklist", "/cache/recovery/last_blocklist");
set_metadata("/cache/recovery/last_blocklist", "uid", 0, "gid", 0, "mode", 0444, "capabilities", 0x0);
but i don't know "preloader.img" flash to "mmcblk0boot0". what does this mean?

Resolve. I can downgrade my fire tv to OS version 5.2.1.0 and root it in here :
https://forum.xda-developers.com/fire-tv/development/share-hardware-downgrade-fire-tv-gen-2-t3817059

tried a few times to get that eMMC reader, sold out or discon would be nice to have a work around for those with a latest firmware boot locked firetv gen 2 laying around

Drjizzocyst said:
tried a few times to get that eMMC reader, sold out or discon would be nice to have a work around for those with a latest firmware boot locked firetv gen 2 laying around
Click to expand...
Click to collapse
- You need de-soldering eMMC, then connect eMMC to PC(run linux) use USB Card Read (eMMC type 153, VCC, VCCq, GND, CLK, CMD, DAT0).
- Use PC flash firmware version 5.2.1.0 to eMMC
- Soldring eMMC to board and plug in power to Fire Gen 2
- Install KingRoot and try root (because 5.2.1.0 OS version can be root with KingRoot)

Jackie393 said:
- You need de-soldering eMMC, then connect eMMC to PC(run linux) use USB Card Read (eMMC type 153, VCC, VCCq, GND, CLK, CMD, DAT0).
- Use PC flash firmware version 5.2.1.0 to eMMC
- Soldring eMMC to board and plug in power to Fire Gen 2
- Install KingRoot and try root (because 5.2.1.0 OS version can be root with KingRoot)
Click to expand...
Click to collapse
Probably super obvious, but is desoldering the eMMC on the gen2 the only way to read it with a PC? The gen1 you could read it without removing the chip. Assuming this is the case, anyone know of any guides or videos on how one would safely go about desoldering it (and resoldering it back)? I'm trying to unbrick one that was improperly attempted to be unrooted via an OTA firmware.

falk0069 said:
Probably super obvious, but is desoldering the eMMC on the gen2 the only way to read it with a PC? The gen1 you could read it without removing the chip. Assuming this is the case, anyone know of any guides or videos on how one would safely go about desoldering it (and resoldering it back)? I'm trying to unbrick one that was improperly attempted to be unrooted via an OTA firmware.
Click to expand...
Click to collapse
I try find all point on Fire TV Gen 2. but i can't find CLK point. that mean only de-soldring eMMC to try root.
This my video to soldring eMMC to board, my skill not best
Sorry my english

Jackie393 said:
I try find all point on Fire TV Gen 2. but i can't find CLK point. that mean only de-soldring eMMC to try root.
This my video to soldring eMMC to board, my skill not best
Sorry my english
Click to expand...
Click to collapse
I suppose this was a project you wanted to do because you wanted to achieve root via the EMMC write?
If not why not use the short method instead, and save desoldering emmc, would you prefer to do it this way?
Either way I am intrigued.... Good work

Related

How to boot UrukDroid from internal flash disk on Archos 70IT (Update: Uruk 0.6)

Install Uruk 0.3 on second internal flash disk of Archos
UPDATE
At the last end of this guide you will find the steps necessary to upgrade to Uruk 0.6 from Uruk 0.3 or 0.4.
Near the end of this guide you will find the steps necessary to upgrade to Uruk 0.4.2 from Uruk 0.3 or to install it for the first time.
Please note.
If you are upgrading from Uruck 0.3 to 0.4.2 and installed google market hack before upgrade, after upgrade the market will be broken. To solve the problem reed the last step of this guide.
I've manage to boot from the second partition of the second internal flash of 8GB (/dev/block/mmcblk1p2) of my Archos 70IT Urukdroid vers 03 prepared by $aur0n on this post.
Thanks $aur0n for your awesome work.
It may work for other archos generation 8 too, except Archos 70 IT 250GB (i think that model doesn't have a second internal flash disk to boot from for SDE, but the owners can do it creating the 2 needed partitions on the HDD).
I've done it because:
- my micro sdcard is slow compared to internal flash
- i can mount correctly micro sdcard and second internal flash disc in Windows and linux by connecting Archos via USB and
- my sdcard is free. I can boot without sdcard in, take off from archos every time i want and upload files from a card reader or connecting the archos 70 via usb.
If you want to try it, be sure on what you are doing (linux knowledge is needed).
Try it on your own risk.
I don't have any responsibility if you brick your device (actually is hard to brick it following the guide, but pay attention please).
So if you are sure, read carefully this post and ask before if something is not clear enough for you.
I will try to answer as soon as possible (I'm actually a bit busy :-()
First of all install SDE, if you haven't already done (you can get information about it and download the SDE firmware from archos web page archos web page
Attention: Doing that You void your warranty...
Here the Archos notes:
Important notices to be acknowledged before downloading and installing the SDE firmware:
Once the SDE firmware is installed on a device, this device will be watermarked and ARCHOS will be able to detect that this firmware has been installed once.
Installing the SDE firmware is considered by ARCHOS as a voiding of the warranty and ARCHOS declines all liability and responsibility for any issues resulting from the installation of this SDE firmware.
ARCHOS strongly advises that only experts in embedded software development should install this firmware.
This firmware is provided "as is" and is not supported by ARCHOS.
Before following the steps required to install Uruk 0.3 some clarifications:
What you need to have:
- Archos 70 IT with terminal and SDE installed.
- Linux machine (nativly, visualized or LiveCD)
- Optionally Windows PC
Storage map of Archos 70 IT:
a) The first internal flash disk is of approximately 500MB (device /dev/block/mmcblk0) which is used by stock archos firmware and not changed by this guide.
Pay great attention playing with it, you may brick forever your Archos.
This flash disk have 4 partition and the block devices, mountpoints, filesystems type and size are as the following:
The first devices is "/dev/block/mmcblk0p1", mountpoint "/mnt/rawfs", type of filesystem "rawfs", size 32MB
The second devices is "/dev/block/mmcblk0p2", mountpoint "/mnt/system", type of filesystem "ext3", size 119MB
The third devices is "/dev/block/mmcblk0p3", mountpoint "/cache", type of filesystem "ext3", size 30MB
The fourth devices is "/dev/block/mmcblk0p4", mountpoint "/data" (mountpoint only by archos firmware), type of filesystem "ext3", size 300MB
b) The second internal flash disk is of approximately 7,5GB (device /dev/block/mmcblk1) which is used by this guide to boot SDE from and to accommodate the /data mountpoint (not any more on the "/dev/block/mmcblk0p4").
By stock archos firmware it has 1 partition (device /dev/block/mmcblk1p1), mountpoint "/mnt/storage", type of filesystem "fat32", size 7,5GB
After Uruk 0.3 installation it will have 3 partitions and the block devices, mountpoints, filesystems type and size will be as the following:
The first devices will be "/dev/block/mmcblk1p1", mountpoint "/mnt/storage", type of filesystem "fat32", size 5,5GB
The second devices will be "/dev/block/mmcblk1p2", mountpoint root "/", type of filesystem "ext4", size 500MB
The third devices will be "/dev/block/mmcblk1p3", mountpoint "/data", type of filesystem "ext4", size 1GB
C) The sdcard on device /dev/block/mmcblk2. On my case it have 1 partition (device /dev/block/mmcblk2p1), mountpoint "/mnt/storage/sdcard", type of filesystem "fat32".
Let's go:
The first step to do is to backup everything from your second internal flash disk (as above, it has 1 partition formated in fat32, 7,5GB capacity), just for backup purpose.
The simplest way is to connect your archos via usb to your linux box and copy directly that directory to a new directory on your linux with the default graphical file explorer of your distribution.
In my case it mounts automatically to /media/A70S (device is /dev/sdb1):
/dev/sdb1 on /media/A70S type vfat (rw,nosuid,nodev,uhelper=hal,uid=1000,utf8,shortname=mixed,flush)
Click to expand...
Click to collapse
If doesn't mount automatically in your case, find it using "dmesg" command on a terminal after connection complete and mount it manually.
Or you can copy it on your Windows PC (connect Archos via usb, drive mount automatically to A70S).
After backup, don't disconnect your Archos from linux. You have to resize the mounted Archos disk form 7,5GB to 5,5GB.
The easiest way is to do it graphically with your distribution partition manager utility.
First umount it by right click->umount, then resize it letting on the right side of the disk 1,5GB free space.
Create other 2 partition on that free space, first of 500MB and the other with the remaining space approx. 960MB.
Then apply the changes on the partition manager and you will have now 3 partition on the second internal flash disk of your Archos.
The first one with 5,5GB and formated on fat32, the second one 500MB not formated and the third partition of 960MB not formated.
On my case the devices are respectively /dev/sdb1, /dev/sdb2 and /dev/sdb3.
The next step is to format the second and third partition with ext4 filesystems without huge option (as from $aur0n post) on a linux terminal as root:
mkfs.ext4 -O ^huge_file /dev/sdb2
mkfs.ext4 -O ^huge_file /dev/sdb3
Click to expand...
Click to collapse
When finished, just remove safely archos from your linux box.
From the archos open a terminal and just type:
ls /dev/block/mmcblk1*
Click to expand...
Click to collapse
The result will be:
/dev/block/mmcblk1 /dev/block/mmcblk1p1 /dev/block/mmcblk1p2 /dev/block/mmcblk1p3
Click to expand...
Click to collapse
The second partition (/dev/block/mmcblk1p2) will be your new rootfs
and the third one (/dev/block/mmcblk1p3) your new application area (/data).
On this step you are going to copy all the staff on /data (device /dev/block/mmcblk0p4 mounted on /data)
to the third partition of the second internal flash (/dev/block/mmcblk1p3).
Mount the third partition first:
mkdir /tmp/data
mount /dev/block/mmcblk1p3 /tmp/data
Click to expand...
Click to collapse
and copy:
cp -rp /data/* /tmp/data
sync
umount /tmp/data
Click to expand...
Click to collapse
If you get any problems on coping (permissions) then the only way to do it correctly is to use "tar" to make a archive of data to a file on the first partition of the second internal flash disk (/dev/block/mmcblk1p1 mounted on /mnt/storage) like:
tar -cfvz /mnt/storage/data_app.tar.gz /data/
Click to expand...
Click to collapse
and then connect archos via usb to your linux computer (your three partition of the internal flash now will mount in automatic, let say /media/A70S, /media/disk1 and /media/disk2 from the devices /dev/sdb1, /dev/sdb2 and /dev/sdb3)
Now you have to extract the previous tar file (data_app.tar.gz) to the /media/disk2 (the third partition of archos internal flash disk mounted supposedly at /media/disk2):
cd /media/disk2
tar -zvxf /media/disk1/data_app.tar.gz
sync
umount /media/disk2
Click to expand...
Click to collapse
The next step, download the Uruk 0.3 version of rootfs (rootfs.tar.gz) from this link, and kernel image (zImage) from from this link on the /tmp directory of your linux box. I want to remember that this files are prepared and postet from $aur0n on this post.
If you are still connected via usb with your archos (if not, connect it),extract the rootfs (rootfs.tar.gz) directly on the mount point of the second flash partition (as above in my case is /dev/sdb2 mounted on /media/disk1) on linux:
cd /media/disk1
tar -zvxf /tmp/rootfs.tar.gz
Click to expand...
Click to collapse
Change the following lines of the init.rc file (mount point of root filesystem):
mount ext3 /dev/block/mmcblk0p4 /data noatime nosuid
# Uncomment this
# mount ext4 /dev/block/mmcblk2p2 /data noatime
with those:
#mount ext3 /dev/block/mmcblk0p4 /data noatime nosuid
# Uncomment this
mount ext4 /dev/block/mmcblk1p3 /data noatime
Change the line on the file/media/disk1/syste/etc/vold.fsatb:
#dev_mount_lun volume_sdcard /mnt/storage/sdcard 3 /devices/platform/usb_mass_storage/lun1 /class/block/mmcblk2p3
with that:
dev_mount_lun volume_sdcard /mnt/storage/sdcard auto /devices/platform/usb_mass_storage/lun1 /class/block/mmcblk2
sync
umount /media/disk1
Click to expand...
Click to collapse
and remove safely archos from the linux box and shutdown Archos.
Download the initramfs.cpio.gz_Uruk_0.3.zip from here (or from the attachment on the end of this post) and unzip it on the /tmp folder of you linux box.
Flash the initramfs.cpio.gz and zImage (remember , you downloaded zImage on the step 4 and placed it already on /tmp) on SDE environment doing:
- While power on your archos, press the "Volume -" button
- Go to "Recovery System",then "Developer Edition Menu"
- Select "Flash kernel and Initramfs".
- Attach your Archos via USB to linux computer. Archos will automatically mount, in my case is A70S_REC mounted on /media/A70S_REC/. Copy the files (initramfs.cpio.gz and zImage) from /tmp folder.
cp initramfs.cpio.gz zImage /media/A70S_REC/
Click to expand...
Click to collapse
Disconnect safely archos, then push "Ok", power and the archos will reboot.
- Press the "Volume -" to boot to the ""Boot Menu" and choose "Developer Edition" or just while booting press both "Volume -" and "Volume +" to boot directly to the "Developer Edition".
You are done.
Enjoy booting from internal flash (SDE edition).
Update: Uruk 0.4.2
There are 2 possibilities:
- You want to upgrade from Uruk 0.3
- Install Uruk 0.4.2 for the first time (You are on stock archos firmware).
Let's begin with the upgrade from Uruk 0.3 to Uruk 0.4.2
First of all download the Uruk 0.4.2 rootfs prepared from $aur0n UrukDroid-0.4.2-rootfs.rar on your linux box.
Download also UrukDroid-0.4.2-kernel.rar from here (or from the attachment on the end of this guide).
It's is $aur0n's one with the modifications to boot and mount /data from second internal flash.
Copy the above 2 files on the folder /tmp/archos of your linux machine. In my case is the 2 downloaded files are
under /home/shklifo/Download folder:
mkdir /tmp/archos
cd /tmp/archos
cp /home/shklifo/Download/UrukDroid-0.4.2-kernel.rar /home/shklifo/Download/UrukDroid-0.4.2-rootfs.rar .
Click to expand...
Click to collapse
Unrar both of them (if you don't have rar utility, just install it), giving the command:
rar x UrukDroid-0.4.2-kernel.rar
rar x UrukDroid-0.4.2-rootfs.rar
Click to expand...
Click to collapse
When the unrar process goes ok you will see the following on terminal (example of UrukDroid-0.4.2-kernel.rar):
[email protected]:/tmp/archos# rar x UrukDroid-0.4.2-kernel.rar
RAR 3.90 beta 2 Copyright (c) 1993-2009 Alexander Roshal 3 Jun 2009
Shareware version Type RAR -? for help
Extracting from UrukDroid-0.4.2-kernel.rar
Extracting zImage OK
Extracting initramfs.cpio.gz OK
All OK
Click to expand...
Click to collapse
After that you will have the following files on /tmp/archos:
[email protected]:/tmp/archos# ls -lrt
totale 245668
-rw-r--r-- 1 root root 0 2011-01-17 12:10 UrukDroid-copy_data.cmd
-rw-r--r-- 1 root root 120854073 2011-01-21 17:34 UrukDroid-rootfs-upgrade.tgz
-rwxr-xr-x 1 root root 2255648 2011-01-21 17:57 zImage
-rw-r--r-- 1 root root 1733826 2011-01-22 10:26 initramfs.cpio.gz
-rw-r--r-- 1 root root 119128315 2011-01-22 10:26 UrukDroid-0.4.2-rootfs.rar
-rw-r--r-- 1 root root 3985013 2011-01-22 10:36 UrukDroid-0.4.2-kernel.rar
Click to expand...
Click to collapse
You are upgrading and you have all the applications on second internal flash disk already, so just remove the UrukDroid-copy_data.cmd, you don't need it:
rm UrukDroid-copy_data.cmd
Click to expand...
Click to collapse
Now you have to copy UrukDroid-rootfs-upgrade.tgz to the rootfs of the archos (second partition of the second internal flash disk mounted on / of type ext4 with 500MB space).
To do that just connect archos via usb to your linux box and all the tree partition of archos second internal flash will be mounted automatically.
To verify where those partition are mounted just type:
mount
Click to expand...
Click to collapse
on a linux terminal and on my case is as following:
[email protected]:/tmp/archos# mount
...
/dev/sdb1 on /media/A70S type vfat (rw,nosuid,nodev,uhelper=hal,uid=1000,utf8,shortname=mixed,flush)
/dev/sdb2 on /media/disk type ext4 (rw,nosuid,nodev,uhelper=hal)
/dev/sdb3 on /media/disk-1 type ext4 (rw,nosuid,nodev,uhelper=hal)
/dev/sdc1 on /media/disk-2 type vfat (rw,nosuid,nodev,uhelper=hal,uid=1000,utf8,shortname=mixed,flush)
Click to expand...
Click to collapse
and "df -m" like:
[email protected]:/tmp/archos# df -m
/dev/sdb1 5622 2897 2725 52% /media/A70S
/dev/sdb2 485 244 216 53% /media/disk
/dev/sdb3 973 268 656 29% /media/disk-1
/dev/sdc1 15266 1157 14110 8% /media/disk-2
Click to expand...
Click to collapse
So in my case the second partition of the second internal archos flash disk of 485MB is:
/dev/sdb2 485 244 216 53% /media/disk
Click to expand...
Click to collapse
mounted on /media/disk
Then just copy the UrukDroid-rootfs-upgrade.tgz file on the second partition of the second internal archos flash disk, like in my case:
cp /tmp/archos/UrukDroid-rootfs-upgrade.tgz /media/disk/
Click to expand...
Click to collapse
Safely disconect archos from the linux box and shutdown completely your archos.
Now you have to flash initramfs (initramfs.cpio.gz) and kernel (zImage) to your archos from "Recovery Menu" (you know already how to do it),
or if you forget it just do the following:
- While power on your archos, press the "Volume -" button
- Go to "Recovery System",then "Developer Edition Menu"
- Select "Flash kernel and Initramfs".
- Attach your Archos via USB to linux computer. Archos will automatically mount, in my case is A70S_REC mounted on /media/A70S_REC/. Copy the files (initramfs.cpio.gz and zImage) from /tmp/archos folder.
cp initramfs.cpio.gz zImage /media/A70S_REC/
Click to expand...
Click to collapse
Disconnect safely archos, then push "Ok", power and the archos will reboot.
- Press the "Volume -" to boot to the ""Boot Menu" and choose "Developer Edition" or just while booting press both "Volume -" and "Volume +" to boot directly to the "Developer Edition".
You will see the UruckDroid 0.4 screen with "Initramfs: Loading ...." than Rootfs: Loading .... and finally you will see the Uruck Desktop.
Enjoy
Install Uruk 0.4.2 for the first time
For those who whant to install Uruk 0.4.2 for the first time (now it's simplier that Uruk 0.3) will do:
a) First backup, create the partitions and filesystems on the second internal flash disk of archos (step 1
and step 2 of the Uruk 0.3).
You don't need anymore step 3 (copy of /data folder), because Uruk 0.4.2 do it automatically.
b) Then following step by step the guide Let begin with the upgrade from Uruk 0.3 to Uruk 0.4.2, except removing UrukDroid-copy_data.cmd file, because you need it to copy automatically /data files.
When you are on the step "copy the UrukDroid-rootfs-upgrade.tgz file on the second partition of the second internal archos flash disk", you need to copy additionaly UrukDroid-copy_data.cmd like:
cp /tmp/archos/UrukDroid-rootfs-upgrade.tgz /media/disk/
cp /tmp/archos/UrukDroid-copy_data.cmd /media/disk/
Click to expand...
Click to collapse
Than follow till the end the guide Let begin with the upgrade from Uruk 0.3 to Uruk 0.4.2.
Enjoy
OPTIONAL: Install google market.
If you have already istalled google market (using gAppsInstaller for example), you have to uninstall it (market/vending) first.
Then download UrukDroid-0.4.2-GoogleMarket.zip and copy it on the root (/) filesystem of archos (see above on the upgrade section an do the same steps of copying UrukDroid-rootfs-upgrade.tgz to archos rootfs).
Reboot archos.
NOTE
If you are upgrading from 0.3 version to 0.4.2 and installed before the google market from kenyu73 like i did, then the market will be broken and doesn't work any more.
To get it back, you have to remove all the google applications from SDE (Uruk 0.4.2) including the kenyu73's installer (gAppsInstaller).
Then install the market as on the previuos step OPTIONAL: Install google market downloading the file UrukDroid-0.4.2-GoogleMarket.zip and following the instructions.
After rebooting archos on SDE, you need to fix it, because you can't access the whole market (missing some "protected applications" like copilot etc).
To fix just do the following steps as kenyu73 explain on his post :
Go to Settings-->Manage Applications-->All-->Market (Clear Cache then 'Force Stop', DO NOT clear data).
Setting-->Manage Applications-->All-->Google Services Framework (Clear data then 'Force Stop').
Reboot.
Click to expand...
Click to collapse
I've done it twice the fix step, and after that no problem anymore. All the google applications (downloaded from the fresh working market) are working correctly as before.
Update: How to upgrade to Uruk 0.6 from Uruk 0.3 or 0.4.2
There are 2 possibilities:
a) The first one is the simplest one.
Just download the $auron Uruk 0.6 UrukDroid_0.6-EasyInstall.rar posted on this post, extract it on your computer and delete the file initramfs.cpio.gz, because we don't need it.
Then download the file initramfs.cpio_Uruk_0.6.gz.rar in attachment on the end of this post and extract it on the same directory of your computer (this is the initramfs that you will flash on SDE prepared from $auron and can be found on the /root/ directory of $auron new rootfs UrukDroid-install.tgz).
Then boot Archos on stock Android and connect it to your linux box via USB. The root filesystem of Archos (/dev/block/mmcblk1p2 on Archos) will be mounted on some directory on linux automatically, just find it or manually mount it (it's the filesystem with 500MB space, to be sure just type "df -h" on a terminal).
With root on a linux terminal go to that directory (in my case was /media/Disk-1) and remove all the files there:
Code:
rm -rf *
Then copy the UrukDroid-install.tgz extracted before from UrukDroid_0.6-EasyInstall.rar on the above directory.
So, you will have only the file UrukDroid-install.tgz on your rootfs directory of Uruk.
Then disconect safely Archos from your linux box and flash initramfs.cpio.gz and zImage files on SDE (you know how to do that ...) and boot to SDE.
That is
Uruk 0.6 will automatically copy everything needed as you will see on the boot time.
You have to do a last thing to be able to mount automatically the sdcard on Uruk 6. Uncomment the sdcard line on the file /system/etc/vold.fsatb like:
Code:
dev_mount_lun volume_sdcard /mnt/storage/sdcard auto /devices/platform/usb_mass_storage/lun1 /class/block/mmcblk2
This is needed on the second method too (the one below).
Who want to install Uruk (version 0.6 in this case) for the first time on internal, must create and format the 2 partitions of the second internal flash disk (like on the beginning of this post described) and follow step by step the above method and at the end copy everything from the data partiotion (last partition of the first internal flash /dev/block/mmcblk0p4) to the third partition of the second flash disk (/dev/block/mmcblk1p3).
b) The second method is more complicated, but works also good.
You just install Uruk 0.6 to a sdcard like on this $auron post, than shutdown Archos, put the microsd card on a card reader connected to a linux PC and with root make a tar archive of the entire rootfs (root filesystem) of Uruk 0.6 (the second partition of the sdcard with 500MB of space on ext4 filesystem) to a tar file that you can put to the first partition of the sdcard (the fat partition of the sdcard).
Eject the sdcard and put on Archos. Turn on Archos and from a terminal on Uruk as root mount the second partition of the flash disk (/dev/block/mmcblk1p2) on a directory and just delete ("rm -rf") everything on there and then extract the tar archive there.
So, you just put everything from rootfs of the sdcard to internal flash, with correct permissions, timestamp, ownership etc.
Now just shudown Archos, take off the sdcard and boot.
This time it will Uruk 0.6 will boot from internal flash
Enjoy it
I wish I could understand more clearly how to do this with a fresh install...
This is what I am looking to do, using it on internal... but this might be a little too complicated for me.
What about 101?
Does this method applicable to Archos 101 model too?
If someone already have been tried it on 101, please reply with details here, if any troubles you have after installation or any changes need to be done.
Also I am curious about does anyone have tried to connect USB thumb drive to the tablet with modified rom and root access? Do we still have any issues with USB drive recognition?
Is this applicable for UrukDroid 4.1 and The Archos IT 35?
well great work but i dont know if i get it to work and Im a little bit confused -
is it writable in windows per media player (mtp) or per explorer or both (with ext-x driver)?
yura-a said:
Does this method applicable to Archos 101 model too?
If someone already have been tried it on 101, please reply with details here, if any troubles you have after installation or any changes need to be done.
Click to expand...
Click to collapse
Why not. The 101 model have the second internal flash (8 or 16GB) as the 70 S model have. To be sure just type mount and df -m on a terminal in Archos device and you will see the flash drive (/dev/block/mmcblk1p1) formated in fat32 and mounted on /mnt/storage.
I only changed the mounting point on the file init, init.rc and /system/etc/vold.fstab from $aur0n files to be able to boot SDE from the second internal flash disk and doesn't change anything else, configuration file of specific model included.
yura-a said:
Also I am curious about does anyone have tried to connect USB thumb drive to the tablet with modified rom and root access? Do we still have any issues with USB drive recognition?
Click to expand...
Click to collapse
I'm still excpecting my host cable from Hong-Kong and can't try that, but i think will not be a problem.
good work
thanks
svennimann said:
Is this applicable for UrukDroid 4.1 and The Archos IT 35?
Click to expand...
Click to collapse
I do not own your device (it is a Archos 32 IT?), but if is that model, it got a 8GB internal flash like archos 70 IT. The firmware is the same for all archos generation 8 devices (with same configuration files change), but i haven't change them (and $aur0n too i think, but he can answer himself).
So just try it, if you have no problem of understanding all the steps on the first post. You can't break anything. And if it will not work (worse case) or have other problems you just have SDE installed (you can remove it if you want) and 2 more partition on the internal flash disk with some files on them.
You can just delete the partitions and risize (increment) the first partition as from stock. In all situation we are able to boot to stock firmware.
I only change the mountpoints as i wrote in the previous posts on the files init, init.rc and vold.fstab from uruk 0.3.
So mine and $auron solution changed only on the boot partition (mine is booting form the second partition of the internal flash disk, him from the second partition of sdcard) and the application data partition (mine on the third partition of the internal the flash, him on the third partition of the sdcard). All the other files are from him (thanks $aur0n).
I've not installed yet the 0.4.1, i got little free time actually and of the market problem (if i install the 0.4.1, i must uninstall the market on stock firmware and will be not able to access it from original/stock firmware).
But if i decide to install it, i will report here.
svennimann said:
well great work but i dont know if i get it to work and Im a little bit confused -
is it writable in windows per media player (mtp) or per explorer or both (with ext-x driver)?
Click to expand...
Click to collapse
Thanks, as i say above you don't loose anything trying to install it, only time
So, if i understand well your question, on my archos i'm able to access the first partition of the flash disk (it's a fat32 as from stock, only risezed in 5,5 GB) on my windows XP PC by usb connection to archos.
The second (boot partition 500MB) and the third (data application area of 1GB) partitions of internal flash disk are ext4 formated (stock ext3) and can't be mount on a windows PC, and for me have any sense mounting them on a PC.
The sdcard is accesible via usb connection (archos to PC) or via card reader. If you format it fat32 is in r/w mode (as i've done), ext3 or ext4 in readonly mode i think (not yet tried), because actually isn't out a driver to be able to write a linux partition on Windows.
From Ubuntu (connecting archos via usb) i can mount all in r/w mode (all the 3 partitions of the internal flash disk and sdcard too).
Later i will post some picture/command output (mount,ls) from Ubuntu.
In attachment a picture of the flash disk (A70S E: ) and sdcard (Disco rimovibile F: ) on my Windows XP macchine.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Just a suggestion.. Please be consistent with your instructions, 1 step your instructions are for linux and the next step would be for archos.
It's really hard to follow what needs to be done or how it should be done properly, considering you're messing around with the internal storage there's bigger chance of bricking your device.
I appreciate all your hard work and contributions here, it's just that it's not that user friendly.
GrandStar said:
Just a suggestion.. Please be consistent with your instructions, 1 step your instructions are for linux and the next step would be for archos.
Click to expand...
Click to collapse
Just to be clear, from archos terminal you have to do only 1 thing, copy or tar the "/data" mountpoint/directory, because this is the 4-th partition of the first internal flash disk (/dev/block/mmcblk0p4) and it can't be mounted on linux via usb connection.
All the other steps are from linux (the first step, you can do it from Windows too).
It's really hard to follow what needs to be done or how it should be done properly, considering you're messing around with the internal storage there's bigger chance of bricking your device.
Click to expand...
Click to collapse
There are 2 internal flash disk in Archos, /dev/block/mmcblk0 of 500MB (used by archos architecture and nobody is touching this flash disk, it's dangerous and you may brick your device) and /dev/block/mmcblk1 of 8GB which is used by the this guide to boot SDE from. So, if you are able to understand what you are doing and don't touch the first flash disk, than nothing can happens.
I appreciate all your hard work and contributions here, it's just that it's not that user friendly.
Click to expand...
Click to collapse
With that i'm in line with your thoughs, thanks. I will try to do it more simple and understandable.
I've followed all the instructions exactly. I'm good with linux, so it wasn't very hard, but when I booted into the Developer Edition at the end, I was at the Initial Setup Screen, like it didn't mount the /data partition. Also, I can't get ES to show the file system, so it doesn't seem to be rooted. Any ideas what's going on?
EDIT: You have a typo in the init.rc the change should be to mmcblk1p3, not mmcblk1p2.
EDIT: Another typo: "dev_mount_lun volume_sdcard /mnt/storage/sdcard auto /devices/platform/usb_mass_storage/lun1 /class/block/mmcblk1" should be mmcblk2, not 1.
Now my data is there, and I can mount SD cards, but I still can't connect to a computer with a USB cable.
EDIT: All Fixed. I flashed a new kernel from http://forum.xda-developers.com/showthread.php?t=897877 and now have USB Storage working. I used the zImage from ardatdat's kernel with your initramfs.cpio.gz and the changes I listed above. Everything seems to work perfectly, and it's way faster than it was before. I was using Ardatdat's full kernel and booting from internal memory before. When I rotated the screen it used to take almost 10 seconds to update all the icons on the home screen. Now it takes less than 2-3 seconds to update. Great work on the EXT4 conversion! If you'll permit me, I'm going to write up a guide that incorporates my experience, and of course give you full credit.
Update: Just updated to UrukDroid 0.4.1. Needed a little more customization, but usb storage worked with the default 0.4.1 kernel instead of needing ardatdat's kernel. Currently testing to see which is better. Uruk says it's kernel has usb charging enabled, a very exciting possibility, but I kind of doubt it works on the A101IT.
msticninja said:
EDIT: You have a typo in the init.rc the change should be to mmcblk1p3, not mmcblk1p2.
EDIT: Another typo: "dev_mount_lun volume_sdcard /mnt/storage/sdcard auto /devices/platform/usb_mass_storage/lun1 /class/block/mmcblk1" should be mmcblk2, not 1.
Now my data is there, and I can mount SD cards, but I still can't connect to a computer with a USB cable.
EDIT: All Fixed. I flashed a new kernel from http://forum.xda-developers.com/showthread.php?t=897877 and now have USB Storage working. I used the zImage from ardatdat's kernel with your initramfs.cpio.gz and the changes I listed above. Everything seems to work perfectly, and it's way faster than it was before. I was using Ardatdat's full kernel and booting from internal memory before. When I rotated the screen it used to take almost 10 seconds to update all the icons on the home screen. Now it takes less than 2-3 seconds to update. Great work on the EXT4 conversion! If you'll permit me, I'm going to write up a guide that incorporates my experience, and of course give you full credit.
Update: Just updated to UrukDroid 0.4.1. Needed a little more customization, but usb storage worked with the default 0.4.1 kernel instead of needing ardatdat's kernel. Currently testing to see which is better. Uruk says it's kernel has usb charging enabled, a very exciting possibility, but I kind of doubt it works on the A101IT.
Click to expand...
Click to collapse
Thanks for the corrections (you pay the needed attention), but i just modified the first post radically (easier).
Sure, you can do your own thread with your experience on the installation.
I will install Uruk 0.4.1 too, and update the first post.
WORKING
I had to add a new line into the init.rc file, but afterwards I was able to get Uruk 0.4.1 to boot internal
***mount ext4 /dev/block/mmcblk1p2 / noatime*** - I don't htink you have this in your steps...
After I did this, it works. I also am able to see both the internal and external storage in windows.
I didn't know if you need that line or it was left out of your steps process. All I did to get this to work on an existing 0.4.1 was:
1. Move the data off the internal inside windows to a saved directory on my PC.
2. Partition the 3 partitions like you describe on the internal and formated as you describe...
3. Mount the partitions inside my VMplayer Ubuntu sdb2, sdb3, sdc2, and sdc3 (sdb was the internal formated like you describe and sdc was my 16 0.4.1 SD card fromatted using uruk already)
Su terminal CODE:
$su
***password
#
#cd
#cd /tmp
#mkdir sdb2
#mkdir sdb3
#mkdir sdc2
#mkdir sdc3
#mount /dev/sdb2 /tmp/sdb2
#mount /dev/sdb2 /tmp/sdb3
#mount /dev/sdb2 /tmp/sdc2
#mount /dev/sdb2 /tmp/sdc3
4. Copy through terminal everything from sdc2 --> sdb2 using below code and Copy through terminal everything from sdc3 --> sdb3 using below code
**CODE I used:
#cp -rp /tmp/sdc2/* /tmp/sdb2
#sync
#cp -rp /tmp/sdc3/* /tmp/sdb3
#sync
6. Add in the lines inti init.rc to mount the sdb2, and the sdb3 instead of sdc2 and sdc3
mount ext4 /dev/block/mmcblk1p2 / noatime
mount ext4 /dev/block/mmcblk1p3 /data noatime
7. Add the line into tmp/sdb2/system/etc/vold.fsatb (Which is where I mounted that..)
dev_mount_lun volume_sdcard /mnt/storage/sdcard auto /devices/platform/usb_mass_storage/lun1 /class/block/mmcblk2
**I believe in 0.4.1 it is already like this, so i really made no changes to vold.fsatb....***
Unmounted all 4 I had mounted into /tmp using terminal ubuntu
CODE (I was already inside cd /tmp/sdb2 and i had edited the init.rc and saved it):
#sync
#cd..
#umount /tmp/sdb2
#umount /tmp/sdb3
#umount /tmp/sdc2
#umount /tmp/sdc3
EDIT: after this step, you will need to mount the Archos back into Windows, and copy the files you saved into a folder on your windows PC back into the Internal Fat32 storage. This was why you backed it up in the first place.... You might have to reboot and boot into your stock OS to get the internal to mount back into Windows, i did...
Reboot and go into the developer menu
Reflashed your initramfs and Uruk 0.4.1 Zimage and booted to developers edition...
***Remember this will only work if you have a preexisting 0.4.1 on an SD card where it is formatted with #1 fat32 for dtorage #2 500Mb and #3 1G and it already has been working using $auron's method.
BIG thanks to $aron and shklifo and msticninja... I am very happy using my internal memory to boot with instead of the SD card. i will prob keep the SD card I have and use it whenever I need to boot to SD and just get a different one for Videos and Music.
JW
sublimejosh2000 said:
I had to add a new line into the init.rc file, but afterwards I was able to get Uruk 0.4.1 to boot internal
***mount ext4 /dev/block/mmcblk1p2 / noatime*** - I don't htink you have this in your steps...
After I did this, it works. I also am able to see both the internal and external storage in windows.
I didn't know if you need that line or it was left out of your steps process.
JW
Click to expand...
Click to collapse
I really appreciate your feedback.
But you don't need to add the line:
Code:
mount ext4 /dev/block/mmcblk1p2 / noatime
on the file init.rc, because it is present on the init file included on initramfs.cpio.gz.
If you extract the initramfs.cpio.gz attached on my first post with this command on a shell:
Code:
gunzip initramfs.cpio.gz && cpio -i -d -H newc -F initramfs.cpio --no-absolute-filename
You will find the following line:
Code:
$MOUNT -t ext4 -o noatime,errors=continue /dev/mmcblk1p2 /new-root
To upgrade to $aur0n 0.4.2 now it's really simple.
I'm preparing the new initramfs.cpio.gz. And putting the new rootfs of 0.4.2 on the rootfs of our archos (just to remember it is on the second partition of the second internal disk on device /dev/block/mmcblk1p2 mountet on /) and flashing the new initramfs.cpio.gz and zimage, when booting up on "Developer Edition" it will upgrade automatically.
Is there a reason why we want to be on 0.4.2?
I am not having problems with Market, is there other benifits of this update?
JW
BTW: Thanks for this halp on getting to internal.. I am not sure why we wanted to not do this in the first place.. I guess because some SD cards are faster, mine is working pretty fast and I think the internal is at least class 6
sublimejosh2000 said:
Is there a reason why we want to be on 0.4.2?
I am not having problems with Market, is there other benifits of this update?
JW
BTW: Thanks for this halp on getting to internal.. I am not sure why we wanted to not do this in the first place.. I guess because some SD cards are faster, mine is working pretty fast and I think the internal is at least class 6
Click to expand...
Click to collapse
Just see on the $aur0n post about the new version log change. We will have upgraded module, new wifi, more services like samba sshd etc.
I to havn't any speed problem with internal flash. It is fast enough (with dd copying speed test got till 16 mbit/s write speed) on the internal flash and it is way faster than my sdcard class 4.
0.4.2
Well.. I already reverted back to the origional wifi config file using terminal, and my Market is good to go.
I'm not sure that there are any major differences between 0.4.1 --> 0.4.2
If I am wrong, i think it requires to uninstall all google apps to make that upgrade, which I don't think I need to do.
Am I wrong?
sublimejosh2000 said:
Well.. I already reverted back to the origional wifi config file using terminal, and my Market is good to go.
I'm not sure that there are any major differences between 0.4.1 --> 0.4.2
If I am wrong, i think it requires to uninstall all google apps to make that upgrade, which I don't think I need to do.
Am I wrong?
Click to expand...
Click to collapse
From $auron post on Uruk doesn't seem to be difference between 0.4.1 and 0.4.2, except google applications. With the 0.4.2 you can install the google staff separatly with UrukDroid-0.4.2-GoogleMarket.rar. If you have those apps allready on your 0.4.1 than nothing change, you don't need to upgrade.
Thanks and no problem with your methods.
My 16GB microSD card isn't very good and boot / use of archos 101 is very slow with Uruk0.4.2 installed on external SD.
Now it's fast installed on internal SD...
Maybe this help:
if can't mount ext4 partition on your linux box, you can do:
tune2fs -E test_fs /dev/sdbx (sdb2 for instance)
and then:
mount -t ext4dev /dev/sdbx /mnt/sdcard
trouble with fresh install for 0.4.2 $auron....
I was able to create 3 partition internally (sdb1(vfat), sdb2(ext4), sdb3(ext4))
I was able to move rootfs and cmd script to sdb2
I was able to flash initramfs and zImage
But I'm stuck when rebooting into SDE (the screen is all messed up)
Any suggestion?
I didn't modify init.rc and vold.stab since this is a fresh install
yura-a said:
Does this method applicable to Archos 101 model too?
If someone already have been tried it on 101, please reply with details here, if any troubles you have after installation or any changes need to be done.
Also I am curious about does anyone have tried to connect USB thumb drive to the tablet with modified rom and root access? Do we still have any issues with USB drive recognition?
Click to expand...
Click to collapse
Yes this procedure works the same way on the A101. I have the 16GB version so I made the 1st partition a bit bigger but that was the only deviation.

Vizio VTAB1008: Clockworkmod recovery initial release Dec 11, 2011

EDIT: March 18th, 2012: See note at bottom regarding upgrade to Honeycomb with CWM installed.
Clockworkmod recovery for the Vizio VTAB1008
As promised here it is.
Use this carefully. Any wrong commands can potentially brick your system
I was able to port Clockwork Mod Recovery to the Vizio and boot into it.
Many thanks to fadefx for testing it.
The zip file is attached to this post. Please unzip and read the instructions in README.txt. It is also given below. Please also read the Caveats below.
### Here is Clockworkmod Recovery for the Vizio VTAB1008 ###
### Released on Dec 11th, 2011 -- rprr ###
### Based on cyanogenmod sources and with some ###
### Vizio VTAB1008 specific mods ###
### Requirements ###
### You need 'adb' access on a rooted device Vizio tablet ###
### AN EXTERNAL MICRO SDCARD MUST BE PRESENT IN ORDER TO ###
### MAKE AND RESTORE BACKUPS. ###
### Installation ###
### The following copies the file to the root of your sdcard ###
adb push recovery-cwm-vtab1008.img /sdcard/recovery-cwm-vtab1008.img
### Login to adb shell ###
adb shell
### Become root ###
su
### The following installs CWM to the recovery partition ###
### Make sure to not make any mistakes here ###
dd if=/sdcard/recovery-cwm-vtab1008.img of=/dev/block/mmcblk0p5 bs=512
### Logout as root ###
exit
### Exit adb ###
exit
### Reboot into recovery ###
### ENJOY !!!! Be careful. ###
### Exercise caution when using this. ###
Click to expand...
Click to collapse
CAVEATS:
Display is in landscape mode only
Cannot restore the kernel and ramdisk backups yet
No ROM manager support yet
Also the edifying scripting has some issues with the mount command. Any commands that begin with
mount(.........)
Click to expand...
Click to collapse
should be replaced as in the following example
run_program("/sbin/busybox", "mount", "/system");
Click to expand...
Click to collapse
Original Recovery
WARNING IF YOU WANT TO UPGRADE to Honeycomb:
Some of us including me have had problems when we attempted to upgrade to Honeycomb with CWM installed. This has resulted in non working devices. It maybe due to CWM. If so, it is possible that you may have to revert back to the stock recovery. I am attaching it to this post. You have to unzip it, move it to the sdcard and then install it. Remember that root will be lost if you follow this.
Code:
dd if=/sdcard/recovery-orig.img of=/dev/block/mmcblk0p5 bs=512
I don't think the bootloader is located on /sdcard/ this partition is fat formatted and the bootloader would be visible to the user in some way either through a filenrowser or when mounted to a windows machine.
FadeFx said:
I don't think the bootloader is located on /sdcard/ this partition is fat formatted and the bootloader would be visible to the user in some way either through a filenrowser or when mounted to a windows machine.
Click to expand...
Click to collapse
Thanks. Using the mmls tool from Ubuntu, I was able to dig up a little further to find unallocated partitions etc. Here is the list.
$ mmls -t gpt mmcblk0.img
GUID Partition Table (EFI)
Offset Sector: 0
Units are in 512-byte sectors
Slot Start End Length Description
00: Meta 0000000000 0000000000 0000000001 Safety Table
01: ----- 0000000000 0000015359 0000015360 Unallocated
02: Meta 0000000001 0000000001 0000000001 GPT Header
03: Meta 0000000002 0000000033 0000000032 Partition Table
04: 11 0000015360 0000017407 0000002048 sm0
05: ----- 0000017408 0000019455 0000002048 Unallocated
06: 07 0000019456 0000035839 0000016384 kernel
07: 00 0000035840 0000052223 0000016384 ramdisk
08: 01 0000052224 0000502783 0000450560 android_system
09: ----- 0000502784 0000666623 0000163840 Unallocated
10: 02 0000666624 0002239487 0001572864 android_data
11: 08 0002239488 0002255871 0000016384 reckernel
12: 04 0002255872 0002272255 0000016384 recovery
13: 05 0002272256 0002273279 0000001024 misc
14: 09 0002273280 0002277375 0000004096 uli_r
15: 10 0002277376 0002281471 0000004096 uli_w
16: 12 0002281472 0002285567 0000004096 HDCP
17: 06 0002285568 0002695167 0000409600 cache
18: 03 0002695168 0007729083 0005033916 mass_storage
19: ----- 0007729084 0007729151 0000000068 Unallocated
Click to expand...
Click to collapse
So far, I have tried various hacks but just cannot get CWM to run on this However, if you are good with Linux/Unix command line stuff and with adb it is possible to make backups of the various partitions. Thus far, I have backed up and restored the recovery partition successfully. This is obviously a very dicey thing to do as it is possible to brick this device.
rprr said:
So far, I have tried various hacks but just cannot get CWM to run on this However, if you are good with Linux/Unix command line stuff and with adb it is possible to make backups of the various partitions. Thus far, I have backed up and restored the recovery partition successfully. This is obviously a very dicey thing to do as it is possible to brick this device.
Click to expand...
Click to collapse
well is there any way we can just modify the existing recovery menu?
plus you did get adb to work with it but that was a simple fix
In order to change the options you have to build the recovery program from the Android source code.
Good Morning! Just a quick note to say thanks for working on this! Keep going...I think you can, I think you can, I can think you can etc etc etc. hahaha
Rprr, i think you have to specify the partition reckernel somewhere in board config as it seams the recovery has its own kernel there and it needs to know where it is located.
Edit: finally obtained root using a win7 64bit machine, pdanet drivers and d00ml0rd v3 and adb files from sdk.
----------------------------------------
tapatalked
Obsolete: Please see OP.
Still no luck with CWM port. Anyway, here is my method for enabling adb when in recovery. This requires linux/unix terminal line usage. On my VTAB the recovery partition is at /dev/block/mmcblk0p5. I assume that this is the case with all Vizio vtab1008 tablets.
Proceed carefully. You can potentially damage your device.
1. Quick Way
Download my recovery-new.img.zip file which is attached to this post and unzip it. You will have a file called "recovery-new.img". Copy this to your sdcard. Then open an adb shell and become root. Run the following command.
Code:
dd if=/sdcard/recovery-new.img of=/dev/block/mmcblk0p5 bs=512
Now reboot into recovery. You will have adb access.
2. Long Way for DIYers
On VTAB using adb as root:
Code:
dd if=/dev/block/mmcblk0p5 of=/sdcard/recovery.img bs=512
On my Mac (in terminal), Should work on linux as well:
Code:
adb pull /sdcard/recovery.img
cp recovery.img recovery.cpio.gz
gunzip -f recovery.cpio.gz
mkdir recovery
cd recovery
cpio -i -F ../recovery.cpio
Edit the 'default.prop' to make the needed changes. It should look like.
Code:
#
# ADDITIONAL_DEFAULT_PROPERTIES
#
ro.secure=0
ro.allow.mock.location=0
ro.debuggable=0
persist.service.adb.enable=1
On my Mac again:
Code:
cpio -i -t -F ../recovery.cpio | cpio -o -H newc -O ../recovery-new.cpio
cd ..
gzip recovery-new.cpio
dd if=/dev/zero of=recovery-new.img count=16384 bs=512
dd if=recovery-new.cpio.gz of=recovery-new.img conv=notrunc
adb push recovery-new.img /sdcard/recovery-new.img
On Vizio using adb as root:
Code:
dd if=/sdcard/recovery-new.img of=/dev/block/mmcblk0p5 bs=512
Now reboot VTAB into Recovery mode. You should have adb access.
PS: If you have made any mistakes, you can reflash the original recovery.
Code:
dd if=/sdcard/recovery-orig.img of=/dev/block/mmcblk0p5 bs=512
PPS: Once you have adb root shell access in recovery, you can backup and potentially restore the /system partition.
PPPS: I am also attaching the original recovery if you would like to flash it back using dd. It is called recovery-orig.img.zip. Please unzip it.
rprr said:
Still no luck with CWM port. Anyway, here is my method for enabling adb when in recovery. This requires linux/unix terminal line usage.
Proceed carefully. You can potentially damage your device.
On VTAB using adb as root:
Code:
dd if=/dev/block/mmcblk0p5 of=/sdcard/recovery.img bs=512
On my Mac (in terminal), Should work on linux as well:
Code:
adb pull /sdcard/recovery.img
cp recovery.img recovery.cpio.gz
gunzip -f recovery.cpio.gz
mkdir recovery
cd recovery
cpio -i -F ../recovery.cpio
Edit the 'default.prop' to make the needed changes. It should look like.
Code:
#
# ADDITIONAL_DEFAULT_PROPERTIES
#
ro.secure=0
ro.allow.mock.location=0
ro.debuggable=0
persist.service.adb.enable=1
On my Mac again:
Code:
cpio -i -t -F ../recovery.cpio | cpio -o -H newc -O ../recovery-new.cpio
cd ..
gzip recovery-new.cpio
dd if=/dev/zero of=recovery-new.img count=16384 bs=512
dd if=recovery-new.cpio.gz of=recovery-new.img conv=notrunc
adb push recovery-new.img /sdcard/recovery-new.img
On Vizio using adb as root:
Code:
dd if=/sdcard/recovery-new.img of=/dev/block/mmcblk0p5 bs=512
Now reboot VTAB into Recovery mode. You should have adb access.
PS: If you have made any mistakes, you can reflash the original recovery.
Code:
dd if=/sdcard/recovery.img of=/dev/block/mmcblk0p5 bs=512
PPS: Once you have adb root shell access in recovery, you can backup and potentially restore the /system partition.
PPPS: I am attaching my recovery-new.img. It is in zip format.
Click to expand...
Click to collapse
great tutorial i will give it a try, it would be nice if someone could do this and backup the system partition on a new vtab that way if something goes wrong you can reflash it
additional thoughts could this lead to rom porting as well http://android.modaco.com/topic/348695-guide-how-to-port-a-rom/
dylanparrish said:
great tutorial i will give it a try, it would be nice if someone could do this and backup the system partition on a new vtab that way if something goes wrong you can reflash it
Click to expand...
Click to collapse
Users cannot modify the system partition. Therefore the only difference between a new system partition and after rooting should be the root that were installed such as su, busybox etc.
PS: I assume that all Vizio tablets have the same partition structure with an 8MB recovery partition at /dev/block/mmcblk0p5.
rprr said:
Users cannot modify the system partition. Therefore the only difference between a new system partition and after rooting should be the root that were installed such as su, busybox etc.
PS: I assume that all Vizio tablets have the same partition structure with an 8MB recovery partition at /dev/block/mmcblk0p5.
Click to expand...
Click to collapse
But after root one can modify /system and thus brick the device. If wed have a backup we can dd it back while in recovery mode.
Yes, since there is only one vizio tablet model, all have the same partition layout.
----------------------------------------
tapatalked
Obsolete. Please see OP.
HOWTO: Backup/Recovery of /system using command line tools.
Once you have adb working in recovery mode this is what you can do to backup and recover your /system partition.
### Backup Procedure ###
Boot into recovery mode.
Code:
adb shell
You will get the following error. Ignore it.
Code:
sh: getcwd: No such file or directory
Now do the following. Assumes internal sdcard at mmcblk0p4 and /system at mmcblk0p2
Code:
cd /
mount -o rw -t vfat /dev/block/mmcblk0p4 /sdcard
dd if=/dev/block/mmcblk0p2 of=/sdcard/system.img bs=4096
The system.img file contains a backup of the /system. In principle one can recover from this.
### Recovery Procedure ###
Reboot into recovery.
Code:
adb shell
cd /
mount -o rw -t vfat /dev/block/mmcblk0p4 /sdcard
dd if=/sdcard/system.img of=/dev/block/mmcblk0p2 bs=4096
Reboot into normal mode.
I have not yet had a need to do the recovery part yet so that has not been tested by me.
HTH.
Linked in my howto thread...
----------------------------------------
tapatalked
I have not been able to get this to work. After booting into recovery my win7 sees the vtab as usb storage and not usb composite. I guess this is whats causing ADB to not see it as a device. Any suggestions?
grekco said:
I have not been able to get this to work. After booting into recovery my win7 sees the vtab as usb storage and not usb composite. I guess this is whats causing ADB to not see it as a device. Any suggestions?
Click to expand...
Click to collapse
I have been using a Mac. I don't know what would be causing this issue on Windows. In my situation I need to restart adb.
Good work as always rprr and fade... appreciate the time u guys are putting into this tab, i'm always checking the threads for updates.
error: device not found.
My computer says its connect and ready but adb not recognizing it. Any ideal?
abtxpress said:
error: device not found.
My computer says its connect and ready but adb not recognizing it. Any ideal?
Click to expand...
Click to collapse
Can you try "adb kill-server" followed by "adb start-server" before connecting the device? Then connect the device and do "adb devices".
Unfortunately I don't have easy access to a Windows machine.
Edit: I wonder if the Windows drivers required are different depending on whether one is accessing adb through recovery mode when compared to normal mode.
Update on CWM: Still no luck with CWM porting.
But,
I decided to go back to the android stock source source code for 2.3.2 which is on the Vizio tablet. This time I was able to build the recovery binary and then copy it to the recovery partition. I was able to get this to run but the graphics is all distorted in the following way.
1) I see 4 exclamation symbols in landscape mode and 2 recovery menus (see pic)
2) It does not respond to the volume buttons + power button
I am guessing that there are frame buffer issues + input issues.

BusyMount v1.01

{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
BusyMount 1.01 for the Rooted Fire TV
DOWNLOAD HERE
BusyMount is combination utility comprised of BusyBox v1.22.1
and bash scripts that persistently mount multiple USB mass
storage devices on your Fire TV. Of course it works just as well with a
single USB stick.
It has been tested with 4 concurrently mounted drives (vfat,exfat,ntfs,ext4).
BusyMount's two primary scripts live in /system/xbin:
mntdrives1.sh
mntdrives2.sh
The mntdrives1.sh script should run as is on any rooted Fire TV and mount your drives/sticks at /storage/usb/driveX where X is the sequence number of the device on your system: e.g. sda1=drive1, sdb1=drive2, etc.
The mntdrives2.sh script will mount your drives via their UUID, an internal label that is applied when the drive is formatted. If you have more than one drive attached to your Fire TV this is very important.
It is not at all unusual for the operating system to switch /dev/block/sd?? addresses so one boot your movies drive is called /dev/block/sda1 and anime /dev/block/sdb1. Reboot or swap drives and suddenly they have different addresses, sdc1 and sdd1. XBMC will not appreciate this. Mounting via UUID makes sure your data is in the same place every time.
mntdrives2.sh uses the same driveX naming scheme for mountpoints, but you can control what mounts where.
Each script can be called at boot to automount your drives. Currently, this is done via install-recovery-2.sh and busybox run-parts.
BusyMount is installed via Clockwork Mod provided by [email protected], something that is a must have for your rooted Fire TV. If you don't have it install it now, and then come back here! *
To install BusyMount:
1. adb connect 111.222.333.444 (substitute your FireTV IP address)
2. adb push filename.zip /sdcard/
3. adb shell su -c reboot recovery
Once in ClockworkMod Recovery:
Choose zip from sdcard
Choose 0
Scroll to BusyMount zip file
Press Enter
Select Yes
BusyMount will install. When it's finished, reboot. When the Fire TV reboots your drives will have been mounted by mntdrives1.sh. For mounting by UUID you will need to edit mntdrives2.sh. Instructions in the next post.
* you can also download BusyMount without the CWM installer at the link above for manual installation
IMPORTANT: Windows users: do NOT edit the mntdrives2.sh file with notepad! It will break the script. Instead, use busybox vi or pull the file to your computer and use Notepad++. Be sure to make backups of the scripts before editing!
To mount drives via UUID, first you need to find out what they are. After installing BusyMount, ADB shell or sshhttp://www.jocala.com/busydrop.html into your Fire TV. If you entered via adb su to root and issue the command:
Code:
blkid /dev/block/sd*
You should see something like this for as many drives as you have attached:
Code:
[email protected]:/ #blkid /dev/block/sd*
/dev/block/sdi1: LABEL="firetv1" UUID="94f2a28c-caac-4eb7-a544-84a650c0b809" TYPE="ext4"
/dev/block/sdh1: LABEL="CRUZER" UUID="138FD3254AEAB65E" TYPE="ntfs"
/dev/block/sdf1: LABEL="VFAT" UUID="0577-07FC" TYPE="vfat"
/dev/block/sdb1: LABEL="ExFat" UUID="544D-B43D" TYPE="exfat"
The important bits are the sd?? drives's "UUID=XXXXXX"
Now we edit the mntdrives2.sh file
If you're editing directly on the device mount /system as r/w:
Code:
mount -o remount,rw /system
Here is the mntdrives2.sh file:
Code:
#!/system/bin/sh
sleep 20
#
# FireTV USB/UUID Drive Mounter
#
# REQUIRED: Busybox with suuport for run-parts, blkid, mount-helper
# mount-helper and stuff that's probably slipped my mind required.
# AFAIK, NONE of the "free" Play Store busyboxes have all of the
# supplied options. I suggest you use mine or compile your own.
# Replace the UUIDs below with the UUIDs
# from your drives. This script has been tested
# with 4 drives mounted (vfat,exfat,ntfs,ext4)
# but (in theory) should support 26 (sda1-sdz1)
#
# Enjoy! [email protected]
#
export uuid1="544D-B43D"
export uuid2="138FD3254AEAB65E"
export uuid3="94f2a28c-caac-4eb7-a544-84a650c0b809"
export uuid4="0577-07FC"
i=0
storage="/storage/usb"
if [[ $(ls /dev/block | $busybox grep -c 'sd') -eq 0 ]]; then
exit 0
fi
mount -o remount,rw / ;
for f in /dev/block/sd??; do
drive=`echo $f | sed -r 's/^.{11}//'`
mountType=$(busybox blkid $f | busybox sed -n -e 's_^.*TYPE="\([^\"]*\)".*_\1_p');
mountUUID=$(busybox blkid $f | busybox sed -n -e 's_^.*UUID="\([^\"]*\)".*_\1_p');
i=$((i+1))
if [[ $mountUUID == $uuid1 ]]; then
busybox mkdir -p $storage/drive$i;
mount.exfat-fuse -o rw $f $storage/drive$i
fi
if [[ $mountUUID == $uuid2 ]]; then
busybox mkdir -p $storage/drive$i;
ntfs-3g $f $storage/drive$i -o rw,sync
fi
if [[ $mountUUID == $uuid3 ]]; then
busybox mkdir -p $storage/drive$i;
busybox mount UUID=$uuid3 $storage/drive$i
fi
if [[ $mountUUID == $uuid4 ]]; then
busybox mkdir -p $storage/drive$i;
busybox mount UUID=$uuid4 $storage/drive$i
fi
done
mount -o remount,ro /
As you can see there are 4 UUIDs defined at the top of the script. These are my personal UUIDs so of course these are the edits you have to make. Very simply, just change uuid1:
Code:
export uuid1="544D-B43D"
to your uuid1:
Code:
export uuid1="4455X-G5553" (or whatever)
Rinse and repeat for as many drives as you wish to define. Good luck!
reserved
This looks very interesting. Will try it out on the next Fire TV I set-up. Nice work!
So just to be clear, this simply serves to provide additional external storage to the FireTV, kinda like what we have had with StickMount?
It's not a way to expand internal storage like jmandawg's method, or to maximize internal storage space (without expansion) by using the StickMount/Link2SD combo, or is it?
AQKhanTheOne said:
So just to be clear, this simply serves to provide additional external storage to the FireTV, kinda like what we have had with StickMount?
It's not a way to expand internal storage like jmandawg's method, or to maximize internal storage space (without expansion) by using the StickMount/Link2SD combo, or is it?
Click to expand...
Click to collapse
It mounts multiple drives by sd device name or by UUID like paid stickmount. However, as you can see by the attached script, it can also use croniccorey & jmandawg's handy technique to mount an external drive as /data, tricking the aftv. I mount by UUID which gets around the "only one drive & /dev/sda1 only" problem.
BTW, the attached script has a .c extension because sh isn't allowed. If you play with it you'll want rbox's recovery installed. Right now my FTV has a 1TB ext4 drive for media, a 500Gb ext4 drive for /data, plus vfat and exfat drives attached just for the hell of it. Which I think is pretty damn sweet.
jocala said:
It mounts multiple drives by sd device name or by UUID like paid stickmount. However, as you can see by the attached script, it can also use croniccorey & jmandawg's handy technique to mount an external drive as /data, tricking the aftv. I mount by UUID which gets around the "only one drive & /dev/sda1 only" problem.
BTW, the attached script has a .c extension because sh isn't allowed. If you play with it you'll want rbox's recovery installed. Right now my FTV has a 1TB ext4 drive for media, a 500Gb ext4 drive for /data, plus vfat and exfat drives attached just for the hell of it. Which I think is pretty damn sweet.
Click to expand...
Click to collapse
Yes it is! I did have a couple of questions though. One is that would StickMount still be needed? And if I partition a HDD (or a USB stick) into 2 or more partitions, would these partitions have different UUID's?
AQKhanTheOne said:
Yes it is! I did have a couple of questions though. One is that would StickMount still be needed? And if I partition a HDD (or a USB stick) into 2 or more partitions, would these partitions have different UUID's?
Click to expand...
Click to collapse
Stickmount's not needed on FTV in any case. I've been mounting drives with adbFire since v1.01 (v1.12 is current) although mounting by UUID is new. Each partition get's its own UUID when formatted and can be mounted by it. BTW, you can also mount by label, eg drives labeled "movies", "data", etc.
jocala said:
Stickmount's not needed on FTV in any case. I've been mounting drives with adbFire since v1.01 (v1.12 is current) although mounting by UUID is new. Each partition get's its own UUID when formatted and can be mounted by it. BTW, you can also mount by label, eg drives labeled "movies", "data", etc.
Click to expand...
Click to collapse
Cool. Thanks for the answers! This should (will) become the preferred method for external storage on the FTV!
AQKhanTheOne said:
Cool. Thanks for the answers! This should (will) become the preferred method for external storage on the FTV!
Click to expand...
Click to collapse
I think /data swap will need automation for many. Everyone's not comfortable with the command-line. I'm working on an adbFire function to grab a uuid and write out a mount script, but it won't be ready for the next update
jocala said:
I think /data swap will need automation for many. Everyone's not comfortable with the command-line. I'm working on an adbFire function to grab a uuid and write out a mount script, but it won't be ready for the next update
Click to expand...
Click to collapse
Has this been incorporated into the latest version of adbFire?
AQKhanTheOne said:
Has this been incorporated into the latest version of adbFire?
Click to expand...
Click to collapse
Yes, but automation's not done for UUID mounting. I hope to have that finished for the next update.
hi could someone help, i installed this using adbfire and manage to edit the mntdrives2.sh locally
but i cant seem to be able to push this to system
Ive tried:
adb shell
su
mount -o remount,rw /system
adb push mntdrives2.sh /system/xbin/
i probably have a command wrong somewhere
DEREKTROTTER said:
hi could someone help, i installed this using adbfire and manage to edit the mntdrives2.sh locally
but i cant seem to be able to push this to system
Ive tried:
adb shell
su
mount -o remount,rw /system
adb push mntdrives2.sh /system/xbin/
i probably have a command wrong somewhere
Click to expand...
Click to collapse
(This is all built-into adbFire already)
In this case, adb push should be run from the pc, not the android device.
Code:
adb connect your.ip.address:5555
adb push mntdrives2.sh /sdcard
Or use adbFire to push the file to /sdcard
We aren't currently running a rooted kernel, so you can't push directly to /system or /data. You have to push to /sdcard, then shell into the device and do the remainder as root:
Code:
adb shell
su
mount -o remount,rw /system
cp /sdcard/mntdrives2.sh /system/xbin
chmod 0755 /system/xbin/mntdrive2.sh
mount -o remount,ro /system
(using ssh's scp you can copy stuff anywhere on the device and bypass the preliminary push to /sdcard...scp runs as root.)
Edit: I strongly suggest having CWM Recovery installed before rebooting with untested scripts!
thanks i will try this later
and ye i have CWM installed
DEREKTROTTER said:
thanks i will try this later
and ye i have CWM installed
Click to expand...
Click to collapse
Good luck
^ the above didnt seem to work, not sure why
DEREKTROTTER said:
^ the above didnt seem to work, not sure why
Click to expand...
Click to collapse
Check your spelling of mntdrives2.sh -- you typed mntdrive2.sh
jocala said:
Check your spelling of mntdrives2.sh -- you typed mntdrive2.sh
Click to expand...
Click to collapse
lol thanks, ill try again
its because i copied straight from your post above
edit: file transfer was a success and it still boots up fine
I assigned my NTFS drive as uuid4 but it still mounts as drive1. Is it because i need multiple attached? I dont have more drives available to test atm.
DEREKTROTTER said:
lol thanks, ill try again
its because i copied straight from your post above
Click to expand...
Click to collapse
That was a test to see if you were paying attention <g>
DEREKTROTTER said:
edit: file transfer was a success and it still boots up fine
I assigned my NTFS drive as uuid4 but it still mounts as drive1. Is it because i need multiple attached? I dont have more drives available to test atm.
Click to expand...
Click to collapse
No, you can mount one drive or many. Post your script and let's see.

TWRP Flashable BootSplash ZIP and CMD/Terminal Option

Just a simple TWRP Flashable BootSplash Zip for example to replace the warnings when you unlocked/rooted your device.
It will open up_param.bin and repack it with the jpg,s inside the zip.
Simply replace svb_orange.jpg , logo.jpg and booting_warning.jpg with a jpg of your own choice.
Make sure the images don't exceed 500kb, and keep exact same resolution (1440x3040 24bbp)
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
*** Download ***
Script:
Code:
#!/sbin/sh
OUTFD=$2
ZIP=$3
ui_print() {
echo -n -e "ui_print $1\n" > /proc/self/fd/$OUTFD
echo -n -e "ui_print\n" > /proc/self/fd/$OUTFD
}
cd /tmp
rm -rf arter97
mkdir arter97
cd arter97
unzip -o "$ZIP"
ui_print " - mounting data partition"
mount /data
if [ ! -e /data/media/0/up_param.bak ]; then
ui_print " - backing up current up_param to /sdcard/up_param.bak"
cat /dev/block/platform/13d60000.ufs/by-name/up_param > /data/media/0/up_param.bak
chown 1023:1023 /data/media/0/up_param.bak
chmod 664 /data/media/0/up_param.bak
fi
ui_print " - installing new logo.jpg"
chmod 755 tar
mkdir tartemp
cd tartemp
/tmp/arter97/tar -xf /dev/block/platform/13d60000.ufs/by-name/up_param
cp /tmp/arter97/logo.jpg .
chown root:root *
chmod 444 logo.jpg
touch *
/tmp/arter97/tar -pcvf ../new.tar *
cd ..
cat new.tar > /dev/block/platform/13d60000.ufs/by-name/up_param
ui_print " - installing new svb_orange.jpg"
chmod 755 tar
mkdir tartemp
cd tartemp
/tmp/arter97/tar -xf /dev/block/platform/13d60000.ufs/by-name/up_param
cp /tmp/arter97/svb_orange.jpg .
chown root:root *
chmod 444 svb_orange.jpg
touch *
/tmp/arter97/tar -pcvf ../new.tar *
cd ..
cat new.tar > /dev/block/platform/13d60000.ufs/by-name/up_param
ui_print " - installing new booting_warning.jpg"
chmod 755 tar
mkdir tartemp
cd tartemp
/tmp/arter97/tar -xf /dev/block/platform/13d60000.ufs/by-name/up_param
cp /tmp/arter97/booting_warning.jpg .
chown root:root *
chmod 444 booting_warning.jpg
touch *
/tmp/arter97/tar -pcvf ../new.tar *
cd ..
cat new.tar > /dev/block/platform/13d60000.ufs/by-name/up_param
ui_print " - unmounting partition /data"
umount /data > /dev/null 2>&1
ui_print " "
ui_print "finished"
ui_print "Edited for s10+ by Whiskey103"
cd /
rm -rf /tmp/arter97
sync
Installation method with terminal command without TWRP (pushing up_param.bin using dd cmd on phone):
Download up_param.bin
Place in root of internal memory
Open terminal on phone like Material Terminal for example:
command:
su
command:
dd if=/sdcard/up_param.bin of=/dev/block/platform/13d60000.ufs/by-name/up_param
Restore Stock ZIP
Or rename the up_param.bak on your SD into up_param.bin and use the dd cmd method to restore it.
Credits:
@Radzian - used his base zip and edited for s10
@ianmacd for pointing to the error in my first attempt.
Works perfectly:good::good::good:
bininga59 said:
Works perfectly:good::good::good:
Click to expand...
Click to collapse
Thx for the feedback and unknowingly being my guinea pig, or labrat.. Whatever you prefer
Couldn't test it myself but it worked on my S10+ and basically they have the same bootloader to an extent but still.
It's going great on the S10.
Now only an animated gif is missing.:laugh:
bininga59 said:
It's going great on the S10.
Now only an animated gif is missing.[emoji23]
Click to expand...
Click to collapse
Yea, that's something I will try in the future.
Iam still trying to work myself into this Samsung stuff.
Coming from HTC for almost a decade this Galaxy is basically putting me back in baby modus lol.
Small steps going forward, learning curve starting from zero here
I know you can do it. [emoji4]
Gesendet von meinem SM-G973F mit Tapatalk
It's nice that you already have screen S10 but I would prefer without Magisk. It is possible?
Edit.
It's ok. I used Paint and removed the Magisk stamp. Now it's fun because my wife looked at the phone strangely when he restarted and saw this warning triangle and exclamation points asking if I ruined my phone ha h
Installation method with terminal command without TWRP (pushing up_param.bin using dd cmd on phone):
Download up_param.bin
Place in root of internal memory
Open terminal on phone like Material Terminal for example:
command:
su
command:
dd if=/sdcard/up_param.bin of=/dev/block/platform/13d60000.ufs/by-name/up_param
Whiskey103 said:
Installation method with terminal command without TWRP (pushing up_param.bin using dd cmd on phone):
Download up_param.bin
Place in root of internal memory
Open terminal on phone like Material Terminal for example:
command:
su
command:
dd if=/sdcard/up_param.bin of=/dev/block/platform/13d60000.ufs/by-name/up_param
Click to expand...
Click to collapse
Thanks man
Before I install this, how do I revert to stock if I want/need to? Do the originals get backed up, and if so how do I restore them (other than reinstalling the whole firmware)?
Mr Anderson said:
Before I install this, how do I revert to stock if I want/need to? Do the originals get backed up, and if so how do I restore them (other than reinstalling the whole firmware)?
Click to expand...
Click to collapse
Rename up_param.bak on your SD card and rename up_param.bin.
Then you can push it back with the dd su command in OP
Not booting.
Hi Dev.
So i made a few changes to the images and flashed the zip file with twrp.
This did not work and now my phone is stuck at black screen not even booting, is there a way to flash the recovery zip via odin since that is the only thing I can boot into.
Thank you.
FdeKlerk said:
Hi Dev.
So i made a few changes to the images and flashed the zip file with twrp.
This did not work and now my phone is stuck at black screen not even booting, is there a way to flash the recovery zip via odin since that is the only thing I can boot into.
Thank you.
Click to expand...
Click to collapse
You can try flashing BL file from firmware zip with just up-param file in it with Odin.
Or your patched firmware fully with Home CSC to restore it without loosing data.
Not sure what you did to the zip to end up like this though.
When I try to download the up_param.bin from the OP I get following error:
https://www.whiskey103.nl/index1.php?dir=SamsungS10-Plus/BootSplash/s10/
Incorrect format for file ./languages/da.txt on line 7.
Format is "variable name[tab]value"
No problem downloading the Restore Stock zip
*********************************
Ok I managed to download the up_param.bin using Tor.
When I place the file in Internal Storage (NOT Root or SDcard) and type the commands using Material Terminal I get error:
No such file or directory???
Norup58 said:
When I try to download the up_param.bin from the OP I get following error:
https://www.whiskey103.nl/index1.php?dir=SamsungS10-Plus/BootSplash/s10/
Incorrect format for file ./languages/da.txt on line 7.
Format is "variable name[tab]value"
No problem downloading the Restore Stock zip
*********************************
Ok I managed to download the up_param.bin using Tor.
When I place the file in Internal Storage (NOT Root or SDcard) and type the commands using Material Terminal I get error:
No such file or directory???
Click to expand...
Click to collapse
But it should be in root of internal storage. Not sure where you placed it.
Whiskey103 said:
But it should be in root of internal storage. Not sure where you placed it.
Click to expand...
Click to collapse
I'm using Mixplorer and have tried to put the file in root of Root, root of Internal Storage but not root of SDcard.
Get the same error either in Root or Internal Storage???
Norup58 said:
I'm using Mixplorer and have tried to put the file in root of Root, root of Internal Storage but not root of SDcard.
Get the same error either in Root or Internal Storage???
Click to expand...
Click to collapse
No idea what you are trying, nobody reported that it isn't working.
You must be placing it in the wrong place.
Should be in root of INTERNAL SD card.
Sort of fix.
Whiskey103 said:
You can try flashing BL file from firmware zip with just up-param file in it with Odin.
Or your patched firmware fully with Home CSC to restore it without loosing data.
Not sure what you did to the zip to end up like this though.
Click to expand...
Click to collapse
I've been an idiot as always.
Flashing BL works however then one ends up with "custom recovery..." error.
So to fix this I had to flash full patched rom with CSC HOME and then when booted to recovery wipe dalvik, cache and system partition leaving data and internal storage and then after that I flashed my custom rom.
Once booted. It was if I never had any issues.
Finally something nice.
FdeKlerk said:
I've been an idiot as always.
Flashing BL works however then one ends up with "custom recovery..." error.
So to fix this I had to flash full patched rom with CSC HOME and then when booted to recovery wipe dalvik, cache and system partition leaving data and internal storage and then after that I flashed my custom rom.
Once booted. It was if I never had any issues.
Click to expand...
Click to collapse
So thanks to @Whiskey103 I was able to get this working.
For those that like something different, here you go.
Zip attached.
I`m on snapdragon s10 version and this method doesnt work.
My path is /dev/block/platform/soc/1d84000.ufshc/by-name/
After doing ` dd if=/sdcard/up_param.bin of=/dev/block/platform/soc/1d84000.ufshc/by-name/up_param ` i got feedback:
3215+0 records in
3215+0 records out
1646080 bytes transferred in 0.019 secs (86635789 bytes/sec)
Rebooting and i see no changes

? How to recover deleted files on rooted Android without USB Debug & PC connection?

? How to recover deleted files on rooted Android without USB Debug & PC connection?
Hello.
I have removed some important files in my DCIM folder on internal memory of my Android device. The USB socket of the phone is broken so I couldn't use any recovery software that using USB debug mode but I have Team Win I want to use the terminal of Team Win to make an image and copy it to SD Card of my Android device. I know that there is a command dd but how to use it in a proper way to make a full image of the partition including also free space.
Thank you very much in advance!
Yes, dd command could be used simmilar to this:
open terminal, cd to external SD folder
dd if=/dev/block/block/bootdevice/by-name/userdata of=data.img
or if you know number of partition
dd if=/dev/block/mmcblk0p18 of=data.img (p18 is on Huawei LDN, image size is that same as partition size 16GB/32GB/64GB..etc, so for bigger then 32GB need to use NTFS sdcard or exFAT sdcard and TWRP also has to support NTFS or exFAT).
Or edit etc/*.fstab and repack twrp. You can back up files from /data for now (as ext4 or f2fs). Just add line to back up full image of /data (as emmc).
If /data has ext4 filesystem it can easilly mount/unpack/scan/rip image. But if /data has f2fs ... got not cure.
Example:
/data f2fs /dev/block/bootdevice/by-name/userdata flags=length=-16384;backup=1;settingsstorage;encryptable=footer;
/data_image emmc /dev/block/mmcblk0p55 flags=display="Data Image";backup=1;flashimg;
adeii said:
Yes, dd command could be used simmilar to this:
open terminal, cd to external SD folder
dd if=/dev/block/block/bootdevice/by-name/userdata of=data.img
or if you know number of partition
dd if=/dev/block/mmcblk0p18 of=data.img (p18 is on Huawei LDN, image size is that same as partition size 16GB/32GB/64GB..etc, so for bigger then 32GB need to use NTFS sdcard or exFAT sdcard and TWRP also has to support NTFS or exFAT).
Or edit etc/*.fstab and repack twrp. You can back up files from /data for now (as ext4 or f2fs). Just add line to back up full image of /data (as emmc).
If /data has ext4 filesystem it can easilly mount/unpack/scan/rip image. But if /data has f2fs ... got not cure.
Example:
/data f2fs /dev/block/bootdevice/by-name/userdata flags=length=-16384;backup=1;settingsstorage;encryptable=footer;
/data_image emmc /dev/block/mmcblk0p55 flags=display="Data Image";backup=1;flashimg;
Click to expand...
Click to collapse
Thank you very much for you point to point reply!
Finally, I choose to use that option with some modifications because vfat doesn't support files larger than 4GB.
Code:
dd if=/dev/block/bootdevice/by-name/userdata conv=noerror,sync bs=100M | gzip -c | split -b1000000000 - mybackup.img.gz
I have mounted this *.img partition using OSFMount for Windows. But after the scanning process (I was using R-Studio that supports ext4 file system I found my deleted files in the tree structure /media/0/DCIM/Camera but all of the deleted files has 0 bytes size and have 2 flags: deleted, wiped.
I couldn't understand how that happened. I mean I didn't use my phone after deleting files at all. I also mounted this *.img as raw disk in Active Undelete but the result is actually the same all of the deleted files have 0 bytes file size.
Is that a bug of the program? Or I have made an image using wrong command? Or Android 9 actually wiping files after deletion?
The files have been accidentally deleted by AirDroid-web app but I don't think so that this app is wiping deleted files it doesn't make sense...
RaTr said:
Thank you very much for you point to point reply!
Click to expand...
Click to collapse
You are welcome. Thank you are for note about 4GB file size limit on vfat/fat32, will save us from a lot of headache.
---------- Post added at 10:03 AM ---------- Previous post was at 09:49 AM ----------
RaTr said:
actually the same all of the deleted files have 0 bytes file size.
Click to expand...
Click to collapse
Maybe to try DiskDigger on phone if it is rooted to scan internal sd?
PhotoRec for Windows/Linux: https://www.cgsecurity.org/wiki/PhotoRec_Step_By_Step
There are few programs to try on your image on GNU/Linux like extundelete, ext4magic, AnalyzeEXT, ext3grep ...
Source: https://askubuntu.com/questions/217606/undelete-files-on-ext4
I am trying to use ext4magic to recover deleted files. But I need a copy of the journal when I am trying to use command
Code:
debugfs -R "dump <8> /var/tmp/home.journal" /dev/mapper/home
I see that Team win terminal do not have this command how to add it or how to make a copy of the journal of my ext4 partition where I am trying to recover my files.
adeii said:
Maybe to try DiskDigger on phone if it is rooted to scan internal sd?
Click to expand...
Click to collapse
I have tried to use DiskDigger. When I am putting a filter to show only deleted files it doesn't show anything. Which is pretty strange.
adeii said:
There are few programs to try on your image on GNU/Linux like extundelete, ext4magic, AnalyzeEXT, ext3grep ...
Source: https://askubuntu.com/questions/217606/undelete-files-on-ext4
Click to expand...
Click to collapse
Next program that I have tried was TestDisk but looks like it doesn´t support ext4 file system.
Thank you for the advice about PhotoRec. It has support of ext4 system. But it won't help. So, there are still some options. I will try to use extundelete as the next one.
If you have an image of EXT4, then you can use 7-Zip Archiver to read all the files inside it.
jwoegerbauer said:
If you have an image of EXT4, then you can use 7-Zip Archiver to read all the files inside it.
Click to expand...
Click to collapse
7-Zip will show deleted files also?..
I have tried 2 more utilities:
1. ext4magic without external journal file. It has done the job but I couldn't find any files that I need.
2. extundelete that program restored less files and also no files that I want to recover.
One more strange thing:
I have installed R-Studio and opened my image there. I fount full list of my deleted files, but all of the records of my deleted files have 2 flags: deleted, wiped and it shows me that the size of that specific files is 0 bytes.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
I have checked other files from different dates, they can be recovered, there is no flag wiped and also I can see the size, in some of them there is a flag cross-link, but I think it is normal, that means part of that file is already overwritten by another one.
RaTr said:
I have tried 2 more utilities:
1. ext4magic without external journal file. It has done the job but I couldn't find any files that I need.
2. extundelete that program restored less files and also no files that I want to recover.
One more strange thing:
I have installed R-Studio and opened my image there. I fount full list of my deleted files, but all of the records of my deleted files have 2 flags: deleted, wiped and it shows me that the size of that specific files is 0 bytes.
I have checked other files from different dates, they can be recovered, there is no flag wiped and also I can see the size, in some of them there is a flag cross-link, but I think it is normal, that means part of that file is already overwritten by another one.
Click to expand...
Click to collapse
I am stuck in the same situation bro
See it here I described the issue very similar to yours. Any luck in trying to recover that `ext4` data
RaTr said:
I found my deleted files in the tree structure /media/0/DCIM/Camera but all of the deleted files has 0 bytes size and have 2 flags: deleted, wiped.
Click to expand...
Click to collapse
expected.
emmc/ufs flash storage is handled different from hard disk drive. there is FTL controller with own firmware that is wear-leveling whole storage all the time. not to mention files are fragmented.
file system sends TRIM on each deletion of file. note the discard mount flag for userdata partition.
Android 4.3 Update Brings TRIM to All Nexus Devices
www.anandtech.com
Hi, I tried dd command, and it returned
Code:
dd: data.img: Read-only file system
But ./adb pull /dev/block/mmcblk0p57 57.img worked, and created a NDIF image.
Why dd did not work?
And which format of image would dd create?
Thanks.
you're trying to write into phones / rootdir. you cannot dump partition into phone itself. external MicroSD card or OTG pendrive is required. but you could redirect to stdout into remote file (note the quotes make the difference where > redirection is executed)
Code:
adb root
adb shell 'dd if=/dev/block/mmcblk0p57 bs=1m status=none' > data.img
open data.img file with HxD editor and have a look into first bytes. search for magic 53 ef at offset 0x438 to confirm it's ext4 image.
dd is useful in case no usb connection available (topic of thread). the result is same as adb pull. you can increase speed with block size (bs= default 512 bytes) up to 1 MB.
Note: on FDE encrypted phone one can't pull userdata directly. instead pull whatever is mounted /data (like /dev/block/dm-0)
aIecxs said:
you're trying to write into phones / rootdir. you cannot dump partition into phone itself. external MicroSD card or OTG pendrive is required. but you could redirect to stdout into remote file (note the quotes make the difference where > redirection is executed)
Code:
adb root
adb shell 'dd if=/dev/block/mmcblk0p57 bs=1m status=none' > data.img
open data.img file with HxD editor and have a look into first bytes. search for magic 53 ef at offset 0x438 to confirm it's ext4 image.
dd is useful in case no usb connection available (topic of thread). the result is same as adb pull. you can increase speed with block size (bs= default 512 bytes) up to 1 MB.
Note: on FDE encrypted phone one can't pull userdata directly. instead pull whatever is mounted /data (like /dev/block/dm-0)
Click to expand...
Click to collapse
Thanks for your reply.
What would be the differences between
adb shell 'dd if=/dev/block/mmcblk0p57 bs=1m status=none' > data.img
and
the method described in this message: https://stackoverflow.com/a/41214172 ?
Thanks.
streaming over netcat avoids unwanted characters using stty raw. on macOS probably result is no difference (after unpacking gzip).
you don't need this as you wrote adb pull worked (which is the easiest method)
aIecxs said:
streaming over netcat avoids unwanted characters using stty raw. on macOS probably result is no difference (after unpacking gzip).
you don't need this as you wrote adb pull worked (which is the easiest method)
Click to expand...
Click to collapse
Thanks.
I searched Hex in 57dd.img created by adb shell 'dd if=/dev/block/mmcblk0p57 bs=1m status=none' > 57dd.img.
It showed
Is the 53EF on line 1080 in the image above is the one you mentioned "at offset 0x438"?
right, that is ext4 magic at offset/byte hex (0x438)16 = (1080)10 dec
I have a slightly different but related question /problem. My apologies if this is not the right place to post.
On my Samsung A10e, TWRP (and other recoveries) gives me a tarfork 255 error when trying to backup userdata. Normally this should be 32GB in size from Samsung specs.
I have used two alternatives :
* adb pull /dev/block/by-name/userdata data.img which creates a 26G file on my linux PC, that I can mount and inspect. When I run filesystem check it throws out errors, probably due to some of the data being encrypted - I am running AOSP Android 11 gsi. Perhaps the same errors that prevents TWRP from working ?
* alternatively I have put in a clean 32GB SD card, then via adb shell run dd if=/dev/block/by-name/userdata of=/dev/block/mmcblk1p1 to copy the full userdata partition over to the SD card. Once removed from the phone and put in a card reader, again this can be inspected on my linux PC, and gives the same filesystem check errors. I also ran dd if=/dev/external_sd of=data2.img on my linux PC to create a similar image file as adb pull but it is now the full 32GB that I would have intially expected.
So why the size difference between adb pull and dd ?? Does adb pull actually get everything - in other words if I try and restore with adb push will the phone recover to previous state and boot ?
I was hoping to then reduce the size of my data copy to 16GB since on my phone I am only using 12GB of the 32GB, but file errors are preventing me at the moment.
I was thinking about wiping data and then with arm32 parted and adb shell creating a 16GB userdata partition and an additional 16GB user shadow partition - the latter only to be used locally via dd to do backup and restore and avoid TWRP errors.
that is very lightly due to encryption issues....esp Magisk is known to break encryption.
if you can decrypt at TWRP level and then proceed to backup user data via ADB shell to memory card that is your best bed and then wipe the partition and then restore your app data individually for apps that you need e.g. contacts db for contact an SMS. I strongly doubt if you will be able to restore that entire partition and boot to that original partition successfully.... it may have become what what we can call "encryption tainted"
excuse my typos

Categories

Resources