Based on information posted by Steve Jenkins of the TiVo Underground
You will need the following for this procedure:
A PC with IDE hard drive connectors
2 blank 3.5” floppies
A TiVo (duh!)
1. Print out these instructions now so you will have them to reference when you’re not in front of a Web browser. 2. Start by downloading the following two files:
a. Dylan's Boot Disk
b. QUNLOCK.EXE 3. Follow the instructions in Dylan’s README file to build a Linux Boot Disk. If you are running Windows (95/98/ME/XP/NT/2000), this is done by simply inserting your blank 3.5” floppy into your Drive A: and running the MAKEBOOT.BAT file. 4. Using your second floppy, make a DOS boot disk and copy the QUNLOCK.EXE program to it. 5. Power down both your PC and your TiVo. Remove your TiVo cover using a Torx 10 screwdriver to remove the screw and slide the cover off the unit. Don’t pry! If you have trouble, put your TiVo on the ground and use a gentle “kick” on the top edges to slide the cover toward the rear of the unit. Congrats! You just voided your warranty! 6. Carefully remove your primary TiVo drive (called the A Drive). It’s jumpers are currently set to make it an IDE Master (as opposed to a Slave) so to make things easy, let’s keep it as a master when we install it in your desktop PC in the next step. But to do so, it must be installed on IDE Channel 2. The procedure won’t work if you install it in your PC the IDE Channel 1 Master because of the byte-swapping setting on the boot CD. This process will work if it’s the IDE 1 or 2 Slave, but you’ll have to change jumper settings for that, and then back when you put it back in your TiVo. So to make things easy, just keep is as master and we’ll install it on IDE 2 Channel 2. 7. Unplug the IDE cable and power cable from whatever device is in installed in your PC as the IDE Channel 2 Master. You can find out the IDE channel by looking at the markings on your motherboard next to the IDE connectors, and the Master will be the device that is connected to the first connector as you move away from where the cord plugs into the motherboard. There’s a good chance this device will be your PC’s main hard drive. 8. Plug the IDE Channel 2 Master connector and the power cable into your TiVo A Drive. If you’ve got the IDE connector installed the wrong way, you’ll find out soon enough in a subsequent step. Just power down and swap the connector and start over from this step. 9. Insert your Linux Boot Disk into your PC and power it up. 10. If all goes well, your system will boot into Linux. Watch all the messages on the screen as they fly by. Near the end, Linux will attempt to connect to all your IDE devices. It will most likely name your floppy drive something like “FD0” and it will name the drive you installed as the IDE Channel 2 Master something like “HDC.” After it names your drives, it will tell you how megabytes it sees on the disk (while Linux loads you’ll have time to locate this number.) MAKE SURE THIS NUMBER MATCHES THE SIZE OF YOUR TIVO A DRIVE. If it is low (such as 9-10MB), then your drive is locked. Follow step 11 ONLY if your drive is locked. If it isn’t, skip ahead to step 12. 11. USE THIS STEP ONLY IF YOUR DRIVE IS LOCKED! To unlock your drive and allow Linux to access it properly, power down your PC, insert the DOS boot disk with QUNLOCK.EXE on it, and restart your machine. It will boot to a DOS prompt. Enter the following (without the quotes): “QUNLOCK 2” and hit ENTER. This will unlock the IDE Channel 2 Master. If you installed the disk on a different IDE Channel or as a slave, just run QUNLOCK to see the correct number to run to unlock your drive. Power down your PC, re-insert the Linux boot disk, and boot into Linux. Watch carefully to make sure your drive size is properly reported. If it’s not, then something went wrong with the unlock process. You either entered the wrong number as the option, or you didn’t power down to allow the drive to power up in an unlocked state. For more info about locked drives, check out section 2.15 of the FAQ. 12. When Linux is done booting, you will see a login prompt. Type in “root” (no quotes) and hit ENTER. 12a. You will need to “mount” your drive so that you can copy the necessary files over to the Tivo hard disk. You generally want to copy files to a directory named /var/hack located on partition 9. To mount partition 9, type:
mount /dev/hdc9 /mnt
The “c” (aka hdc) in the above example means it’s the IDE Channel 2 Master. If you have yours set up differently, then refer to Section 4.6 of the FAQ for the correct letter to use. (General guidelines: hda=primary IDE master, hdb=primary IDE slave, hdc=secondary IDE master, hdd=secondary IDE slave) 12b. You must make a directory called "hack" inside the existing "var" directory. Execute the following commands:
cd /mnt
cd /var
mkdir hack
12c. You must now copy the program you want to install to new hack directory. Execute the following command:
cp /floppydir/program_name /mnt/var/hack/program_name
12d Make the new program (an all other programs in the /var/hack direcotry executable) by typeing the following:
chmod 755 /mnt/var/hack/*
12e Type the following and hit ENTER to unmount Partition 9.
umount /mnt
13. You will need to “mount” your drive so that you can edit the startup file to automatically run the program you just installed. This file is located on Partition 4. To mount this, type:
mount /dev/hdc4 /mnt
14. Type the following and hit enter:
joe /mnt/etc/rc.d/rc.sysinit.author
This will open the joe editor and create (or edit an existing verison of) the file that contains user-specified startup instructions for TiVo when it boots up. 15. Page down to the bottom of the file add the following on a line all by itself:
/var/hack/program_name &
Note: The line listed above is not accurate for all Tivo programs, see the readme file for the specific program and use the command suggested. 16. Save the file by typing CTRL-K followed by CTRL-X. You should get a message that the file was saved. Now make the file executable by typing the following:
chmod 755 rc.sysinit.author
17. Type the following and hit ENTER to unmount Partition 4.
umount /mnt
18. Now you need to make the same change on Partition 7, which stores an exact copy of the startup files. Type the following and hit ENTER.
mount /dev/hdc7 /mnt
Now repeat steps 14 – 17 to edit the startup file on this partition. 19. When you’re done making changes, type “exit” and hit ENTER to log out of Linux.
exit
20. Power down your PC, remove the TiVo A Drive, and re-install it in your TiVo. 21. Power up your TiVo, wait for it to boot, and then telnet to the IP address of your TiVo. You should see a bash shell prompt! You’re in! Hack away!
Corrections or updates for this page: Note: Do not post questions, unrelated comments, or information of which your are uncertain. This section is reserved for corrections and updates only.