View Full Version : Please help a Noob.
Offspring2099
03-11-2006, 01:51 AM
After a few days of reading 'How to...' and other tutorials, I still have a few very simple 'starting out' questions, that I think are so simple that I can't find them in the forum.
Q1: Can I do this, instead of booting from a Linux boot CD (such as knoppix), can simply boot up my Linux system, mount TiVo HD and access it that way?
Q2: After reading Captain_Video's tut, I found out that since I have a SA Series 2, I can run killhdinitrd and mod the kernel. I'm pretty confident that I can do this procedure, but how do I find out what version of kernel my TiVo has. Assuming that I can access all of the TiVo’s files, by either running Linux boot CD or from mounting it to my spare Linux system?
Thanks.
Narf54321
03-11-2006, 02:18 AM
1. Probably, as long as the tools work on your brand of linux (specifically mfsbackup and mfsrestore). I just installed Ubuntu 5.10 on the extra space of my old PC, and it seems to behave.
2. If its a TCD240 model, then no problem. You'll still need a kernel from specific Tivo system software revisions to use killhdinitrd. Not all kernels compiled by Tivo are "kill-able". So far, the best way to find out seems to be checking the system software version you're already running. If you're running Tivo software v7.2, you'll need to find the original kernel included with the v3.1.5 DirecTivo software. (The kernel itself is actually I think v2.4.20, but its usually called the "3.1.5 kernel" because that was the first Tivo software revision to use it and its killhdinitrd hackable.)
EDIT: By the way, Please please please make sure to backup your original drive and only experiment on a new hard drive. Fixing a blown original Tivo drive from a bad hack or dumb mistake can be a nightmare.
Offspring2099
03-11-2006, 02:38 AM
First of all thanks, for a quick reponse.
I have a box with Mandrake 8.1 from 2001. I hope it works. BTW it is a TCD240 model.
You'll still need a kernel from specific Tivo system software revisions to use killhdinitrd.
By this do you mean I have to get a hold of the kernels that were originaly listed in killhdinitrd support threads.
These?
3.1.5: Linux version 2.4.20 (build@buildmaster5)
(gcc version 3.0) #22 Fri Feb 20 18:19:25 PST 2004
MD5: 8d31d9eb8077a0a91a9356d23a4e9fb8
Supports DTiVo Uma4/Uma6/Phoenix, and all known SA Series2.0
3.1.1c: Linux version 2.4.4-TiVo-3.0 (build@buildmaster10)
(gcc version 3.0) #9 Wed Jan 7 10:05:19 PST 2004
MD5: 8430fccf5c26bb5668c5e14ca3fc4582
Supports DTiVo Uma4/Uma6, and all known SA Series2.0
4.0.1a: Linux version 2.4.18 (build@buildmaster19)
(gcc version 3.0) #38 Thu Oct 23 10:48:29 PDT 2003
MD5: 567ffaf194278f82e7c7b86bb411c93e
Supports DTiVo Uma4, and all known SA Series2.0
3.1.U5: Linux version 2.4.4-TiVo-3.0 (build@buildmaster10)
(gcc version 3.0) #27 Sat Sep 28 21:47:44 PDT 2002
MD5: 5217ce0190595f4fe2461a429ce18121
Supports DTiVo Uma4, and all known SA Series2.0
(this kernel is supported but 3.1.1c is recommended)
...then run killhdinitrd on one of these kernels and overwrite my TiVo's kernel with it?
fantmn
03-11-2006, 02:44 AM
I use a PC with SLES9 loaded on it. It works very well. This thread (http://www.dealdatabase.com/forum/showthread.php?t=47361)has a list of tools and links to them that you may find yourself needing. Search and read about the tools listed there too. tivopart is needed to let linux work with the Tivo disk partitions. I recommend getting the PTVupdate $5 CD with the killed kernels.
Offspring2099
03-11-2006, 03:10 AM
Thanks for the link fantmn, I think I'll get the ptvupdate if I give up doing it myself.
fantmn
03-11-2006, 09:49 AM
Thanks for the link fantmn, I think I'll get the ptvupdate if I give up doing it myself.
The problem you may have and the reason you may need the $5 CD is that the killhdinitrd can only work with the kernels listed in your post. The likelihood of your system having one of those is fairly low. If you do not have the correct version then your options are trying to get someone to give you a copy or the $5 route. The fastest approach is the $5 downloadable ISO. I hope your Tivo will have a killable kernel. Good luck.
PlainBill
03-11-2006, 03:21 PM
One other point that has been made repeatedly: The quality of the answers you get depends on the information you give us. In your first post you indicated you had a SA Series 2, but did not indicate which software version it is running. Presumably it is 7.x, but without that information it's a little hard to tell you which killhdinitrd kernel you need.
PlainBill
ozzy52
03-11-2006, 05:51 PM
First of all thanks, for a quick reponse.
I have a box with Mandrake 8.1 from 2001. I hope it works. BTW it is a TCD240 model.
You need 3.1.5
ftp://tivok:tivokernel@ftp.tivosupplies.com/tivo_kernels/s2_kernels/
Offspring2099
03-12-2006, 03:44 PM
The problem you may have and the reason you may need the $5 CD is that the killhdinitrd can only work with the kernels listed in your post.
Thank you for clearing that up for me.
One other point that has been made repeatedly: The quality of the answers you get depends on the information you give us. In your first post you indicated you had a SA Series 2, but did not indicate which software version it is running. Presumably it is 7.x, but without that information it's a little hard to tell you which killhdinitrd kernel you need.
I apologize that I was so short in my description. It's just that tcd240 is what I’m planning to buy and I’m just trying to get ahead, so when I do get it I’ll know immediately what to do. The TiVo I have right now is TCD540040. Does anyone know if any members of this forum still flash EPROM? I'm looking through a number of lengthy threads only to find that some ppl have quit and some are used to do it are not doing it now.
You need 3.1.5
ftp://tivok:tivokernel@ftp.tivosuppl...ls/s2_kernels/
Thank you very much.
Offspring2099
03-16-2006, 08:02 PM
I'm getting a prom and socket to hack my TCD540040.
How can I tell what version of os my TiVo is. Is there table somewhere, or do I have to look for it on TiVo's HD.
fantmn
03-16-2006, 08:49 PM
Assuming that the tivo is up and running the system information menu shows it. Otherwise it is in the mfs path mfs/SwSystem/ACTIVE
Offspring2099
03-16-2006, 08:55 PM
thanks, i knew it was something that simple. That's why I couldn't find it.
Offspring2099
03-18-2006, 04:06 PM
I've read Hinsales's How-to (http://www.newreleasesvideo.com/hinsdale-how-to/index9.html) a few times, and I'm a little confused, maybe someone can help me out again.
In step 7, we make an image of "current software version, channel lineup, guide data, season passes, thumbs, preferences, etc for easy restore"
Ex:
mfsbackup -f 9999 -6so /mnt/dos/tivo.bak /dev/hdc
In step 8, we take that image we put that image form step 7 and put it onto a new drive.
Ex:
mfsrestore -s 127 -bzpi /mnt/dos/tivo.bak /dev/hdb
In step 10, we do what he calls a "recording capacity upgrade"
Ex:
mfsbackup -Tao - /dev/hdc | mfsrestore -s 127 -xzpi - /dev/hda
The confusing part to me is that in other threads where people are documenting their work such as this (http://www.dealdatabase.com/forum/showthread.php?t=37965). The only part that required to copy a drive is the step 10. Is that true? What is the purpose of the previous steps if I can just run this command:
mfsbackup -Tao - /dev/hdc | mfsrestore -s 127 -xzpi - /dev/hda
I assume the purpose of step 7 is to have an image of your TiVo HD, for safe keepings. And I can just run step 10 to copy my TiVo's content onto a new drive.
fantmn
03-18-2006, 04:39 PM
Basically the first few steps give you a backup you can restore from later assuming you do not keep the original disk put in a safe place somewhere. Plainbill has some information about his recommendation for the -f value here (http://www.dealdatabase.com/forum/showpost.php?p=249513&postcount=9). Step 9 of Hinsdale has you put the drive back into the Tivo and test before you spend all the time transferring the recordings etc. You may also want to look at the interactive upgrade instructions web site (http://tivo.upgrade-instructions.com/index.php) that will generate a custom set of instructions for you based on how you answer questions about what you want to do. It is like a customized Hinsdale. I have used them with several different Stock Tivos with great success. Reading (and understanding) the Hinsdale information (as you have done) and the MFSTools information is also highly recommended.
Offspring2099
03-18-2006, 05:32 PM
The interactive website is great. Thanks again.
I decided to stick with my TCD540040, os (7.2.1-oth-01-2-540) and do the PROM myself. I soldered a few times before,but by any means, I dont think this will be a walk in the park, but I'm excided to do this myself.
Today, I'm going to get a 15W iron, because my current one is a little too big, and as soon as I get the chip and the Chipquik kit, I will being 'the journey'.
Offspring2099
03-19-2006, 09:23 PM
My goal is to have a networked TiVo, with a running FTP server.
As mentioned before I have TCD540040, 7.2.1-oth-01-2-540 .
Here is the rough draft outline:
* Socket PROM chip.
* Swap TiVo HD for a larger one. Keep original for safekeepings.
* Put a killhdinitrd kernel (2.4.20) onto TiVo.
* Get a bash prompt.
* Install USB drivers for USB 2.0 adapter.
* Install ftp server.
* Take care of update issues.
* Turn off encryption.
Does that look right? I'm still looking for what to do after I dd killhdinitrd kernel to get bash prompt over null-modem serial cable. From some experiences/results threads I saw that I need to "Write new bootpage param to kernel":
bootpage -P "root=/dev/hda4 dsscon=true console=2,115000 upgradesoftware=false" -C /dev/hdX
Not sure what that means.
And do I need to mess with sysinit at this point.
I'm just in a fuzzy territory between dd'ing hacked kernel and getting a bash promt.
If someone can set me on the right path, that would be great. I don't minding reading, I have been for the last 2 weeks. Thank you.
eastwind
03-19-2006, 10:09 PM
Read other people's rc.sysinit.author startup files (there are plenty of them in the forums) and don't forget to disable the TiVo's firewall (iptables or netfilter-enable).
ew
fantmn
03-19-2006, 10:14 PM
Serial BASH is cover well in this thread (http://www.dealdatabase.com/forum/showthread.php?t=45244).
ScanMan
03-19-2006, 10:28 PM
I just posted a thread here (http://www.dealdatabase.com/forum/showthread.php?t=48804) on my experiences using killhdinitrd on a "240" machine; AFTER you solder the prom in your "540" it should be about the same. Pretty much everything anything I say after this is detailed further in my thread.
Sounds like you might be using Mandrake but I'm telling you just use the PTV cdrom; it has all the tools you need. They have a free one you could use since it looks like someone pointed you to already killhdinitrd modded kernels (I used 3.1.5).
I was using "X" as a placeholder to signify the drive position as reported by the ptv bootdisk. Typically linux will be as follows:
PRIMARY MASTER - hda
PRIMARY SLAVE - hdb
SECONDARY MASTER - hdc
SECONDARY SLAVE - hdd
If you have other hard drive controllers it will have additional letters. You should see these message as it boots. If you need to scroll back, hold down your shift key and hit page-up, page-down. If you already have lost the screen buffer, just type dmesg and it will display again. Since my tivo drive was actually in the secondary master, mine was hdc, so I'll use that in my examples below.
First step is you need to run the command "bootpage -p /dev/hdc" from the ptv bootdisk. It will either report that your "root" is at hda4 or hda7. Remember that. Mine said hda4 so that's what the following is based on. So now dd in the killhdinitrd kernel as follows
dd if=/path/to/vmlinux.px of=/dev/hdc3
dd if=/path/to/vmlinux.px of=/dev/hdc6
Next you change the boot params:
bootpage -P "root=/dev/hda4 dsscon=true console=2,115000 upgradesoftware=false" -C /dev/hdc
This will set the boot properly with console output to serial and tell tivo you don't want future software upgrades.
From here you will have to mount your "root" (hdc4 in my example)
Once mounted you will need to either edit (if it already exists) or create rc.sysinit.author and put some commands in it to start telnet, tivoftpd, etc.
After that you will need to edit iptables or otherwise disable netfilter (linux built-in firewall); also you probably want to move in some hacks/apps for future use.
It's pretty much all detailed in my thread; check it out and ask further question once you get a little further.
Hope it helps...good luck with soldering. If you master that there might be some others here interested in that!
Offspring2099
03-19-2006, 11:20 PM
Thank you all, you have been very helpful.
Scanman, I actualy saw you post before, but lost it, thank you for putting it here. I will use PTV cd.
First step is you need to run the command "bootpage -p /dev/hdc" from the ptv bootdisk. It will either report that your "root" is at hda4 or hda7. Remember that. Mine said hda4 so that's what the following is based on. So now dd in the killhdinitrd kernel as follows
dd if=/path/to/vmlinux.px of=/dev/hdc3
dd if=/path/to/vmlinux.px of=/dev/hdc6
Scanman, you said that boopage will report hda4 or hda7, why is that, I figure it would output hdc4 or hdc7, since you queried /dev/hdc.
And why 3 and 6 when it showed 4 and 7, is that a mistake in bootpage that I read about before, or am I totaly lost.
PlainBill
03-19-2006, 11:20 PM
One other point: Once you install a replacement prom you are no longer restricted to killhdinitrd kernels. Rather than searching for or purchasing a killhdinitrd kernel, simply run replace_initrd on your current kernel.
PlainBill
fantmn
03-19-2006, 11:43 PM
Scanman, you said that boopage will report hda4 or hda7, why is that, I figure it would output hdc4 or hdc7, since you queried /dev/hdc.
And why 3 and 6 when it showed 4 and 7, is that a mistake in bootpage that I read about before, or am I totaly lost.
bootpage is reporting the information off the drive as it appears in the Tivo not in the PC. When The drive is in the Tivo it is hda. It is only hdc in the PC. The parms will also be hda based when you set the new parameters with bootpage -P. The kernel partitions are root-1 so 4=3 and 7=6. Must be new math :D .
ScanMan
03-19-2006, 11:46 PM
You have to understand the way tivo partitions are mapped; tivo uses two sets of partitions 3/4 and 6/7 - one is the "active" pair and the other is the "alternate." The alternate is used whenever a tivo software upgrade takes place. Tivo places the new software in the alternate partition and then flips them to make the alternate active. Partitions 3 and 6 are basically the kernel partitions while 4 and 7 are the actual root filesystems. Tivo also mounts partition 9 as /var. Typically, you can mount the 4, 7 and 9 partitions although sometimes either the 4 or 7 isn't present (especially after an MFSTools backup/restore).
You want to dd in the killhdinitrd kernel to the kernel partitions which is one less than your actual root, hence 3/6 (although technically you only have to do one - the other is helpful for recovery though).
Last point, the drive is hdc when it is in your PC but it is hda as far as Tivo is concerned. That's why bootpage reports hda4 or hda7; it's also why when you use bootpage to update the boot params you tell it to update "root=/dev/hda4 dsscon=true console=2,115000 upgradesoftware=false" although you write these changes to hdc as it is in your PC.
Hope this is starting to make sense; keep searching too, there is a lot of good information here...
EDIT: Sorry to dupe, fantmn beat me too it...
Offspring2099
03-20-2006, 12:32 AM
bootpage is reporting the information off the drive as it appears in the Tivo not in the PC. When The drive is in the Tivo it is hda. It is only hdc in the PC. The parms will also be hda based when you set the new parameters with bootpage -P. The kernel partitions are root-1 so 4=3 and 7=6. Must be new math .
Last point, the drive is hdc when it is in your PC but it is hda as far as Tivo is concerned. That's why bootpage reports hda4 or hda7; it's also why when you use bootpage to update the boot params you tell it to update "root=/dev/hda4 dsscon=true console=2,115000 upgradesoftware=false" although you write these changes to hdc as it is in your PC.
This answers a lot of questions, thank you, I was going nuts here. Now I'm going to reseach "replace_initrd" of which PlainBill was talking about.
Offspring2099
03-20-2006, 04:11 AM
Can someone confirm if I got this right so far:
Since I'm useing version 2.5. I have to use:
bootpage -P "root=/dev/hda# dsscon=true console=1,115000 upgradesoftware=false" -C /dev/hdX
instead of:
bootpage -P "root=/dev/hda# dsscon=true console=2,115000 upgradesoftware=false" -C /dev/hdX
Similarly for to accept input use: setsid /bin/bash --login -i</dev/ttyS1&>/dev/ttyS1&
since my serial port is 1.
Does "export PATH=$PATH:/var/hacks" puts my hacks, (if I put them there) in the path way???
Also what is this line "tnlited 23 /bin/bash -login &" in rc.sysinit.author.
And what is the general idea after 'upgradesoftware=false'. Can I connect to the internet to get program info, since this is done. Can I get program info /wout getting a software update.
ScanMan
03-20-2006, 10:08 AM
I believe the Serial port is 1 for 2.5 units; see here (http://www.dealdatabase.com/forum/showthread.php?t=41367) for clarification, your changes look right.
Yes, the export path will put /var/hacks (or whatever) in your path.
You may not need to use "setsid"; you can try it without. If you do use setsid either put it right in /bin (as I did) or type the complete path (i.e., /var/hacks/setsid ...)
Quote: "Also what is this line "tnlited 23 /bin/bash -login &" in rc.sysinit.author."
That line starts telnet.
The upgradesoftware=false does not affect program guide data; it only tells tivo you don't want the next software revision (release). At some point (probably many releases down the road) you may have to upgrade manually. See the sticky on the consequences of not taking software releases here (http://www.dealdatabase.com/forum/showthread.php?t=41782).
fantmn
03-20-2006, 10:49 AM
You may not need to use "setsid"; you can try it without. If you do use setsid either put it right in /bin (as I did) or type the complete path (i.e., /var/hacks/setsid ...)
Without the setsid function some things don't seem to work on the serial port. CTL-c, more, less etc. seem to be ignored. There are more details and a recommendation here (http://www.dealdatabase.com/forum/showthread.php?t=48797) (post 5). Without setsid the serial port will give you a bash prompt, but it can be rather irritating. Of course your changes will be needed to use the correct device.
PlainBill
03-20-2006, 10:56 AM
When a TiVo boots it checks for software upgrades, and will install them unless 'upgradesoftware' is 'false'. This allows waiting until the hacks have been ported to the new software version before doing the upgrade.
As a common sense precaution, do not install hacks in /var. The TiVo will wipe /var if it gets too full.
PlainBill
ScanMan
03-20-2006, 11:34 AM
Thanks for clarifying Fantmn; I had to use setsid myself to get it to work but I wasn't sure if you had to...I guess it makes sense to!
Offspring2099
03-20-2006, 06:45 PM
When a TiVo boots it checks for software upgrades, and will install them unless 'upgradesoftware' is 'false'. This allows waiting until the hacks have been ported to the new software version before doing the upgrade.
As a common sense precaution, do not install hacks in /var. The TiVo will wipe /var if it gets too full.
PlainBill
So I put my /hacks dir with goodies somewhere else than in /var and include that dir in the path. Right off the bat, i see that Mfs_FTP installation tells me to transfer mfs_ftp.tar to /var in the tivo. So I assume that if I put it in some other folder, it will still run fine, if I type in the full path in rc.sysinit.author or add that folder to the path?
PlainBill
03-20-2006, 07:55 PM
So I put my /hacks dir with goodies somewhere else than in /var and include that dir in the path. Right off the bat, i see that Mfs_FTP installation tells me to transfer mfs_ftp.tar to /var in the tivo. So I assume that if I put it in some other folder, it will still run fine, if I type in the full path in rc.sysinit.author or add that folder to the path?
:) OK, you got me on that one. :) Perhaps I should have said 'all basic hacks', thus allowing me to claim mfs-ftp is an advanced hack. The directions for mfs-ftp say install it in /var/mfs-ftp because it creates a log file.
The important concept is to keep the basic tools such as AlphaWolf's Series 2 binaries out of /var. The TiVo will wipe /var if it gets too full. If (for example) the ftp daemon is in /var, you won't be able to transfer files.
PlainBill
Offspring2099
03-21-2006, 03:46 AM
YAY ME!!! Removed the old PROM, put on the socket, removing the bridges /btw the points was a real pain in the rear, took me an hour. Total job took about 4 off and on. I was trying to watch 24 and Prison break at the same time. :D Anyways I took pics, I'll post them in my blog later, I'm spent. YAY! :p
cheer
03-21-2006, 09:58 AM
So I put my /hacks dir with goodies somewhere else than in /var and include that dir in the path. Right off the bat, i see that Mfs_FTP installation tells me to transfer mfs_ftp.tar to /var in the tivo. So I assume that if I put it in some other folder, it will still run fine, if I type in the full path in rc.sysinit.author or add that folder to the path?
One caveat: mfs_ftp uses a cache directory that requires read-write access. mfs_ftp by default also tries to write to a log file called port.3105.log in its own directory. So here's what I did:
Install mfs_ftp in /hacks/mfs_ftp
Create a directory called /var/hacks
Create a 0-byte file called port.3105.log in /var/log
Create /var/hacks/cache
In the mfs_ftp directory, create a symlink to port.3105.log
In the mfs_ftp directory, create a symlink to /var/hacks/cache
To create the symlinks:
ln -s /var/log/port.3105.log /hacks/mfs_ftp/port.3105.log
ln -s /var/hacks/cache /hacks/mfs_ftp/cache
Thus you can run mfs_ftp on a ro partition outside of /var. Worst case, you lose your log file and your cache directory.
ozzy52
03-21-2006, 02:28 PM
YAY ME!!! Removed the old PROM, put on the socket, removing the bridges /btw the points was a real pain in the rear, took me an hour. Total job took about 4 off and on. I was trying to watch 24 and Prison break at the same time. :D Anyways I took pics, I'll post them in my blog later, I'm spent. YAY! :pCongratulations. Could you share with us where you actually obtained the modded Prom from? I've done some searching and can't come up with a current source. Thanks.
Offspring2099
03-21-2006, 03:33 PM
Congratulations. Could you share with us where you actually obtained the modded Prom from? I've done some searching and can't come up with a current source. Thanks.
Someone should be contacting you shortly. Check your PM.
Offspring2099
03-22-2006, 01:21 PM
One caveat: mfs_ftp uses a cache directory that requires read-write access. mfs_ftp by default also tries to write to a log file called port.3105.log in its own directory. So here's what I did:
Install mfs_ftp in /hacks/mfs_ftp
Create a directory called /var/hacks
Create a 0-byte file called port.3105.log in /var/log
Create /var/hacks/cache
In the mfs_ftp directory, create a symlink to port.3105.log
In the mfs_ftp directory, create a symlink to /var/hacks/cache
To create the symlinks:
ln -s /var/log/port.3105.log /hacks/mfs_ftp/port.3105.log
ln -s /var/hacks/cache /hacks/mfs_ftp/cache
Thus you can run mfs_ftp on a ro partition outside of /var. Worst case, you lose your log file and your cache directory.
Gotcha, thx for the tip.
Offspring2099
03-28-2006, 01:10 AM
One other point: Once you install a replacement prom you are no longer restricted to killhdinitrd kernels. Rather than searching for or purchasing a killhdinitrd kernel, simply run replace_initrd on your current kernel.
PlainBill
I found the source code, it's in C. I assume I can just gcc with either cgywin or my older linux box.
After neutring my kernel with replace_intrd, I dont need to run this:
bootpage -P "root=/dev/hda4 dsscon=true console=2,115000 upgradesoftware=false" -C /dev/hdc
Because I can still take updates and I dont need to change boot params. Is this right?
...and
setsid /bin/bash --login -i</dev/ttyS1&>/dev/ttyS1&
should give me my bash promt
ocntscha
03-28-2006, 02:02 AM
I found the source code, it's in C. I assume I can just gcc with either cgywin or my older linux box.gcc on an older Linux box worked for me.
After neutring my kernel with replace_intrd, I dont need to run this:
bootpage -P "root=/dev/hda4 dsscon=true console=2,115000 upgradesoftware=false" -C /dev/hdc
Because I can still take updates and I dont need to change boot params. Is this right?No, thats not right. You will want to run that or else your Tivo will update its software/quit using the hacks you've installed at Tivo's whim instead of at yours. Then again, I don't have a modded Prom so I may be off base, but I don't think so. I mean as far as I know all your modded Prom is going to let you do is use any kernel thats been neutered with replace_initrd. Nothing more, nothing less. If I'm wrong you or anyone else who knows, please correct me. My understanding is your modded Prom + replace_initrd'd kernel equals my older SA model with stock Prom + killhdinitrd'd kernel. (although you've got a slight advantage now in that you can always whatever kernel is most current at initial boot where as I'd likely have to take the additional step of chain loading to use the current kernel (which is what I do, which is why I have experience with replace_initrd))
...and
setsid /bin/bash --login -i</dev/ttyS1&>/dev/ttyS1&
should give me my bash promtYes, that ought to work as long as setsid is locatable in $PATH. My suggestion is make the next line after that one be /bin/stty rows 24 columns 80 < /dev/ttyS1I think the serial port on your box is ttyS1 but find out yourself for sure. If it is ttyS1 then your bootpage command from the previous question is actually going to need to be bootpage -P "root=/dev/hda4 dsscon=true console=1,115000 upgradesoftware=false" -C /dev/hdc
Offspring2099
03-28-2006, 02:35 AM
/bin/stty rows 24 columns 80 < /dev/ttyS1
Does that setup the size of the window, when I use the hyperterminal?
ocntscha
03-28-2006, 03:13 AM
Does that setup the size of the window, when I use the hyperterminal?Kind of. It tells the Tivo what size your hyperterminal window is so that text can be properly formatted to match. Generally any terminal emulator is going to be 80x24 by default. If hyperterminal is something different, I doubt it, adjust accordingly.
Offspring2099
03-28-2006, 03:28 AM
ocntscha, thanks for the help. I have found a few other threads of yours that helped previously. Anyways, as soon as I find a decent deal on a HD and get a netgear fa120, I'll try to make this happen. :D
Offspring2099
03-31-2006, 12:27 AM
I think this might be a stupid question, but anyways...
Why in everyone's rc.sysinit.author, everyone invokes telnet by running 'tnlited'.
Is there a difference btw alphawolf's tivotools version of telnet and 'tnlited'.
I'm lost.
ocntscha
03-31-2006, 01:29 AM
I think this might be a stupid question, but anyways...
Why in everyone's rc.sysinit.author, everyone invokes telnet by running 'tnlited'.
Is there a difference btw alphawolf's tivotools version of telnet and 'tnlited'.
I'm lost.Ones a server, ones a client.
Offspring2099
04-01-2006, 12:29 AM
Ones a server, ones a client.
Makes sence. I guess I was confused because I can't find 'tnlited' binary. Is it already integraded with TiVo's linux? Or do I have to find it and move it there? I see telnet in AlphaWolf's 'All-In-One S2 utilities collection' (zero byte, so I think its a symlink), but no tnlited.
PlainBill
04-01-2006, 12:58 AM
Makes sence. I guess I was confused because I can't find 'tnlited' binary. Is it already integraded with TiVo's linux? Or do I have to find it and move it there? I see telnet in AlphaWolf's 'All-In-One S2 utilities collection' (zero byte, so I think its a symlink), but no tnlited.
Tnlited is part of the standard TiVo software. Undoubtably, they use it in testing the systems.
PlainBill
Narf54321
04-01-2006, 02:50 AM
Makes sence. I guess I was confused because I can't find 'tnlited' binary. Is it already integraded with TiVo's linux? Or do I have to find it and move it there? I see telnet in AlphaWolf's 'All-In-One S2 utilities collection' (zero byte, so I think its a symlink), but no tnlited.
tnlited is in /sbin and as PlainBill said is part of the standard Tivo software.
telnet in Alphawolf's AIO utilities is just a terminal client part of busybox. The symlink makes it easier to invoke (you can type busybox to see available commands compiled into it). Without the symlink, you'd have to type busybox telnet or busybox hexdump or busybox more etc...
Offspring2099
04-01-2006, 04:08 PM
tnlited is in /sbin and as PlainBill said is part of the standard Tivo software.
telnet in Alphawolf's AIO utilities is just a terminal client part of busybox. The symlink makes it easier to invoke (you can type busybox to see available commands compiled into it). Without the symlink, you'd have to type busybox telnet or busybox hexdump or busybox more etc...
Ahhh... That's why there are a million symlinks. Cool Thanks.
Offspring2099
04-07-2006, 01:17 AM
Today I replaced my Tivo's 40 Gig HD with a 160 Gig seagate. Everthing went well, but I have a question. :D
I thought only after having a replaced or hacked kernel that I will be able to see all 160 gigs. When I replaced the PROM chip, did that somehow adjust the 'chain of trust' so that I dont have to have a killhdinitrd kernel / replaced kernel to view all 160 gigs?
fantmn
04-07-2006, 04:03 AM
Today I replaced my Tivo's 40 Gig HD with a 160 Gig seagate. Everthing went well, but I have a question. :D
I thought only after having a replaced or hacked kernel that I will be able to see all 160 gigs. When I replaced the PROM chip, did that somehow adjust the 'chain of trust' so that I dont have to have a killhdinitrd kernel / replaced kernel to view all 160 gigs?
The key to seeing all of the bigger disk drives (greater than 137 GB) is LBA48 support in the kernel. All of the newer stock kernels have that support compiled in them (I believe). For additional details search on LBA48.
Narf54321
04-07-2006, 11:19 AM
The 7.x boot kernels (and 6.x for DirecTivo units) have LBA48 support for what I call "huge" hard drives.
I hesitate to call it "large" hard drive support, because that barrier was reached with Windows95 and 500 MegaByte drives started coming out. That was when we moved from direct head+cylinder addressing to logical block addressing, which was the stop-gap measure at that time. Damn, I'm old.
cheer
04-07-2006, 01:11 PM
The 7.x boot kernels (and 6.x for DirecTivo units) have LBA48 support for what I call "huge" hard drives.
I hesitate to call it "large" hard drive support, because that barrier was reached with Windows95 and 500 MegaByte drives started coming out. That was when we moved from direct head+cylinder addressing to logical block addressing, which was the stop-gap measure at that time. Damn, I'm old.
Nah...if you were old, you'd remember the 32 MEGABYTE partition limit we had until DOS 4.0 came out. Or the fact that you couldn't even use a DISK bigger than 32mb until DOS3.3 (introduced extended partitions) without funky drivers. Or the 15mb limit in earlier DOS 2.x versions. Or the utter lack of hard disk support in 1.0. Or partitioning an old Apple 10mb hard drive into 140k volumes because DOS3.3 didn't support hard disks. Or...
--some old guy
Offspring2099
04-07-2006, 02:15 PM
LOL :D Thanks guys. I'll be trying to get a bash prompt this weekend. I got my plan layed out, just need time now.
Narf54321
04-07-2006, 03:33 PM
I'll be trying to get a bash prompt this weekend. I got my plan layed out, just need time now.
Having just been through the ringer with a Nightlite unit myself, I can tell you you pretty much need mrblack51's replace_initrd file (its in C source) and the associated null-linuxrc.img.gz file for the insertion/replacement. I transferred the TCD540 kernel to my windows box and used Cygwin to compile the replace_initrd.c file and use it, then transferred it back to my linux box and installed it on the Tivo drive (plus AlphaWolf's tivotools). Whew!
One the initrd is defeated, you can put anything you want on the machine.
Nah...if you were old, you'd remember the 32 MEGABYTE partition limit we had until DOS 4.0 came out. Or the fact that you couldn't even use a DISK bigger than 32mb until DOS3.3 (introduced extended partitions) without funky drivers. Or the 15mb limit in earlier DOS 2.x versions. Or the utter lack of hard disk support in 1.0. Or partitioning an old Apple 10mb hard drive into 140k volumes because DOS3.3 didn't support hard disks. Or...
Well, now that you bring it up... I'm old enough to remember pop's IBM XT and installing a 10MB hard drive (full-height!), and hexediting the I/O addresses on a DOS 5.25" boot floppy so we could actually use the drive.
Pops also had a hard drive platter for grins. It had suffered a head crash and was no good. When I say hard drive platter, I mean this thing was nearly a meter across with a three-inch spindle-hole (the head crash had left a visible gauge in the surface). We made it into a coffee table. :)
Offspring2099
04-07-2006, 04:15 PM
Having just been through the ringer with a Nightlite unit myself, I can tell you you pretty much need mrblack51's replace_initrd file (its in C source) and the associated null-linuxrc.img.gz file for the insertion/replacement. I transferred the TCD540 kernel to my windows box and used Cygwin to compile the replace_initrd.c file and use it, then transferred it back to my linux box and installed it on the Tivo drive (plus AlphaWolf's tivotools). Whew!
Since I'm not Linux savvy, I don't feel comfortable moving the kernel. So a week back I compiled replace_initrd.c and put null-linuxrc.img.gz on my flash drive. I can mount the flash drive and and my new Tivo HD and just run this 'replace_initrd /dev/hda6 initrd.img.gz original_kernel.bak', if my HD is at hda. Am I correct? Is there an upside to the way you did it. I already tried running the compiled code and when I ran it it gave me the instructions, so I assume cygwin compiled ok. Anyways, that's my plan, plz tell me if it's a no go. Thanks.
Narf54321
04-07-2006, 06:05 PM
Since I'm not Linux savvy, I don't feel comfortable moving the kernel. So a week back I compiled replace_initrd.c and put null-linuxrc.img.gz on my flash drive. I can mount the flash drive and and my new Tivo HD and just run this 'replace_initrd /dev/hda6 initrd.img.gz original_kernel.bak', if my HD is at hda. Am I correct? Is there an upside to the way you did it. I already tried running the compiled code and when I ran it it gave me the instructions, so I assume cygwin compiled ok. Anyways, that's my plan, plz tell me if it's a no go. Thanks.
If it runs and gives you usage instructions that's good. Your way is much better.
The way I did it is horrendously entangled, mostly complicated by the fact that my Ubuntu install doesn't seem to have a C compiler (they seem to push Python instead). So I had to move my kernel file to my Windows box, where I happened to have a full Cygwin install (with gcc) and was able to compile replace_initrd. But, since it was Cygwin, it needs to run under cygwin+Windows (and not linux) so I had to patch the kernel here, then transfer it back over to my Ubuntu machine where I had the tivo drive. Crazy. When I get a new hard drive, I think I'll try CentOS which should at least be slightly developer friendly, and I can compile a *real* linux version of replace_initrd. Eventually it'd be cool to compile a MIPS version of replace_initrd for in-place system software upgrades.
As for making a copy of the kernel, its pretty easy.
dd if=/dev/hda6 of=/home/narf/MyTivoKernel
(Note that this copies everything out of partition 6, so if its 4MB like mine, you get a 4MB file with lots of end nulls even though the actual kernel is probably only 1.7MB.)
Putting the kernel back is just the opposite.
Offspring2099
04-07-2006, 06:29 PM
But, since it was Cygwin, it needs to run under cygwin+Windows (and not linux) so I had to patch the kernel here, then transfer it back over to my Ubuntu machine where I had the tivo drive.
Ha, I knew that me keeping my old mandrake 8.1 cds would pay off. :p
Thanks for the DD instructions, I've seen the instructions of putting the kernel back on HD, but not from the drive. It honestly didn't click that it would be the same thing.
Offspring2099
04-08-2006, 02:43 AM
Sweet!!! I got a promt. It says 'bash-2.02#'. I'm invoking bash prompt with setsid in the rc.sysint.author, so if that ran, that means my kernel was successfuly replaced right?
When I replaced my kernel, it spooked me a little because it threw an error on making a kernel back up. I used PTV's free CD to boot maybe that's why.
Next step is telnet and an ftp server.
EDIT: telnet and tivoftpd are now up and running. Yay! Superpatch, then tyTools, then Mfs_Ftp are next. Does Mfs_Ftp use a different port than tivoftpd?
cheer
04-08-2006, 01:18 PM
Yep -- mfs_ftp uses port 3105 by default.
Offspring2099
05-13-2006, 07:48 PM
Somebody help. Something unholy just happened. Can't connect to my tivo. Can't conntect with tytools, telnet and not getting bash with serial cable.
My version now says 7.2.2b-oth-01-2-540. It used to be 7.2.2-oth.01-2-540. I also don't see all the options I saw after I ran the superpatch. AGH!!!!!! :mad:
Did I take an update????? How can that be possible??? I know for a fact that I ran this:
bootpage -P "root=/dev/hda# dsscon=true console=1,115000 upgradesoftware=false" -C /dev/hdX
and then ran:
bootpage -p /dev/hdX
.....to double check that the update was off.
What in gods name is going on. Please somebody shine some light. Thank you.
ScanMan
05-13-2006, 09:16 PM
It definitely looks like you took the upgrade; they have been pushing 7.2.2b, I got it on both my machines.
What version of bootpage - boot cdrom did you use? I have read there have been issues with some versions of bootpage. I have used the free lba48 boot cd from ptvupgrade a number of times without incident.
Did you happen to change the PROM password (with crypto); if so, you can probably access the PROM menu via serial and boot from your old (now alternate) partition to fix things.
Offspring2099
05-13-2006, 09:43 PM
I used this burned iso -> ptvlba48-4.02.iso.
And I didn't change my PROM pw. What are my options? This time I want the update to stay off. LOL.
ScanMan
05-14-2006, 12:38 AM
Unless someone comes up with a better idea, it might be to pull the drive and start over with the same process. With two additional precautions...
1st time you telnet in, check your bootpage again with "bootpage -p /dev/hda"
If it's not right, re-write it (you don't need the -C before the device on the live tivo filesystem). Then check it again.
2nd, crypto -u -srp password
This will set the PROM password to password or whatever else you decide to substitute there. This may give you a recovery option, although it might not have worked in your current situation if the software upgrade stripped out your bootpage parameters. Better luck next time...
Offspring2099
05-14-2006, 04:38 PM
Just took her apart, took the tivo's HD and put it into my pc. Booted it with the ptvlba48-4.02.iso. First thing I did was mount and ran bootpage. The bootpage root shows 7 when the old was 4. So yes, you were right scanman, update did happen. But what's pissing me off is that 'upgradesoftware=false'. Where can I get a bootpage that works?
cheer
05-14-2006, 05:27 PM
I doubt there's anything wrong with your bootpage -- if it says that upgradesoftware=false was set, then it was set.
So either (A) it was misspelled, or (B) it's not reporting on the drive you think it's reporting on, or (C) upgradesoftware=false didn't actually block the upgrade.
Offspring2099
05-14-2006, 05:34 PM
*slaps himself*
So either (A) it was misspelled, or (B) it's not reporting on the drive you think it's reporting on, or (C) upgradesoftware=false didn't actually block the upgrade.
Mine says flase not false. Everybody point and laugh. :o
ocntscha
05-14-2006, 07:37 PM
Mine says flase not false.A little dyslexia huh. Yeah that'll do it every time. Reminds me of the dyslectic, agnostic, insomniac. He stayed up all night wondering if there really is a dog.
Bu du bump :D
vBulletin® v3.7.3, Copyright ©2000-2008, Jelsoft Enterprises Ltd.