Difference between revisions of "Booting Original FW"

From WikiDLXTV
Jump to: navigation, search
(Initial content)
 
(Increased root.bin size)
Line 1: Line 1:
 
It is possible to take the original firmware from WD, and turn it into a bootable root.bin.  This will allow you to boot from it without having to reflash your device.
 
It is possible to take the original firmware from WD, and turn it into a bootable root.bin.  This will allow you to boot from it without having to reflash your device.
  
'''Requirement:''' WDLXTV 0.4.5.3 or newer, USB disk with at least 350 MB of space
+
'''Requirement:''' WDLXTV 0.4.5.3 or newer, USB disk with at least 450 MB of space
  
 
# Download the WDTV firmware you wish to try
 
# Download the WDTV firmware you wish to try
Line 11: Line 11:
 
    
 
    
 
   echo -e "\n### Creating empty root.bin..."
 
   echo -e "\n### Creating empty root.bin..."
   dd if=/dev/zero of=root.bin-104 bs=1024k count=150
+
   dd if=/dev/zero of=root.bin-104 bs=1024k count=250
 
   mkfs.ext3 ./root.bin-104
 
   mkfs.ext3 ./root.bin-104
 
    
 
    

Revision as of 13:54, 6 May 2011

It is possible to take the original firmware from WD, and turn it into a bootable root.bin. This will allow you to boot from it without having to reflash your device.

Requirement: WDLXTV 0.4.5.3 or newer, USB disk with at least 450 MB of space

  1. Download the WDTV firmware you wish to try
  2. Download the following script: http://www.lostrealm.ca/files/mkrootbin.sh.gz. Or, create it yourself:
 #!/bin/sh
 echo -e "### Stripping WD firmware..."
 tail -c +33 wdtvlive.bin > wdtvlive.stripped.bin
 
 echo -e "\n### Creating empty root.bin..."
 dd if=/dev/zero of=root.bin-104 bs=1024k count=250
 mkfs.ext3 ./root.bin-104
 
 echo -e "\n ### Mounting filesystems..."
 mkdir /tmp/wdfw
 mkdir /tmp/newfw
 
 mount -o loop root.bin-104 /tmp/newfw
 mount -o loop wdtvlive.stripped.bin /tmp/wdfw
 
 echo -e "\n### Transfering content to root.bin..."
 rsync -avHS /tmp/wdfw/* /tmp/newfw
 
 mkdir -p /tmp/newfw/boot
 mkdir -p /tmp/newfw/dev
 mkdir -p /tmp/newfw/mnt/boot
 mkdir -p /tmp/newfw/mnt/fwup
 mkdir -p /tmp/newfw/opt
 mkdir -p /tmp/newfw/proc
 
 echo -e "\n### Flushing filesystems..."
 sync && sync && sync
 
 echo -e "\n### Unmounting filesystems..."
 umount /tmp/newfw
 umount /tmp/wdfw
 
 echo -e "\n### Removing original WD files..."
 rm wdtvlive.stripped.bin wdtvlive.bin
 
 echo -e "All done!  To set your WDTV to boot from that file, run the following command:\n\nconfig_tool -c ROOT_TAG='104'\nconfig_tool -s\nconfig_tool -s\nsync && reboot\n"
 echo -e "\nTo reboot on your flashed firmware, boot without the USB disk plugged in."
 echo -e "Once booted, plug it back, log into SSH, and run the following commands:\n\nconfig_tool -c     ROOT_TAG=\nconfig_tool -s\nconfig_tool -s\nsync && reboot\n"
 
  1. Copy wdtvlive.bin and the unpacked content of mkrootbin.sh.gz on your USB disk
  2. Telnet/SSH to your WDTV, then go to the directory on your USB disk (probably inside /tmp/media/usb/USB1/something/ or USB2/something )
  3. Run the script:


   ./mkrootbin.sh


Be patient. You will be updated throughout the various steps.

Once done, follow the instruction displayed at the end to enable booting from the newly created root.bin-104. NOTE: if you are using an older WDLXTV than 0.4.5.3, simply rename root.bin-104 for root.bin, then reboot.