![]() |
Image wont take
I have tried numerous times using the hinsdale "how-to", to create a backup image of my modified DVR39 40GB drive.
mfsbackup -f 9999 -6so /mnt/dos/tivo.bak /dev/hdc It back's up fine. Then i do the mfsrestore: mfsrestore -s 127 -bzpi /mnt/dos/tivo.bak /dev/hdb I also tried it with the "-x" switch to no avail. Everytime it would just hang on the "powering up" screen forever. So i tried a direct copy: dd if=/dev/hdc of=/dev/hdb bs=1024k This time it worked, but showed only the capacity of the original drive. So i pulled the drive back from the TIVO and did the MFSadd: mfsadd -x /dev/hdc After this process it read on the screen that i only added 1 hour to the drive capacity. Its a 120GB drive, so why did it only show a one hour gain? When i put the drive back in it would hang on the "powering up" screen again. My last ditch effort was to do the direct copy again, then do a "clear and delete everything". Everything worked, but still only showed the capacity of a 40GB drive, when it was actually a 120GB drive. I have checked and rechecked ALL my commands, but for the life of me cannot understand why this will not work. Can anyone help me please? |
Your commands look fine but I'd definitely use the -x switch instead of the -b. One thing you should pay attention to is the jumper settings on the drive, especially if you're using a Western Digital drive. It has two different settings for master (standalone) and master with slave present. If you're restoring a backup in your PC with a 2nd drive on the bus then you need to change the settings when you return it to your Tivo or it will simply hang on the Powering up screen forever.
|
Sounds like my problem
I also am having a similar problem. I had a modified Hughes DVR2 with A = 120g and B = 40g. I used the dd command to individually copy the old A drive to a new A = 120g and again to copy the old B to a new B = 80g. When I performed the mfs add it said "nothing to add" and estimated my recording capacity at 175 hours, which seemed about right. However when in the Tivo my capacity is still the old 141 hours. I restarted the Tivo and nothing has changed. Can anyone make a suggestion as to how I can incorporate the extra capacity?
Thanks. |
Quote:
There are several options: 1. Use killhdinitrd to modify the proper kernel for your system, reset bootpage and boot parameters, etc. Then you will be able to backup and restore your drive to a larger drive. 2. RonnyThunder has created a version of MFS Tools which will backup and restore a Monte'd drive. 3. Use MFS Tools to backup and restore as you did above. Then use the dd command to copy the software partitions from the original drive to the new drive. dd if=/dev/hdc3 of=/dev/hdb3 dd if=/dev/hdc4 of=/dev/hdb4 dd if=/dev/hdc6 of=/dev/hdb6 dd if=/dev/hdc7 of=/dev/hdb7 PlainBill |
Quote:
Thanks for the help, Linda |
Quote:
PlainBill |
i realize this may be an extreme newbie question, but that link directs me to download a file.....mfstools.tar.gz.txt.....which is a version of MFSTools that allows me to back up a monte'd drive. Do i need to save that file as something other than a txt file in order to use it? Basically how do i utilize this file? I hate to ask a rediculous question like this, just dont flame me to hard.
|
also, does the killhdinitrd method suport a 4.0x OS? I am running 4.0x on my DVR39.
Thanks, Linda |
Quote:
PlainBill |
im not finding a straight forward answer to my questions (probably because i shouldnt expect one..:)). Anywhoo, i still dont understand how killhdinitrd will help me to backup and expand my drive out to 120GB. I was going to try the RonnyThunder version of MFSTools, but its a text file, and im not sure how to use that to help me, i was expectiong an ISO to burn to CD like the other version of MFSTool. Not trying to be a pain, but my eyes are hurting from reading so much. maybe i should take a break for the evening. Can someone help a chick out?
Thanks, linda |
It's simple, really. mfstools (and thus, mfsbackup) willy only backup your _active_ partitions. Not your inactive ones.
But if you're in a monte setup like the one the Sleeper CD does, then your active partition doesn't actually have anything in it -- it's just a there to pass the PROM check. It's your inactive partition that has your real hacks, config files, etc. If you do an mfsbackup/restore on a Sleeper setup, you''ll end up with an unhacked system. killhdinitrd helps this because under this setup, your active partition is really your active partition. |
okay, that makes sense. So how do i use killhdinitrd to make MFSrestore copy ALL the partitions? Is that the right way to ask that? I am just trying to understand how to use killhdinitrd to help me make an image i can expand to a 120GB drive and keep my hacks intact. Or, use the RonnyThunder version of MFStools.....but like i said before, that was a txt file. I hate this part of the learning process where every question is stupid and redundant, but i dont know how else to do it. Sorry for the ignorance.
|
Er, it may be called .txt, but if you open it up, it'll be obvious it's not a .txt file. Prolly a .tar.gz file that just got named .tar.gz.txt so that the forum would allow it's posting. So...
mv mfstools.tar.gz.txt mfstools.tar.gz gunzip mfstools.tar.gz tar -xvf mfstools.tar Should extract it nicely. |
Quote:
First of all, a description of how a normal TiVo works. The hard drive contains 13 (or more) partitions, only 6 of them are important for this discussion. Partitions 2-3-4 are the first partition set; 2 is normally blank, 3 is kernel 1, 4 is root 1 Partitions 5-6-7 are the second partition set; 5 is normally blank, 6 is kernel 2, 7 is root 2 Partition 8 is swap space, 9 is var. MFS Tools is handling this properly. A TiVo boots by the prom checking the active kernel; if it hasn't been altered it loads it. The kernel checks the contents of root; if everything is correct, it starts loading software. When a TiVo gets a software update it loads it into the other partition set, then flips the boot parameters and bootpage. Since only one partition set is in use at any time, MFS Tools backs up and restores only one. When the kernel checks root, it will delete any extra files, and try to replace any files that have been altered. As Magua said, when a system is hacked both partition sets are used, AND the active one is actually the wrong one. In essence, on a Monte'd system the prom checks the active kernel, finds it hasn't been altered, and loads it. The '3.1U5' kernel has a flaw where it doesn't check the 'active' root completely. The contents of root have been altered so the 3.1U5 kernel then loads the 'real' kernel (in the 'inactive' partition set) without checking if it's been altered. The real kernel (in your case, one for 4.0.x software) has been altered so it doesn't check check the contents of the 'real' root (in the inactive partition set, of course). Study the three preceding paragraphs carefully, they will help you understand how we are going to improve your TiVo. Killhdinitrd is a utility which can modify SOME kernels so they past the integrity test, but have been modified so they don't check the contents of the root. Note that that is exactly what we were doing with Monte, but this way is simpler, quicker, AND eliminates the two partition set problem. Next we will go through a slightly abbreviated procedure on using killhdinitrd. I suggest you use the PTV Upgrades LBA-48 cd. It boots a Linux distro that has all the utilities you need AND has killhdinitrd kernels. Alernatively, you can copy killhdinitrd and a virgin kernel to a FAT32 drive. Mount the hard drive as Secondary master, boot from the CD. At the command prompt mount the fat32 drive and verify the files you need are there. For the next steps, anything in [] is a comment. [Now check the boot (kernel) partition.] bootpage -p /dev/hdc [It will return a long string. Look for the portion that says 'root=/dev/hdax'. X will be either 4 or 7. If it's 7, 4 is the 'real' root, 3 is the 'real' kernel. If it's 4, 7 is the real root, 6 is the 'real' kernel.] [Use the zczt and dd commands to extract the killhdinitrd kernel and copy it to the 'real' kernel partition] zcat /cdrom/s2_kernels/4.0.1a/vmlinux.px.gz | dd of=/dev/hdcy [y will be the number of the 'real' kernel, either 3 or 6] [flip the bootpage] bootpage -f -C /dev/hdc [reset the boot parameters] bootpage -P "root=/dev/hdaz upgradesoftware=false dsscon=true console=2,115200" -C /dev/hdc [z is the 'real' root]. [Double (or triple) check your commands, make sure everything makes sense, then put your drive in the TiVo and give it a whirl.] NOW you can use MFS Tools to backup and restore the drive. PlainBill |
Plainbill, i admire your patience with me and much appreciate it. I will read over this more than a few times, and i wont post anymore questions tonight. Thanks for helping me to understand a little better, i may post some more questions tommorow (:)), but for tonight i will try to digest this new info. Thanks a bunch,
Linda |
okay, one follow-up before i start tearing into this thing. I did a dd copy of the entire drive, to a second 40GB drive so i can put my original on the shelf for the time being. Now, in the files section, i downloaded the "PTV Upgrade's LBA48 cd" this had the 4.0.1a kernal on it and the kernal already has killhdinitrd applied to it. So i can assume i do not need to execute this command from your step by step......
[killhdinitrd the new kernel] /path/to/file/killhdinitrd /dev/hdcy [y is the same as it was above]....correct? I can simply copy the already killhdinitrd'd kernal to the correct partition right? Secondly, (enter my ignorance)....if i am already running a 4.0.1a kernal (i assume i am)....why cant i use the one already in my TIVO? Why do i need to use a different one? Thanks for the step by step....its starting to get a lot clearer now..:). |
Quote:
Quote:
Quote:
PlainBill |
Quote:
zcat /path/to/vmlinux.px.gz | dd of=/dev/hdcy [y will be the number of the 'real' kernel, either 3 or 6] Quote:
The stock kernels, as shipped by TiVo, have extra security checks that "undo" any hacks on your tivo. These are part of the "initrd": a ramdisk image that loads and runs before anything else on the disk runs. The point of killhdinitrd is to remove this initrd so the security checks aren't done. The tricky part is that the kernel is "signed" and the PROM does a signature check before booting the kernel. The magic of killhdinitrd is that it can eliminate the initrd without disturbing the signature check. It only works with a few TiVo kernels, and it won't work on the stock 4.0.1b kernel. Luckily, the 4.0.1a kernel is essentially identical: the initrd changed, but not the kernel itself. [Edit: oops. PlainBill answered while I was writing my reply. Sorry to be redundant.] |
Quote:
Quote:
Quote:
Thanks Bill, Linda |
Quote:
Thanks for the input - especially the syntax for uncompressing the kernel. I've found that when two people express the same concept the often do it in a slightly different way. The combination usually makes it clearer. PlainBill |
Great! now i f i could just get away from this stupid office and start testing..:)
Thanks Guys, Linda |
okay, stll brushing up on my linux.......this has me stumped...
dd if=/path/to/kernel/vmlinux.px of=/dev/hdcy [y will be the number of the 'real' kernel, either 3 or 6 I did my .....bootpage -p /dev/hdc.....and it came up 7 so my real root is 4 and my kernal is 3. Now, when i try to enter my path to the uncompessed kernal......dd if=/dev/hda1/c/vmlinux.px | of=dev/hdc3 I get errors on the line....no such file found...etc. I tried a few varients and i would get diffferent errors. I know the file is in C drive on the master primary IDE....what gives? |
Try this command line:
dd if=/dev/hda1/c/vmlinux.px of=dev/hdc3 |
Quote:
Code:
zcat /cdrom/s2_kernels/4.0.1a/vmlinux.px.gz | dd of=/dev/hdc3.link |
Quote:
You have to mount the drive: mkdir /cdrive [make a mount point] mount /dev/hda1 /cdrive [mount the cdrive] dd if=/cdrive/c/vmlinux.px of=/dev/hdc3 [copy the file. This assumes it is in the c directory on the C: drive] PlainBill |
thanks for the reply guys, I might seem slow to respond, but im trying to read up on the LINUX switches and commands before i start messing my drives up. I got the GSOB last night on the hard drive that i did a "dd" of so i let it sit for a while and restore itself while i did some reading and searching. You would have been proud of me....i was ready to jump on here and start crying about the GSOB, but after a few searches, i realized it wasnt a real big deal and that it would most likely fix itself, and it did :). So thats where i am now, i have a good copy (40GB) of my original drive to use for testing, i know what my real root and kernal are, and im trying to soak up some LINUX commands so i can better understand what im doing here. Just to clearify a few things, i pulled the compressed 4.0.1a kernal (vmlinux_.gz) off of the cd and put it in my "c" drive, i also uncompressed it with "WINRAR", "vmlinux.px", and placed that on my "C" drive.....all before booting up with the LINUX CD. So i have both files (compressed and uncompressed) on my "C" drive, both with killhdinitrd already applied to it. Now i need to better understand my commands and im off for some more testing. My goal is to have this thing completed by Sunday.
Thanks for all the help guys, keep pushing me Linda |
Quote:
|
Quote:
Thanks for the input. I'm going to update my procedure. On reflection, it seems silly NOT to use the PTV Upgrade cd; it's got the utilities, there is no need to mount any drives, etc. The only downside is it has a 'broken' version of bootpage (at least relative to the version on the TiVo); but I'm not aware of any boot cd that has a good version. Linda, please note that Jamie's version will be quicker and easier; I'm updating the procedure, and correcting a typo (in the discussion I wrote 'root', but meant 'kernel'). Also, I just realised there might be an easier way to do this. Do you have acces to the TiVo via a network? PlainBill |
why does it keep telling me "I Must Specify The File System Type"?
mkdir /cdrive mount /dev/hda1 /cdrive ::error:: mount: You Must Specify The File System Type |
Quote:
[edit: add 4th option that turned out to be the problem.] |
Quote:
mount -t vfat /dev/hda1 /cdrive (I didn't say my directions were perfect) :( PlainBill |
not to take any glory from you Bill, but i had just found that syntax on a LINUX page....and it worked..:)
is this right? bootpage -P "root=/dev/hdaz upgradesoftware=false dsscon=true console=2,115200" -C /dev/hdc [z is the 'real' root]. shouldn't that be hdcz instead of hdaz? |
Quote:
Quote:
-C /dev/hdc tells bootpage where to write the string NOW. Since it's secondary master, the drive is /dev/hdc PlainBill |
well, i got all the way through it and it all seemed to work fine. I put the drive back in and got the GSOD again. Not sure why. All i can think of is i tried to "umount -f -a -r" my drives and got an error, so i cntrl-alt-del and let it shut down. I will wait it out and see how we do. Worse come to worse....i start over again..:).
|
okay, its back up now....GSOD is gone. Seems to be fully functional. Now i am going to try to use MFSTools to do a backup of the drive and write it to a 120GB drive. Look at me go :). I might have it done before Sunday!
|
this is starting to get really aggrivating now. Its one thing to get hung up on commands.....but this "specifying a file system type" crap is erking me. I finally got my drive killhdinitrd'd and i want to try to expand it to a 120GB now but i cant execute any commands without getting errors.
Code:
#/ mkdir /mnt/dos |
Quote:
mkdir dos mount /dev/hda1 /dos This worked. Unmounting it, then mkdir cdrive mount /dev/hda1 /cdrive also worked. Checking with mount Showed the mounted drives; the file system type for fat32 is vfat. The last time I had that much grief it was a bad cdrom drive. Or maybe one of the gurus can point out the problem. Alternative process: Hook the source drive to secondary master. Hook the target drive to primary master. Use this command: mfsbackup -Tao - /dev/hdc | mfsrestore -s 127 -xzpi - /dev/hda This will copy the entire drive, including recordings. PlainBill |
this solved my "filesystem errors"
Code:
mke2fs /dev/hda1Im now in the process of backing up and restoring.....time will tell |
okay, call Guiness Book cause i did it..:). I didnt even have to use MFSAdd. I killhdinitrd'd my drive, copied the image, restored it to a 120GB drive and it shows 105 hours available in the setup screen. Should i still use MFSAdd, or is it okay? I would like to thanks everyone who helped me do this, especially Bill and Jamie. Of course the fun does not end here, i will be expanding my knowledge for sure. My next goal will be to convert moms hdvr2 to 4.0x software with HMO and goodies. This will probably be a much larger hurdle im sure. Can someone point me in the right direction to get that one started? I will rest for a day or two and do some reading. This weekend i will begin my next project. Thanks again guys..:)
Linda |
Quote:
IIRC, you were restoring the image using 'mfsrestore -s 127 -xzpi .... This will expand the image, no need to do any more to get the last few bytes. Putting 4.0 on your mother's HDVR2 can be as easy as restoring your image to a new 120 Gig hard drive, popping it in the HDVR2 and running 51killer. Or you can download a 4.0.1b-02 image from emule, restore that, and do all the hacks yourself. PlainBill |
| All times are GMT -4. The time now is 11:08 PM. |
Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
Copyright 2000-2008 © dealdatabase.com.