# How to revive a fried drive with dd_rescue



## PortlandPaw

{Please see the update of this post here.}

I had to do a considerable amount of searching and expermentation to get dd_rescue to work, so I thought it would be worth a "how-to" thread.

dd_rescue has the ability to copy almost everything off a damaged hard drive relatively quickly. There is a helper utility (dd_rhelp) to assist in the process, but I haven't tried that yet. Hope I don't have to. dd_rescue requires a linux platform. Being a non-linux person (I know, I'm thinking of converting) I tried with a couple of the standard CD boot disks (Jenkins, Keegan) but they didn't possess the necessary libraries. So I decided to do it with a Knoppix boot.

So here are the steps:
1. Download the Knoppix ISO and burn a CD from it. Available from here.

2. Download the .tar.gz file of dd_rescue from here and save it to a floppy in your A:\ drive.

3. Leave the floppy in A:\ and set your computer to boot from the CD drive. Configure your hard drives appropriately. Be very careful to never boot into Windows with TiVo drives attached! Boot only into the Knoppix CD.

4. When the welcome screen comes on, enter "knoppix 2 dma" at the bottom and hit enter. This bypasses all the graphics, enables access to the devices (which I couldn't do under the GUI), and enables DMA on all drives. Very important for speed.

5. Enter "cd /mnt/floppy" and "tar =xwzf dd_rescue-0.2.tar.gz."

6. Enter "cd dd_rescue"

7. Enter "dd_rescue -A -v /dev/hd{old} /dev/hd{new}. For the truly uninitiated:
/dev/hda is Primary Master drive
/dev/hdb is Primary Slave drive
/dev/hdc is Secondary Master drive
/dev/hdd is Secondary Slave drive

That's it. The copying should go very quickly until it hits a bad sector and then it will slow down to take smaller chunks of data. People have reported very good results with this technique. When I replaced a pair of Maxtor 120s with new Seagates (at $49 each after rebates at Best Buy -- my good luck for the week), dd_rescue got up to about 115 gig when it reported there was no more room on the target drive. Scared me, but apparently didn't hurt the process, as the TiVo booted up normally. _{later edit -- turned out this was a problem -- the geometry of the drives should be identical (or at least the target drive larger) or TiVo is going to have trouble finding blocks of data}_ Of course, it re-booted after three minutes, just as it did before I replaced the drives, so I did all this for nothing. At least I learned how to mirror my drives.

BlankMan has done quite a bit of research into the intricacies of dd_rescue and they may be found here. Information about dd_rhelp is also in this thread and here.

Hope this helps people save their favorite Olympic moments!


----------



## Robert S

Isn't dd_rescue already on the Knoppix CD?

Knoppix is a very big download (although it's a very easy way to get some Linux experience - it doesn't involve modifying your PC by installing stuff on the hard drive, everything runs from the CD). There are a lot of 'live' Linux boot CD's, many of which are much smaller than Knoppix.

I don't know which ones have dd_rescue, but I suspect at least some of the discs in the 'rescue' category will have it.

A bit more research reveals it's definitely on RIP, which is a 25Mb download.


----------



## PortlandPaw

I looked for dd_rescue on my knoppix distro and if it's there, I couldn't find it. I played around last night with creating a floppy boot disk on which I could put dd_rescue, but the results were lacking. I'm sure improvements can be made to my method but, in my case, it was "get the job done!"

Thank you, Robert S, I found RIP and will investigate how that works and report back here. I'd rather be ready the next time instead of thrashing about.


----------



## PortlandPaw

{This is an updated version of my first post to indicate a more efficient way to do this}

I had to do a considerable amount of searching and expermentation to get dd_rescue to work, so I thought it would be worth a "how-to" thread.

dd_rescue has the ability to copy almost everything off a damaged hard drive relatively quickly. There is a helper utility (dd_rhelp) to assist in the process, but I haven't tried that yet. Hope I don't have to. dd_rescue requires a linux platform. Being a non-linux person (I know, I'm thinking of converting) I tried with a couple of the standard CD boot disks (Jenkins, Keegan) but they didn't possess the necessary libraries. So on the advice of Robert S, I used the RIP (Rescue is Possible) CD.

So here are the steps:
1. Download the RIP ISO (currently named RIP-10.3.iso.bin) and burn a CD from it. Available from here. {EDIT (1/5/05) I'm told that this is now obsolete as most distributions of Knoppix have dd_rescue}

2. Set your computer to boot from the CD drive. Configure your hard drives appropriately. Be very careful to never boot into Windows with TiVo drives attached! Boot only into the RIP CD.

3. When the welcome screen comes on, select "Boot Linux rescue system [skip keymap prompt]" then login as "root."

4. Enter "cd /usr/bin"

5. Enter "dd_rescue -B 1b -b 2M -A -v -l /var/dd_rescue.log /dev/hd{old} /dev/hd{new} ." For the truly uninitiated:
/dev/hda is Primary Master drive
/dev/hdb is Primary Slave drive
/dev/hdc is Secondary Master drive
/dev/hdd is Secondary Slave drive

6. The log file should be gzip'd and copied to a floppy before rebooting, as the /var directory will go away.

That's it. The copying should go very quickly until it hits a bad sector and then it will slow down to take smaller chunks of data. People have reported very good results with this technique. When I used it dd_rescue got up to about 115 gig when it reported there was no more room on the target drive. Scared me, but apparently didn't hurt the process, as the TiVo booted up normally. _{later edit -- turned out this was a problem -- the geometry of the drives should be identical (or at least the target drive larger) or TiVo is going to have trouble finding blocks of data}_

BlankMan has done quite a bit of research into the intricacies of dd_rescue and they may be found here. Information about dd_rhelp is also in this thread and here.


----------



## BlankMan

You've excluded the use of one of the very important features of dd_rescue which allows it to copy data faster and that is the use of the -b and -B parameters.

Although -B has a default of 512 which is what you want so leaving it out is ok (I'm not one that relies on default values and always includes them in the command line because a new release can change them while you're thinking they remain the same, hate surprises like that), but -b defaults to 16384 which is too small. Setting it to 2M utilizes the cache on most hard disk thus improving performance. Setting it higher then 2M, say 4M, caused problems in some instances so 2M is a pretty safe bet.

BTW Good job.

_<Added>_

P.S. I like log files too and you left that parameter out.


----------



## PortlandPaw

Thank you for the info especially on the -b parameter. Remember that I'm booting from a CD in a Windows box with an NTFS drive (I probably didn't mention that) -- how could I write to a log file under those conditions?


----------



## BlankMan

> _Originally posted by PortlandPaw _
> *Thank you for the info especially on the -b parameter. Remember that I'm booting from a CD in a Windows box with an NTFS drive (I probably didn't mention that) -- how could I write to a log file under those conditions? *


 To /var or someplace that has room then gzip it and put it on a floppy before you reboot and its gone.

_<Added>_

I should mention, even though you are booted from a CD and maybe think you cannot write because a CD is read only, you are not running off the CD like you do when you normally boot off a disk in Windoze or Linux. You are actually running off a pseudo disk (for lack of a better term) that is actually a memory disk and acts, for all practical purposes like a real disk, except for the fact, Poof! Gone! when you reboot. If you knew this, excuse me.


----------



## PortlandPaw

No, I didn't know that. Actually, I should have, because I've noticed the creation of a ramdisk during bootup and I've been able to create mount points in /mnt, which obviously would have been impossible otherwise. Thanks, I'm always learning. That's what makes this fun.


----------



## BlankMan

If the intent of this is to be a HowTo you might want to add the -B and -b parameters to the OP. If you don't use the -b you are not getting the full advantage of using dd_rescue.


----------



## PortlandPaw

Right you are. I'll edit the earlier post.


----------



## BlankMan

I noticed you put 4M in the example, did you use 4M and did it work? I mentioned that 2M was a safer bet, I had some segmentation fault problems with dd_rescue when attempting to use 4M.

Also, if the drive only has a 2M cache and you request a 4M read you're going to be waiting on the disk.

So all in all 2M is a better recommendation for general usage, power users that understand UNIX/Linux, dd_rescue, and know the size of the cache on the source and destination drives can adjust it as they see fit.

And I noticed you updated it in the 4th post and not the first, I know you reference the 4th post in the 1st but chances are people in a hurry may miss the difference(s).


----------



## PortlandPaw

My mistake on the 4M -- I meant 2M. I left the first post the way it was for the sake of documenting Knoppix with the hope that someone with this problem would have the persistence to read the referenced post as well. Thanks for the catch.


----------



## BlankMan

Betcha didn't think HowTo's would be so much fun eh?


----------



## patyous

How long is this process suppossed to take? Mine has been going for 2 days so far on a 120 gig hd?


----------



## PortlandPaw

I'd say your patience exceeds your success.


----------



## drdarren

i tried following the commands listed but when i reach the end of the line, instead of going to the next line, it begins to overright the original line. as i am new to linux, what should i be doing to go to the next line.


----------



## SparkleMotion

> _Originally posted by BlankMan _
> *P.S. I like log files too and you left that parameter out.  *


How vital are the log files? I don't have a working floppy drive in my box...can I save to a FAT32-formatted thumb drive?


----------



## Robert S

drdarren: It sounds like your console isn't set up quite right. It's just an aesthetic problem, though - the command is being accepted correct. (You can try pressing Ctrl-L to clear the screen).

SM: The log files aren't a vital part of the copy process, they just tell you what happened. The only real test is when the copied drive goes into the TiVo.

Knoppix has pretty good USB support, so you may well be able to access a USB drive. I've no idea which device node you'd mount, though.

If you write the log file to somewhere in one of the RAM drives (/tmp or /var/tmp), you can review the log with more or vi before you switch off the machine.


----------



## tivoupgrade

Folks,

At the suggestion of Robert S, I've looked into, and made an attempt, to incorporate dd_rescue and dd_rhelp. Not as trivial as it initially seemed, there were a bunch of libraries that appeared to be missing.

In any case, I think I've identified and located the missing libraries, and dd_* binaries and incorporated them into a test version of the CD discussed here but before I release it to the general public, those who play with these tools, please give things a test and let me know what is broken, and hopefully what needs to be done to fix it.

Thanks!

Lou

PTVupgrade LBA48 3.01 (beta) here


----------



## lawnmowerdeth

Hi,
At the request of tivoupgrade, I'm posting this here.
I'm trying to rescue an HDVR2 drive with the beta CD of PTVupgrade, and I'm having some problems with dd_rescue.
I can't use the -B switch or the -A switch (unknown command error), and -b 2M gives a segmentation fault. Basically I am only able to use: 
dd_rescue -v /dev/hda /dev/hdb. 
I'm trying it with dd_rescue -v -b 2048 /dev/hda /dev/hdb, hopefully that will increase the speed a bit. (Is that the same as -b 2M?)

Anyway, fingers crossed that this will save the drive. Hopefully tomorrow afternoon sometime I'll be able to post results.

Sean


----------



## lawnmowerdeth

Thought I'd give an update. Even with the problems with the command options, the dd_rescue worked fine, with all recordings intact.

Now here's the freaky part: Afterward, the MFSinfo command resulted in this:

Primary volume header corrupt, trying backup.
Secondary volume header corrupt, giving up.
mfs_load_volume_header: bad checksum
segmentation fault.

So I was just assuming it wasn't going to boot at all again. But somehow it did! Something on my failing drive must have been really messed up.

Sean


----------



## bobotech

I am trying to copy my flakey 30 gig drive to a 40 gig drive from my series 1 philips unit.

The comptuer I am using only has the orginal tivo 30 gig drive and my spare 40 gig drive. I don't know if it matters, but my 40 gig drive was used in windows with an ntfs partition.

I then deleted the partition from within windows and then removed the exisiting drive.

I then plugged in the orginal 30 gigger as the primary master and the new ex-windows drive as the primary slave drive.

I then booted to the rip cd and followed the instructions.

It doesn't appear to do anything but it says this:

I copied the log file to one of my window's shares, i will post it at the end of this post.

As soon as I hit enter after I type in the command I get a bunch of stuff then it drops me back to the # prompt.

I am not really sure what is going on.

This is the log file i get: (copied and pasted from it):



Code:


dd_rescue: (warning): setting hardbs from -512 to softbs -2097152!
dd_rescue: (fatal): you're crazy to set you block size to -2097152!
dd_rescue: (info): about to transfer 0.0 kBytes from /dev/hda to /dev/hdb
dd_rescue: (info): blocksizes: soft 2097152, hard 512
dd_rescue: (info): starting positions: in 0.0k, out 0.0k
dd_rescue: (info): Logfile: /var/dd_rescue.log, Maxerr: 0
dd_rescue: (info): Reverse: no , Trunc: no , interactive: no 
dd_rescue: (info): abort on Write errs: no , spArse write: never
dd_rescue: (info): about to transfer 0.0 kBytes from /dev/hda to /dev/hdb
dd_rescue: (info): about to transfer 0.0 kBytes from /dev/hda to /dev/hdb
dd_rescue: (info): blocksizes: soft 2097152, hard 512
dd_rescue: (info): blocksizes: soft 2097152, hard 512
dd_rescue: (info): starting positions: in 0.0k, out 0.0k
dd_rescue: (info): starting positions: in 0.0k, out 0.0k
dd_rescue: (info): Logfile: /var/dd_rescue.log, Maxerr: 0
dd_rescue: (info): Logfile: /var/dd_rescue.log, Maxerr: 0
dd_rescue: (info): Reverse: no , Trunc: no , interactive: no 
dd_rescue: (info): Reverse: no , Trunc: no , interactive: no 
dd_rescue: (info): abort on Write errs: no , spArse write: never
dd_rescue: (info): abort on Write errs: no , spArse write: never
dd_rescue: (info): ipos:      8192.0k, opos:      8192.0k, xferd:      8192.0k
                   errs:      0, errxfer:         0.0k, succxfer:      8192.0k
             +curr.rate:    12201kB/s, avg.rate:    12201kB/s, avg.load: 11.9%
dd_rescue: (info): /dev/hda (10000.0k): EOF
Summary for /dev/hda -> /dev/hdb:
dd_rescue: (info): ipos:     10000.0k, opos:     10000.0k, xferd:     10000.0k
                   errs:      0, errxfer:         0.0k, succxfer:     10000.0k
             +curr.rate:    30497kB/s, avg.rate:    13686kB/s, avg.load: 12.3%

Any help would be greatly appreicated. (the drives are being recognized properly by the bios.) I'm getting quite fustrated with this whole process, LOL. Also I do have a spare 4 gig drive that I would not mind using as a backup for my Tivo drive if I can make use of that.

Thanks...


----------



## Robert S

_10000.0k, xferd_

Is it just me, or is that a locked drive?

I asked Lou to put dd_rescue on his LBA-48 upgrade CD. That one should unlock the drive (as long as it's a Quantum), which might make things easier.


----------



## bobotech

Well you are right, its a locked drive. I didn't bother to actually go into the bios and see what it showed. I then went into the bios and sure enough, it detects it as a 10megabyte drive. How the heck does tivo fit 30 hours worth of recording into a 10 meg drive? (just kidding).

<later>

I unlocked the drive (found the utilitiy someplace).

I then went ahead and did the copy. It worked perfectly this time. It found 16 errors on the orginal drive.

I then put the 40 into my tivo and booted it up.

It booted perfectly and smoothly.

But (always a but), it only shows 32 hours in the system information. Did I forget to do something?

I am going to now make a backup of the tivo drive to a spare 4 gig fat32 drive I have.

I hate being such a nag with all these questions but I really dont' want to mess anything up.


----------



## Robert S

_Did I forget to do something?_

mfsadd?


----------



## bobotech

Well I went ahead and did the mfsadd -x /dev/hda (it was the only drive in my test computer) and that went fine.

I then put the drive back into the tivo and powered it up. I got the GSOD. Hmmmm. 

Well anyway, i'm going to let it sit til morning and see if it recovers (if i put my ear up to the tivo, i can hear the drive chugging away).

One more thing, since my 30 gig drive only came up with 16 errors, what test do I use with the powermax utility that I downloaded from Maxtor's website to hopefully map out those bad sectors? I am currently doing the advanced test but I'm not sure if I am supposed to do the full low level format.


----------



## bobotech

Well it is working fine. I have tested everything and it all seems to be working fine.

No more stuttering or freeezing that occured with the old drive. A full 40 gigs is now available.

I'm happy and I am now going to go ahead and setup a tivo acct for real.

Thanks for the help.


----------



## Jnegri

Hi,
I have a 2 year old TIVO that was working fine and then one night it turned itself off. After 5 - 10 minutes I turned it back on and after several attempts to restart it finally started. Two days later it went off again and has not regained conciousness. The green light is on in the front and it flickers when the buttons on the remote are pushed but I get no video output whatsoever. I broke down and bought a new TIVO. Now I want to get all of the recorded stuff off of the old hard drive and I am looking for someone to do it for me. Anybody good at repairing or retreiving saved programs?

John


----------



## tdogboy

I used the OP's corrected (third post) instructions to get the data off the failing drive out of my Sony SVR-2000 (Quantum 30GB drive) and my TiVo is working great now!

I thought the drive was going bad, so in early September, I did the mfsrestore/mfsbackup to two new 200 GB drives and everything worked OK. The TiVo would occasionally freeze (meaning I'd turn on the TV and the picture would be frozen on a TV show and nothing I pushed on the remote would do anything on the TiVo), but cycling the power would bring it back up. Well, we got to the point where after cycling the power, we would just get the "Powering up . . ." screen and nothing else.

dd_restore read the drive and we're up and running now! I'm keeping a reliable copy of the 30GB drive around for a few months until I'm sure it's working properly. Then it's going in wifey's computer as a Christmas present.


----------



## PortlandPaw

> _Originally posted by tdogboy _
> *Then it's going in wifey's computer as a Christmas present. *


That will thrill her.

Trust me, do that as a weekend favor and get her something she really wants for Christmas. Your marriage will be far more secure. Trust me.

You get more than technical assistance in the TiVo Community Forum!


----------



## tivoupgrade

> _Originally posted by PortlandPaw _
> *That will thrill her.
> 
> Trust me, do that as a weekend favor and get her something she really wants for Christmas. Your marriage will be far more secure. Trust me.
> 
> You get more than technical assistance in the TiVo Community Forum! *


Perhaps a bowling ball with your name on it? (Homer Simpson tried that and it didn't work...)


----------



## mbkall

> _Originally posted by tivoupgrade _
> *Folks,
> 
> At the suggestion of Robert S, I've looked into, and made an attempt, to incorporate dd_rescue and dd_rhelp. Not as trivial as it initially seemed, there were a bunch of libraries that appeared to be missing.
> 
> In any case, I think I've identified and located the missing libraries, and dd_* binaries and incorporated them into a test version of the CD discussed here but before I release it to the general public, those who play with these tools, please give things a test and let me know what is broken, and hopefully what needs to be done to fix it.
> 
> Thanks!
> 
> Lou
> 
> PTVupgrade LBA48 3.01 (beta) *


I had the same troubles as "lawnmowerdeth" had with dd_rescue. I used the PTVupgrade beta CD-Rom mentioned above. (For whatever reason, I could not get my computer to recognize the RIP iso CD-Rom...)

dd_rescue did not recognize "-B", "-A", or "-l". It gave a segmentation fault with "-b 2M". I don't know if this means the CD is missing information, or if I'm doing something wrong. (Which is a distict possibility.)

I ended up using: "dd_rescue -v /dev/hdb /dev/hdd". It's slowwwwly copying, about 10,000 kiB/s / second.

Trying to get the programs from my old Tivo B drive, which has some bad sectors, onto the new Maxtor warranty replacement drive, for my SVR-2000.


----------



## gwgw45

> _Originally posted by PortlandPaw _
> *{This is an updated version of my first post to indicate a more efficient way to do this}
> *


Am currently trying this (thanks for taking to trouble to publish and update the guide) it has been running for 5 hours and is 35% through a 120 gig HDD. However, apart from the first 5 minutes when there was activity on ther PC HDD light, it now no longer flashes.

What I have is contantly scrolling text with details of transfer etc but it is also saying

"(warning): /dev/hda xxxxxxxx.xk input/output error? (xxxxxxxx.x being an updating figure reprenenting gig processed) Am I wasting my time and should I stop it, or is this normal?

Thakns again
Gareth


----------



## paulfitz

I can't believe how easy it was to use the RIP CD and dd_rescue. I started having the freezing and rebooting issues about 2 weeks ago. After an exhausted search here, I figured the only way to fix it was replace the less than 6 mo old Matrox 160 with a new WD 160.

I ran dd_rescue and came back after 18 hours and it had finished. I put the new drive back into the Tivo and it booted right up, all programs were there, all season passes, what a miracle!!!

I used Hinsdale's How-To with MFSTools 2 to originally upgrade from the 40 to the 160 and I couldn't believe how easy that was also!

*Just wanted to say thanks to all who contributed here with such great information.*

:aul


----------



## PortlandPaw

> _Originally posted by gwgw45 _
> * Am I wasting my time and should I stop it, or is this normal?
> 
> Thakns again
> Gareth *


I had a similar situation. Different error but similar situation. You're probably wasting your time, but on the off chance you aren't I would say that the ten hours you'll have to wait to find out is worth the cost saved on a new drive.


----------



## gwgw45

> _Originally posted by PortlandPaw _
> *I had a similar situation. Different error but similar situation. You're probably wasting your time, but on the off chance you aren't I would say that the ten hours you'll have to wait to find out is worth the cost saved on a new drive. *


As it happens, it was a waste of time. However, thanks for the reply, it was worth a try

Gareth


----------



## Jeffb

First, let me thank all who have contributed to this thread, I've gone from hopeless to somewhat hopeful. 

I have an HDVR2 with Maxtor 40GB A drive (original) and added 120GB Samsung B drive from Weakness.
This weekend it became unresponsive, I pulled the plug and then got the GSOD. I would like to rescue the programming so I got a new Segate 120GB drive and proceeded to follow PortlandPaw's steps using dd_rescue.

Using the Maxtor utility, errors were found on the A drive. I used dd_rescue on the Maxtor along with new 120GB Seagate. dd_rescue finished and I reinstalled both drives (new Seagate 'A' and old Samsung 'B') into TiVo, powered up and GSOD. I unplugged and sighed. Then I remembered bobotech's post where he initally got the GSOD and then the unit recovered.

It's been about 4 hours and still on GSOD.

- How long should I let it attempt to repair itself?

- Is it possible that there is also a problem on the Samsung 'B' drive?

- Anything else to try?

- At what point do I cut my losses and do image restore?


----------



## Z'Loth

I just copied the my "A" drive in my DirecTiVo to another hard drive using Knoppix. Here are a few hints (mind you, the Knoppix CD I had available was Knoppix 3.04-May 17, 2004):
At the knoppix boot prompt, enter knoppix 2 vga=ext dma nousb nodhcp. This will start knoppix in text-only mode, use the text display rather than graphic (faster), use dma for faster drive access, and skip the checks for network and usb.
Once dd_rescue hits a bad block, it ended up resetting the IDE Bus, so that when it went back to large block copying, it was much slower. Note the location, then Control-C out. Shutdown and restart the computer. Then, add the following to the dd_rescue line: -s _xxxxxxx_k. This will restart the drive copying at that particular location.
Another option is -r. This will copy the drive from the end back to the beginning instead of beginning to end. I didn't find out about this until I finished copying. My scan of the hard drive indicated a problem at the 25% point, so if I applied the -r, it would have gone high-speed for most of the way, then slower speed if I wasn't around to reset the computer.
Hope that helps. I'm posting this up at DBSTalk with appropriate credit to TiVo Community.


----------



## Z'Loth

Just as an update... the replacement 160GB Samsung drive arrived last Monday second day air. It took about 75 minutes to do a dd_rescue copy from the 250GB drive back to the 160GB hard drive. I was using the latest version of the knoppix disk. Some notes:

1. There is no need to do a "cd /usr/bin".
2. dma is automatically activated. 
3. I got a "average" transfer rate of 35,000 Kb/s. Actual speed was faster, however, the occassional timeouts.


----------



## chernas

I'm not sure if I'm stirring up old issues, but I never saw this answered from the original post:



PortlandPaw said:


> {later edit -- turned out this was a problem -- the geometry of the drives should be identical (or at least the target drive larger) or TiVo is going to have trouble finding blocks of data}


I'm probably going to end up replacing my 2 120GB drives (with new ones) this week, and I'm expecting to run into this issue. Does anyone have any ideas to get around this and possibly still keep recordings?

C


----------



## ronsch

chernas said:


> I'm not sure if I'm stirring up old issues, but I never saw this answered from the original post:
> 
> I'm probably going to end up replacing my 2 120GB drives (with new ones) this week, and I'm expecting to run into this issue. Does anyone have any ideas to get around this and possibly still keep recordings?
> 
> C


Your best bet is to use the same brand as the current drives.


----------



## chernas

Thanks, I think that would probably be best too, but I don't have that option. At least I can't easily find my 2 original drives. I'm trying to get at solutions for my current problem. 2 120GB drives -> 2 120GB drives...

C


----------



## emp

I am trying to dd_rescue a 160GB drive with a 200GB drive (I know I'm only getting 137GB of usable space). dd_rescue seems to be not responding, it copied about 80GB and now its just stuck there and hasnt changed the screen for hours. The HD light is on but if I press enter it forwards to the next line but no command promt. There are no errors while copying, so I dont know why its seems like its hanging.
should I kill it and try to start it again? or is there some other solution?
...I'm using the RIP CD and my dd_rescue command looks like this:
dd_rescue -B 1b -b 2M -A -v -l /var/dd_rescue.log /dev/sda /dev/sdb
I have the drives pluged in to the SATA ports and am using a SATA to PATA adapter, is that causing a problem, should I try to boot the CD from the SATA adapter and have the HDs on the IDE channel?
one more thing is it says: "dd_rescue: (info): about to transfer 0.0 kBytes from /dev/sda to /dev/sdb"
is that normal for it to say 0.0k?


----------



## PortlandPaw

These tips came from SR712 and were shamelessly copied from the forum which cannot be named. It explains how to set DMA on the source and target drives and set 2M block size to optimize the speed of copy.



> Put another way, where and how do you enable DMA and 2M block size?


After you boot into Linux, before you run the dd command:



Code:


hdparm -d1 /dev/hda /dev/hdc

[If you have the drives as hda and hdc.]

Then, use dd command like this to enable 2M block sizes:


Code:


dd if=/dev/hda of=/dev/hdc bs=2M

...if your source drive is hda and your destination drive is hdc.


----------



## BlankMan

Why use dd??  In a dd_rescue thread? I'm appalled! 

His dd_rescue command line clearly shows he's using a 2M buffer so I see no advantage reverting back to dd. Well, I can't see any reason do ever revert back to dd...

Oh and just so everyone is aware that hdparm command will only work if DMA support is gen'd into the kernel.


----------



## PortlandPaw

If you find this information isn't helpful, by all means, don't use it.


----------



## BlankMan

PortlandPaw said:


> These tips came from SR712 and were shamelessly copied from the forum which cannot be named. It explains how to set DMA on the source and target drives and set 2M block size to optimize the speed of copy.
> 
> After you boot into Linux, before you run the dd command:
> 
> 
> 
> Code:
> 
> 
> hdparm -d1 /dev/hda /dev/hdc
> 
> [If you have the drives as hda and hdc.]
> 
> Then, use dd command like this to enable 2M block sizes:
> 
> 
> Code:
> 
> 
> dd if=/dev/hda of=/dev/hdc bs=2M
> 
> ...if your source drive is hda and your destination drive is hdc.





PortlandPaw said:


> If you find this information isn't helpful, by all means, don't use it.


Well my only concern is that you're cutting and pasting this stuff without any explanation or background on the commands and people that are not UNIX/Linux savoy are going to use them and they may not work. That is not helpful to people to who UNIX/Linux is completely unfamiliar. Some expect to use these commands verbatim and expect them to work as described, that is not always the case.

Case in point, the hdparm command you posted may not work for reasons I already stated which are not fully inclusive.

Second, the dd command you posted has pitfalls, one of which is no status reporting of progress which was one of the key factors that dd_rescue has over dd because people couldn't tell if dd was really doing anything. And second, a much BIGGER pitfall is with the 2M blocking size in your posted dd command every time dd encounters a bad spot you could lose in the transfer up to that 2M instead of what dd_rescue does i.e. fall back to the 512 byte blocking factor so you only lose 512 bytes (one sector) verses 2M. This could be critical and render the target disk unbootable depending where this occurs. Of course a 512 byte loss could do that also but with the blocking factor being 2M in the dd command verses 512 bytes for dd_rescue's -B option you're increasing the chance of that happening 4000 to 1. Not good odds in my book, I'd never take those odds.

This blocking factor fall back along with the status reporting that dd_rescue does were two of the reasons I started using dd_rescue instead of dd and did all the testing and bought it and my results to this forum. Going back and suggesting dd be used again is a step backwards IMO, there's nothing that indicates dd will work where dd_rescue won't or vise versa. If dd_rescue hangs dd will most likely hang too and the hang is more then likely due to a hard disk that is having a major problem.

Pretty arrogant comment to make, _then don't use them_, when we're trying to help others especially for people that may not be technical and understand the difference between dd and dd_rescue.


----------



## PortlandPaw

I post _only_ that which I believe to be helpful to people. If everybody here were to limit their posts to only that which they know to be 100% accurate and in language that 100% of the people could understand 100% of the time, it would be a very barren board, indeed.

I'm sorry if I've somehow offended your sensitivities or haven't risen to your level of quality. Makes me sorry I started this thread.


----------



## BlankMan

PortlandPaw said:


> I post _only_ that which I believe to be helpful to people. If everybody here were to limit their posts to only that which they know to be 100% accurate and in language that 100% of the people could understand 100% of the time, it would be a very barren board, indeed.
> 
> I'm sorry if I've somehow offended your sensitivities or haven't risen to your level of quality. Makes me sorry I started this thread.


Well...

Now that I think more about it, that dd command may not work at all on a source disk that has sectors that cannot be read. Without conv=noerror dd will stop at the point it encounters the first read error, and without conv=sync dd won't pad the 2M block so it is a 2M block when it writes it. If it were to read 10K into the 2M block and have a problem it would write 10k, then when it read the next 2M it would put it on the target disk right after that last 10K and now you're skewing the data on the target disk by that loss of 1.99M and that could be across partitions because dd is a physical sector copy. I'm not 100% sure of this not ever having a chance to test it but that's the way the man pages read. The only thing I'm not sure of is where dd picks up the start for read of the next 2M block from the source disk, right after the sector it couldn't read or at what would have been the end of that last 2M read block. If it's the end of the 2M read block, that's when things would get screwed up. Next time I have a failed disk I'm going to explore this so I know once and for all. Course that wouldn't really happen anyway because you don't have the conv=noerror so it would stop.

That dd command will only work on a source disk that does not have any read problems, which is an oxy moron because in most cases there would be no need to dd it in the first place. So, without conv=noerror,sync that dd command is useless in attempting to copy a source disk that has read problems.

So, how is a command that will not work on a failing disk helpful? But I should just shutup and not use it....



PortlandPaw said:


> Makes me sorry I started this thread.


Of that you shouldn't be. It's nice to have this info in a place where people can find it and of that you have done a good job. I was just concerned that someone would jump to the end of the thread and think that that dd command was now the command in fashion. Nothing personal. You did what I didn't have the time to do and that was to do this thread as a HowTo and IMO that was GREAT!


----------



## coldtoes

lawnmowerdeth said:


> Hi,
> I'm trying to rescue an HDVR2 drive with the beta CD of PTVupgrade, and I'm having some problems with dd_rescue.
> I can't use the -B switch or the -A switch (unknown command error), and -b 2M gives a segmentation fault. Basically I am only able to use:
> dd_rescue -v /dev/hda /dev/hdb.


I'm having the same issue with dd_rescue on the PTV CD. The switches listed in the help file are different from the version I was using with Knoppix. There's no -B, -A, or -l, for instance, and -r has a different function (not reverse). I wonder if this is a different flavor of dd_rescue? (Google turns up a Diaz version vs. the Garloff version, which I assume is what I was using before and what the posts here refer to?)

When it finishes running on my machine I will get the available parameters so folks can compare the two versions and perhaps make recommendations about which ones the folks using the PTV CD should choose.


----------



## coldtoes

Here are the parameters for the version of dd_rescue on the PTV Upgrade CD:


> *dd_rescue [options] infile outfile [badblocks_file]
> 
> -h display help and exit
> -V display version and exit
> -b hardware block size of input device, in bytes [default = 512]
> -c hardware cluster size; number of blocks to copy at a time [default = 128]
> -e exit if more than n error areas found [default = -1 = infinite]
> -i start position of input file [default = 0]
> -o start position of output file [defaul = ipos]
> -q quiet operation
> -r exit after max given retries (-1 = infinity) [default = 0]
> -s max size of data to be copied in bytes
> -t truncate output file
> -v verbose operation
> 
> If badblocks_file given, write to it the list of remaining bad blocks on exit. If badblocks_file exists, try to copy only the blocks listed in it.*


 Perhaps the dd_rescue experts can suggest the best configuration for this version. Obviously you want -v and the badblocks_file. If I'm understanding it correctly, -b correlates to -B and -c to -b, so I think you'd want -b 1b -c 2M. There doesn't seem to be a corollary for -A.


----------



## Mars

So Coldtoes,

Did you ever sucessfully copy over your drive using dd_rescue from the PTVupgrade disk, and if so what string of paramaters did you use?


----------



## Francesco

OK.

Another Maxtor 120 has failed on me, at 13 months of course. Turned on the TV to find it in a "Welcome! Powering up" loop.

After much crying (it *is* premiere week! ), decided to run out and get a drive and investigate my options. I had about 60 shows on there that were either about to be archived, or not yet watched.

Ended up getting a 200 GB WD (3-year warranty) to keep my options open. Decided to try dd_rescue and downloaded a Knoppix 3.9 Live CD. First I made a standard MFS_Tools 2.0 backup just to be safe.

I used the command as indicated in PP's updated post above, and it cruised along until hitting its first bad blocks at about 33 G. I let it go for a bit, then rebooted and invoked it again, this time to go in reverse. It flew along, transferring 45 G before the first errors. I went away for an hour and came back to find it was in good sectors again, so I rebooted and used the -s xxxxxxxxk flag to get it to start where it left off. I had to do this twice in all. I woke up this morning and the copy was complete, with a total of 1200K of errors. I figure my chances are good.

I popped the new 200 GB drive in the DSR6000 and booted up fine. I watched a bit of live TV and checked Now Playing to see that all my shows are there. I left for an appointment.

When I came home after a couple of hours, I was on a GSOD. I plugged in the Ethernet cable. After about 10 minutes, it tried to boot up. It gets through the CacheCard boot, to "Almost there..." then back to GSOD. This has repeated several times now in the hour I've been here.

Is TiVo trying to repair the null blocks, or is something else wrong? Should I let it keep cycling like this, or just give up on my recordings and SPs and just restore the MFS Tools image?


----------



## Francesco

Update: Came home from work, and it was still rebooting into a GSOD loop.

Someone in HH suggested I Kickstart, so I went to alt.org and looked at the codes. Tried a 58, it rebooted then went into GSOD for over an hour. Then BAM, TV! At first, I was getting errors in TiVoweb, and the UI was as slow as without CacheCard. I could not search or check the To Do list and so forth. Did a reboot and it all cleared up. Fast and full-featured! :up:


----------



## mjitkop

PortlandPaw, don't be sorry you started this thread! This thread just saved about 100 hours of programs for me! My 120GB Maxtor drive started to cause my HDVR2 to freeze so I knew that the drive was dying. I came to TCF and stumbled upon this thread. Thanks to you, PortlandPaw, I have my 100 hours back on a new Seagate drive. :up: 

Thank you very much!!!

The drive was badly injured, it took a long time for dd_rescue to perform its magic: more than 30 hours.  But hey, having my programs back: priceless.  

For the record, this is the second 120GB Maxtor drive that failed on me. This drive was a refurbished one I got as part of the warranty for the first one. It seems that Maxtor drives are causing a lot of problems for a lot of people, from the information I can gather here and there on TCF. Needless to say that I will never buy any Maxtor drives ever again! :down: 

BlankMan, I wish I had seen you thread about dd_rescue before I started restoring my failing drive with dd_recue because maybe it would have saved me a lot of time.

That said, whoever created dd_rescue is a genius! :up:


----------



## Robmorrow

Hi,

I just had an 80 gig drive fail and replacing it with a 200 gig drive. If I want to try to rescue the data on my old drive, and copy it over, do I need to update the new drive with the new kernel for large drive support over 137 gigs, before I do the copying from the old drive?

Thanks

Rob


----------



## tivoupgrade

Robmorrow said:


> Hi,
> 
> I just had an 80 gig drive fail and replacing it with a 200 gig drive. If I want to try to rescue the data on my old drive, and copy it over, do I need to update the new drive with the new kernel for large drive support over 137 gigs, before I do the copying from the old drive?
> 
> Thanks
> 
> Rob


After... and note that it won't make a difference if you don't do an mfsadd after you've done your rescue...


----------



## Robmorrow

Hi,

I am confused now. Do I just need to run CopyKern? Is mfsadd only for adding two drives in a Tivo machine? I see some posts referencing to use that for expanding the drive as well bigger than 137 gigs. Also, on the sticky, I see you mentioning the term "Bless". What does that mean?


FYI, I have a series 2 Toshiba SD-H400 Tivo machine.

Rob


----------



## Francesco

I just downloaded the Universal Boot CD v.11 (I have a few ongoing projects). Does this version carry the dd_rescue tool? And is it the version of dd_rescue with the same switches as on the Live Linux distributions?


----------



## Francesco

Crap. No errors on the drive. And a kickstart isn't working either - tried 58 and now 57.


----------



## IamMBS

I just used dd_rescue per the instructions listed in Post #3 with a Knoppix cd. I have a series 1 Sony svr-2000 unit that was previously upgraded to 80GB AND 120GB drives. I used dd_rescue on both drives and copied the old drives to the new drives. The new drives are both 160GB drives. Everything went fine during the copy process with no errors (surprised me) on either drive. I put the new drives in the Tivo and the Tivo doesn't get past the first "Your Tivo is powering up" screen. I put the old drives in and everything is fine.

It's pretty apparent that the data wasn't successfully transferred to the new drives. Does anyone have any ideas of what might be wrong? I've checked the jumpers and even reversed the MAster & Slave to make sure I didn't get the drives mixed up.

Also, on another note, I've read that I can't install the drives from my Tivo into another identical Tivo due to the Serial Number of the hardware not matching the serial number stored on the Drive. Is this true for all Tivo's such as the series 1 svr-2000 or only specific to certain Tivo models such as series 2 or other brands. I'd really like to have a complete backup (hardware and software) of my Tivo setup because I have about 100 hours of saved programs. 

Thanks for any help.


----------



## WillowTheDog

Hey, I just wanted to say thanks to PortlandPaw and everyone else who contributed to this thread. I used the techniques listed here to retrieve data from a very dead hard drive that my wife had been using to back up important files from her Mac laptop. Not being a linux guy, I never would have thought to use dd_rescue. I tried commercial utilities like DiskWarrior, but had no success. I thought I was going to have to send the drive to a data recovery company and pay through the nose. But then I stumbled upon this thread one morning while doing my daily Tivo reading. What good luck!

You guys saved me hundreds of dollars. Thank you!

PS - Sorry for the non-Tivo post, but I wanted to throw my dd_rescue success story into the mix.


----------



## IamMBS

Anyone have any ideas for post #61 above?

Thanks for any help


----------



## videoi

Hey Gang -

Well, the Maxtor 300GB in my HD DirecTivo died (2nd drive). Had a lot of programs stored, so figured I'd try to revive it. Ran Spinrite. Got to about 48% complete, and then basically stopped. Killed Spinrite, figured I'd just try dd_rescue. Using the disk from ptvupgrade, I booted into linux, and tried dd_rescue - it was going along ok for a few hours, and then (also) just seemed to stop. I couldn't ecape out of it, so (knowing I was taking a risk with a Unix-variant), I rebooted. Upon reboot, the machine is not recognizing EITHEr the old or the new drives.

Any suggestions??!?!?

Thanks

Ira


----------



## ExpectLess

I thought I'd add to the chorus of thanks for the old original post. Had a failing 80GB factory drive from my SVR-3000, Maxtor's PowerMax tool confirmed that it was on its way out. Downloaded RIP, ran dd_recscue to a 160GB drive I had sitting around, and it's back! I can't use the extra capacity, but I think I'll avoid worrying about that and just live with my 200 hours for now.

Re: post #61, what happens if you run dd_rescue on one of the two old drives at a time? Meaning, take out your "B" drive, copy it to one of the 160GB drives, put the old "A" and the new "B" into TiVo. If that works, copy the "A" drive the same way. Not a whole lot of help, but it's all I've got.

-Scott


----------



## rduske

About 2 years ago, I upgraded my 40-hour series 2 with a 120GB disk. That disk is beginning to fail. I purchased a 160 to replace it. It is my understanding that the early Series 2's can only see 137GB anyway. I tried to use mfstools to copy the failing 120 onto the new 160. Obviously, it didn't work. I tried then to use dd to copy the disk. That appeared to work, but mfsinfo reports the new drive is not valid. Someone else on this thread reported the same error I received. In any event, I am going to try again with dd_rescue. My question is, do I need to run BlessTivo after dd_rescue completes, or is the sector copy enough for the TiVo to see the new drive as valid?


----------



## ashu

Any S2 TiVo that was working relatively recently already has TiVo software & Linux kernel pdates new enough to let it recognize ginormous hard drives (I've heard of dual 300s, and even 500s ... see weaknees.com for examples). There are issues with exceeding 300ish GB, requiring expansion of the swap space ... but that doesn't affect your upgrade situation.

Its more likley your dd failed due to a too-far-gone-to-copy source drive ... at least that'd be my guess.


----------



## coldtoes

Mars said:


> So Coldtoes,
> 
> Did you ever sucessfully copy over your drive using dd_rescue from the PTVupgrade disk, and if so what string of paramaters did you use?


Well to answer your question a year and a half later ... 

I can't remember, but I am about to try again so I will report my findings. I am looking at my old notes and either I gave up on the PTVu disk and used Knoppix, or else I gave up on Knoppix and used PTVu with just the -v switch. I think it was the former - it looks like my PTVu notes are from my initial attempt. This time I'm going to start with Knoppix and see what happens.


----------



## johnny*dangerous

I have a question - I am about to replace my maxtor 300g (which is failing) with a 320g Seagate. - Since I ran the updated kernal on the original drive (so it sees all 300g), will I have to do this again on the new drive?

I have a single drive Sony t-60 if that matters.


----------



## johnny*dangerous

Updated the drive last night (only took about 6 hours for the 300g drive to copy). As a note, it only recognizes the new drive as 300g, not 320 so a kernal update is needed to recognize the full size of the drive even though there is already an lb_48 on the copy.


Thanks goes out again to Portland Paw for starting this how-to. It worked outstandingly!

JD


----------



## dmark1867

This post is very verbose and may include some steps that are not necessary 
I am learning, but because I was successful, I thought I would share what worked for me 

I did not have a drive that was failing.
My intent was to create an exact clone of the drive in my DSR704 (complete with partitions, shows, hacks, etc).

First I got the MFSLive Boot CD; see this post to get it:
http://www.tivocommunity.com/tivo-vb/showthread.php?t=327239

*This boot CD incorporates the latest version of garloffs dd_rescue which supports all the switches.*

I then installed the drives in my PC as follows:
hda Primary Master - FAT32 Drive
hdb Primary Slave - NEW 120GB drive (same exact model # of old 120GB drive)
hdc Secondary Master - OLD 120GB Drive
hdd Secondary Slave - CD-ROM Drive

I booted from the MFSLive CD and when I got to the # prompt I verified that the new drive was configured as hdb by entering:
mfsinfo /dev/hdb

& that the old drive was configured as hdc:
mfsinfo /dev/hdc

I ensured that DMA was on:
hdparm -d /dev/hd{enter drive letter}

If DMA is not on for some reason (it should be on by default), you can use this command to turn it on:
hdparm -d1 /dev/hd{enter drive letter}
(If you need to turn it off replace the 1 after the d with a zero)

Then I mounted the fat32 drive to save the log file from the copy:
mount -t vfat /dev/hda1 /dos

I then ran dd_rescue (replace the drive letters if your configuration is different!!!!)
-->*Remember, in my case the old drive is hdc, and my new drive is hdb*<--
dd_rescue -B 1b -b 2M -A -v -l /dos/dd_rescue.log /dev/hdc /dev/hdb

It only took about one hour to complete (I have 115 hours of shows)!

I then unmounted the drives (not sure if this is necessary)
umount -f -a -r (make sure to type umount, not unmount)

I then shutdown the pc:
/sbin/poweroff
(Just entering this from the root directory wasn't shutting the pc down  )

Then I changed the jumper on the new drive from slave to master, put it in the Tivo, tested it, and presto, it worked like a champ  !
The new drive has all of my hacks, shows, etc.

*I could not have done it without all the fine and dedicated folks on these boards!* :up:


----------



## anonymuse

How does this work when you want to go from 2 harddrives to 1? (Original 40GB in RCA DVR40 plus 160GB add on)

For the truly uninitiated: (Yes, that's me)
/dev/hda is Primary Master drive
/dev/hdb is Primary Slave drive
/dev/hdc is Secondary Master drive
/dev/hdd is Secondary Slave drive

hda Primary Master - ????
hdb Primary Slave - NEW 200GB plus drive 
hdc Secondary Master - Old Drive(s)????
hdd Secondary Slave - CD-ROM Drive

I'm wondering if I'm going to run out of bays! ??

Or can I put the 2 old drives in serial and connect them to one IDE cable? Once these 2 drives were originally put together, do they actually just look like one big drive on Tivo and computers etc?


----------



## goony

anonymuse said:


> Or can I put the 2 old drives in serial and connect them to one IDE cable?


There's no such thing as "serial" on a parallel IDE drive bus, although it may have that appearance - electrically, they are treated as two separate drives.

When you have a cable with 3 connectors you can connect two drives - one as MASTER and one as SLAVE.

Read all about this stuff here: http://en.wikipedia.org/wiki/AT_Attachment, especially the sections *Multiple devices on a cable*, *Cable select* and *Master and slave clarification*.



anonymuse said:


> Once these 2 drives were originally put together, do they actually just look like one big drive on Tivo and computers etc?


From a user standpoint, on a Tivo, they look like one large storage space but at the operating system and electrical interface level they are two separate units.


----------



## newbr

just to save people some time, you do get a speed increase by having the old drive and new drive on separate cables (after checking DMA is on with hdparm), I'm averaging about 40000kB / s.

The other way I was only getting 30000kB / s.


----------



## pitchford

Does this DD_rescue work in a SATA environment for a series3 setup?


----------



## pitchford

pitchford said:


> Does this DD_rescue work in a SATA environment for a series3 setup?


I think I've found that the answer to this is "yes" using sda in place of hda.

So if I successfully do DD_rescue from my original 250gig drive to a new 1T drive, will the full 1T be available to the Tivo, or do I have to do something else?


----------



## ronsch

pitchford said:


> I think I've found that the answer to this is "yes" using sda in place of hda.
> 
> So if I successfully do DD_rescue from my original 250gig drive to a new 1T drive, will the full 1T be available to the Tivo, or do I have to do something else?


You need to do something else. Check mfslive...


----------



## pitchford

ronsch said:


> You need to do something else. Check mfslive...


Can I do it with WinMFS, or must I use the live tools?

I did the dd_rescue copy with the arguments shown above except for the log part "-l /var/dd_rescue.log" and the new drive works fine in my S3. I just need to make the TiVo see the whole drive now (and do a backup).


----------



## Heinrich

Holy Old Threads!!

I know it's old, but, all he information seemed completely relevant and this thread got me going. Anyhoo, is it normal for this utility to start with "about to transfer 0.0 kbytes"

then later

starting positions: in 0.0k, out 0.0k


but then to have ipos and opos and xferedd data counting in large numbers?


----------



## ronsch

Heinrich said:


> Holy Old Threads!!
> 
> I know it's old, but, all he information seemed completely relevant and this thread got me going. Anyhoo, is it normal for this utility to start with "about to transfer 0.0 kbytes"
> 
> then later
> 
> starting positions: in 0.0k, out 0.0k
> 
> but then to have ipos and opos and xferedd data counting in large numbers?


I can't recall ever seeing it say that.....


----------



## Heinrich

Well it appears to be processing. Unfortunately it's going to take it 2 weeks to get through this drive.

I've had 5 bad hard drives this year. 4 Western Digital, One Hitachi. 1 was DOA from Amazon. All 4 were in different devices from Tivo to WHS to laptop to desktop. 

This particular Tivo drive was not backed up. Either I let it spin for 2 weeks and then probably not recover anything anyway due to 'bad spots' that it didn't recover or I pull the plug now. It's only reporting a tiny number of actual errors so maybe I should let it spin.

Very frustrated


----------



## ronsch

Heinrich said:


> Well it appears to be processing. Unfortunately it's going to take it 2 weeks to get through this drive.
> 
> I've had 5 bad hard drives this year. 4 Western Digital, One Hitachi. 1 was DOA from Amazon. All 4 were in different devices from Tivo to WHS to laptop to desktop.
> 
> This particular Tivo drive was not backed up. Either I let it spin for 2 weeks and then probably not recover anything anyway due to 'bad spots' that it didn't recover or I pull the plug now. It's only reporting a tiny number of actual errors so maybe I should let it spin.
> 
> Very frustrated


Do you have frequent power blips?


----------



## BlankMan

WoW! This thread still lives. I am truly amazed.


----------



## ronsch

Hey - dd_rescue is good stuff!


----------



## cewinchester

My hard drive failed and I have no backup. I put the drive into my computer and booted it and it does not recognize the drive. I loaded the MFSlive.org stuff but have not been able to find out how to repair the drive. When I select the drive it says super header not found. Now what do I do ?:down:


----------



## ronsch

cewinchester said:


> My hard drive failed and I have no backup. I put the drive into my computer and booted it and it does not recognize the drive. I loaded the MFSlive.org stuff but have not been able to find out how to repair the drive. When I select the drive it says super header not found. Now what do I do ?:down:


Read this thread from the beginning.


----------



## teddyk

Ran dd_rescue in mfslive and almost immediately got a massive scroll of multiple messages saying "bad sector" "input/output error!" . the scroll just keeps going and going at a very high rate. Should I leave it be? Or is it fried? Other options?


----------



## ronsch

teddyk said:


> Ran dd_rescue in mfslive and almost immediately got a massive scroll of multiple messages saying "bad sector" "input/output error!" . the scroll just keeps going and going at a very high rate. Should I leave it be? Or is it fried? Other options?


You could let it go but that doesn't sound too promising. The other option you could try is Spinrite or it's equivalent.


----------



## unitron

teddyk said:


> Ran dd_rescue in mfslive and almost immediately got a massive scroll of multiple messages saying "bad sector" "input/output error!" . the scroll just keeps going and going at a very high rate. Should I leave it be? Or is it fried? Other options?


Triple check all of your cables and connections, then put the source drive in the freezer overnight, then run dd_rescue with the -r switch to make it copy from the end of the drive instead of the beginning (it'll write to the end of the target drive and work it's way to the beginning, so the source and target need to be the same size).


----------



## ss_sea_ya

Dang, when I started reading this thread, I thought well, its old info, but so is my Hughs HDVR2 (DirecTivo) but I bet I can find some good info anyways. Well I did, but was also semi-surprised its still active, which is good to know the the info is still relevant and that there may be some new updated info/tools.

I have a WD320Gig drive (@v6.4a) that suddenly stopped working in my HDRV2. My original drive (Maxtor? 40G @6.2) works fine. The failed drive goes through the please wait and almost there screens then nothing, like it is in standby. (tried remote and front panel to bring it out of "standby" but didn't work). So I guess my drive has crashed and I want to attempt to recover it for the recordings. So here is my plan:

1. Run (from CD/Floppy) WD Diag's "quick test" to see health of failed drive.
2. Run DDRESCUE to copy failed drive to a new WD 320G drive. 
3. If that fails, then run Spinrite on the failed drive and then copy to new drive.
4. If Spinrite fails, then throw in towel on saving the drive/recordings.


Question: Suggestions for getting dd_rescue? Seems like mslive.org is a good source. Or just use the sources listed in earlier posts?


----------



## unitron

ss_sea_ya said:


> Dang, when I started reading this thread, I thought well, its old info, but so is my Hughs HDVR2 (DirecTivo) but I bet I can find some good info anyways. Well I did, but was also semi-surprised its still active, which is good to know the the info is still relevant and that there may be some new updated info/tools.
> 
> I have a WD320Gig drive (@v6.4a) that suddenly stopped working in my HDRV2. My original drive (Maxtor? 40G @6.2) works fine. The failed drive goes through the please wait and almost there screens then nothing, like it is in standby. (tried remote and front panel to bring it out of "standby" but didn't work). So I guess my drive has crashed and I want to attempt to recover it for the recordings. So here is my plan:
> 
> 1. Run (from CD/Floppy) WD Diag's "quick test" to see health of failed drive.
> 2. Run DDRESCUE to copy failed drive to a new WD 320G drive.
> 3. If that fails, then run Spinrite on the failed drive and then copy to new drive.
> 4. If Spinrite fails, then throw in towel on saving the drive/recordings.
> 
> Question: Suggestions for getting dd_rescue? Seems like mslive.org is a good source. Or just use the sources listed in earlier posts?


dd-rescue is on the very useful MFS Live cd, as is hdparm.

If the "bad" 320GB drive and the new 320GB drive are the same size LBA-wise, then you can run dd_rescue with the -r option, which starts the copy at the ends of the drive and works toward the front.

Don't throw in the towel, wrap a couple of thicknesses of paper towel around the bad drive and put it in the freezer overnight.

Then do dd_rescue -r from it to the new one.

Put the new one in the TiVo and put it into "Kickstart" when you boot it.

If there are errors, but the underlying physical disc is not bad, you might be able to correct them with the Kickstart/Green Screen of Death routine.

After doing this, if you come out with a working drive with your recorded shows intact, *then* you can run diagnostics on the bad drive, but you want to make as good a copy as possible first before it goes even worse.

All of the above presupposes that you have a good new 320 GB drive on hand already.

If not, instead of going out and buying one for the same price as you could get a 1TB SATA drive and SATA-to-IDE adapter, go with the Kickstart/GSOD thing first, just in case it's not a physical defect in the current drive but just scrambled bytes.

By the way, a bunch of the earlier posts on this thread reveal a lack of understanding of what it does (which includes copying over an incorrect partition map if the drives aren't the same size).


----------



## ss_sea_ya

Thanks for the great suggestions.

I do not currently have a replacement drive, but I do have some options regardless of what replacement drive I get. Having limited (but more than none) experience with this stuff, I was initially toying with keeping things simple with a replacement WD 320G drive- same size, same type. But it doesn't look too difficult to try the DD_RESCUE and, if it works, use mfsadd to correct the drive size if I go with the 1Tb drive.

Another option is my not so new PC has the exact same drive WD 320G in it. I bought both drives at the same time,as a side note, it passes SMART tests. I could use that and put my new drive in the PC.

I had seen the Kickstart thing, but was not sure it would work on my HDVR2, which has the "factory" 6.2 software on it. I'll give that a shot anyways. So here is my updated plan: 

0.1: Put failed drive in TIVO with power cable only. If clicking then, drive prob bad (think I got this one off the WDC FAQ web site).
0.2: Regardless of above, run Kickstart/GSOD on the failed drive. If no luck then,
1. Run (from CD/Floppy) WD Diag's "quick test" to see health of failed drive.
2. Run dd_rescue -r to copy FROZEN  failed drive to a new WD 320G or 1 Tb drive (and mfsadd if successful). May also need to run kickstart/GSOD on replacement drive after copy.
3. If that fails, then run Spinrite on the failed drive and then copy to new drive. (May also need to run kickstart/GSOD on replacement drive after copy.)
4. If Spinrite fails, then throw in towel on saving the recordings and put replacement drive in PC or go to town in playground and put it in the HDVR2. Run WDC extensive diagnostics tests on failed drive to see if it is usable.

Thanks for the tip on the Freezing drive.


----------



## unitron

ss_sea_ya said:


> Thanks for the great suggestions.
> 
> I do not currently have a replacement drive, but I do have some options regardless of what replacement drive I get. Having limited (but more than none) experience with this stuff, I was initially toying with keeping things simple with a replacement WD 320G drive- same size, same type. But it doesn't look too difficult to try the DD_RESCUE and, if it works, use mfsadd to correct the drive size if I go with the 1Tb drive.
> 
> Another option is my not so new PC has the exact same drive WD 320G in it. I bought both drives at the same time,as a side note, it passes SMART tests. I could use that and put my new drive in the PC.
> 
> I had seen the Kickstart thing, but was not sure it would work on my HDVR2, which has the "factory" 6.2 software on it. I'll give that a shot anyways. So here is my updated plan:
> 
> 0.1: Put failed drive in TIVO with power cable only. If clicking then, drive prob bad (think I got this one off the WDC FAQ web site).
> 0.2: Regardless of above, run Kickstart/GSOD on the failed drive. If no luck then,
> 1. Run (from CD/Floppy) WD Diag's "quick test" to see health of failed drive.
> 2. Run dd_rescue -r to copy FROZEN  failed drive to a new WD 320G or 1 Tb drive (and mfsadd if successful). May also need to run kickstart/GSOD on replacement drive after copy.
> 3. If that fails, then run Spinrite on the failed drive and then copy to new drive. (May also need to run kickstart/GSOD on replacement drive after copy.)
> 4. If Spinrite fails, then throw in towel on saving the recordings and put replacement drive in PC or go to town in playground and put it in the HDVR2. Run WDC extensive diagnostics tests on failed drive to see if it is usable.
> 
> Thanks for the tip on the Freezing drive.


If your TiVo drive itself is failing you don't want to run it any more than necessary.

Do you already own SpinRite?

Do you know anyone who could lend you a drive at least as large as the one in your computer, so that you could copy everything from the computer drive to the loaner and free up the TiVo drive's twin for experimentation?

You might want to post a question to the Help Center Forum

http://www.tivocommunity.com/tivo-vb/forumdisplay.php?f=4

to get specific answers about running KS/BSOD on your particular model from those who know more than do I.

Include a link back to your original post in this forum so they can see your situation (without having to start on page 1 and go through all of the posts over the years) and what you've been advised so far.


----------



## hoyty

Using WinMFS I didn't have much luck doing disk to disk copy. I tried SpinRite which basically said "um yeah this drive is dead" and then crashed trying to analyze it. I never had that happen. According to the patch notes the latest MFSLive integrates dd_rescue (or something similar) it seems into the backup script as it was able to copy the drive with about .5-1.0% data loss in recording area. It took almost 18 hours because of the bad parts of drive, but it finished and verified. I also tested a minimal transfer to verify the OS partitions were good and they seemed fine.

I just popped the drive in and it booted fine.


----------



## unitron

hoyty said:


> Using WinMFS I didn't have much luck doing disk to disk copy. I tried SpinRite which basically said "um yeah this drive is dead" and then crashed trying to analyze it. I never had that happen. According to the patch notes the latest MFSLive integrates dd_rescue (or something similar) it seems into the backup script as it was able to copy the drive with about .5-1.0% data loss in recording area. It took almost 18 hours because of the bad parts of drive, but it finished and verified. I also tested a minimal transfer to verify the OS partitions were good and they seemed fine.
> 
> I just popped the drive in and it booted fine.


Did you try running dd_rescue in reverse?

Did you do anything special to keep the bad drive cooled?

Were you using the current full (expensive) version of Spinrite?


----------



## unitron

ss_sea_ya said:


> Thanks for the great suggestions.
> 
> I do not currently have a replacement drive, but I do have some options regardless of what replacement drive I get. Having limited (but more than none) experience with this stuff, I was initially toying with keeping things simple with a replacement WD 320G drive- same size, same type. But it doesn't look too difficult to try the DD_RESCUE and, if it works, use mfsadd to correct the drive size if I go with the 1Tb drive.
> 
> Another option is my not so new PC has the exact same drive WD 320G in it. I bought both drives at the same time,as a side note, it passes SMART tests. I could use that and put my new drive in the PC.
> 
> I had seen the Kickstart thing, but was not sure it would work on my HDVR2, which has the "factory" 6.2 software on it. I'll give that a shot anyways. So here is my updated plan:
> 
> 0.1: Put failed drive in TIVO with power cable only. If clicking then, drive prob bad (think I got this one off the WDC FAQ web site).
> 0.2: Regardless of above, run Kickstart/GSOD on the failed drive. If no luck then,
> 1. Run (from CD/Floppy) WD Diag's "quick test" to see health of failed drive.
> 2. Run dd_rescue -r to copy FROZEN  failed drive to a new WD 320G or 1 Tb drive (and mfsadd if successful). May also need to run kickstart/GSOD on replacement drive after copy.
> 3. If that fails, then run Spinrite on the failed drive and then copy to new drive. (May also need to run kickstart/GSOD on replacement drive after copy.)
> 4. If Spinrite fails, then throw in towel on saving the recordings and put replacement drive in PC or go to town in playground and put it in the HDVR2. Run WDC extensive diagnostics tests on failed drive to see if it is usable.
> 
> Thanks for the tip on the Freezing drive.


What you said about Kickstart and having the factory software finally sunk in.

You may be confusing it with some of the colorful aftermarket modding terms, but it's built into the TiVo software and all you need is the TiVo and the remote control to run it.


----------



## ss_sea_ya

I wasn't sure if the Kickstart function was included/enabled in the DirecTV version of the Tivo software. For example, they did not include features like the HMO (or at least not enabled).
So far haven't been successful getting to operate (I have my original good drive in the box now). So as suggested I posted in tivo help thread about Kickstart and the HDVR2 http://www.tivocommunity.com/tivo-vb/showthread.php?t=461978

EDIT UPDATE: Never got code 54 to work after numerous attempts. Did get Code 57 to work on my first attempt. (currently have my "good" drive installed. )


----------



## ss_sea_ya

unitron said:


> If your TiVo drive itself is failing you don't want to run it any more than necessary....


I think that is a good suggestion, so I probably won't run the code 57 Green Screen of Death on my failed drive.


----------



## ss_sea_ya

Ok ran some tests on the failed drive.
- GSOD: No impact.
- Western Digital Diag's "quick tests", no errors!
Also ran Kickstart code 52 - No effect.

So My guess is boot sector data is messed up. So will copy data to new drive, then figure out how to install boot software to new drive.


----------



## unitron

ss_sea_ya said:


> Ok ran some tests on the failed drive.
> - GSOD: No impact.
> - Western Digital Diag's "quick tests", no errors!
> Also ran Kickstart code 52 - No effect.
> 
> So My guess is boot sector data is messed up. So will copy data to new drive, then figure out how to install boot software to new drive.


You seem to be mistaking the TiVo for a computer, and thinking that you can do the kinds of things with the partitions that one does with computer hard drives. I wish it were so, but it is not.

I fear you have many hours of reading old threads on this and other sites, and old readmes and FAQs for some of the various software concoctions created to assist in TiVo disk size upgrades (MFS Tools, etc) ahead of you in order to gain some understanding of the particular peculiar mix of open and closed source software and filesystems and partition schemes that go into the TiVo voodoo.


----------



## ss_sea_ya

Already there on the "hours of reading" :up:

My premise is the hard drive is good, boot sector data screwed up, and recordings are good. (if recordings screwed up, no sense in proceding). My goal is to copy the data, and then restore a good boot image to the new drive. If this process isn't doable, hopefully someone will let me know to stop hitting my head against a brick wall.

So I've tried dd_rescue from free download here:
http://www.dvrupgrade.com/dvr/stores/1/lba48.cfm
It has an old version of dd_rescue and evenutally caused kernel panic (locked up).

So then tried tools from mfslive.org, as they appear more recent and a later version of dd_rescue (along with the start from end of disk option). Had some better luck, but still had same problem. Tried both dd_rescue and backup/restore (full w/recordings). Both crap out within 15 minutes or so (about 50Gig gets transferred with dd_rescue. -r command didn't make a difference, it still crapped out.). Can get backup/restore to work without recordings, but new drive doesn't boot (as I expected).

I may be having hardware issues causing the kernel panic so may try another hardware platform. Still might try the spinrite, but not there yet.


----------



## ss_sea_ya

Ok used a different hardware platform to run this stuff.

To summarize, my replacement drive (WD 320G) stopped working after about 4 years. HDVR2 would get thru "Power up" and "almost there" then go blank, like in standby. green light blinks in response to remote/front keypad button pushes, but does not come on (including directv buttons). Put original drive in, works fine. Thus an issue with the hard drive.

WD Diags quick test shows no errors.
- Using MFSLIVE and it configuration for saving recordings, I ran the backup/restore command line to copied to new drive.
- No errors were reported (it had the q switch, but showed progress).
- MSINFO, comes back with bunch of stuff, but nothing that would appear to be an error msg (not that i would recognize one at this point in my knowledge  ) 
- Put new drive back in tivo, same result as failed drive, gets thru "almost there screen" then nothing (like its in standby, but with green light on front) and no effect (other than light flash on button pushes).

Ran kickstart code 58, when at the "almost there screen" said "installing service update". Took a while (10 min) then back thru reboot process and then back to blank screen with green light. (one time after this I left it on, and it rebooted after 5 more min then back to blank screen).

ran code 57, this time GREEN SCREEN OF DEATH for about 10 min. It rebooted and attempted a dial in then nothing. Dialin prob didn't connect. (phone line connected)

Ran kickstart code 56, get message "connecting to server... error : Bad Connection.) (phone line was hooked up). Green and yellow lights stuck on. (update: Found some post saying this is no longer supported.)

UPDATE#1: Ran kickstart code 56, THIS TIME W/DLINK USB ETHERNET ADAPTER (NOTE: network driver was never installed, still running "factory" 6.4a software). Get message "connecting to server... error : No Server Directory Specified" (phone line was hooked up). Green and yellow lights stuck on. (Just interesting to note different error msg, but still yielded same result. Of course, now I wish I had installed the networking....may not have made a diff. but...). Tried the other usb port, same result.

Update #2: Ran kickstart code 54, goes thru almost there screen, then blank with Green and yellow lights stuck on. (green light flashes with remote button pushes).

Ran kickstart code 52 , rebooted after "almost there" and then blank with Green & yellow lights on)

Ran kickstart code 51 , rebooted after "almost there", and went thru boot screens again, then nothing again. green light on.
Kickstart code 0. rebooted after "almost there", and went thru boot screens At "power up" screen, it did dial out. Where and who, I have no idea. but prob didn't successfully connect to anything, seemed to "Line in Use" (observed from another extension) for less than 30 seconds. Finished going thru power up, almost there, then back to blank screen with green light.

May try code 0 a few times to see if I can get a successful connections.


----------



## ss_sea_ya

Well, I read many posts through many archives and multiple web sites and all seem to be left unanswered with those that have get through "almost there" and then nothing. 

Some updates:

1. dd_rescue (from MFSLIVE): Copies, no errors, no change.
(I used MFSLIVE version as it seems to have a newer version of dd_rescue than the DVRupgrade LBA48 Boot Disk V4.04).

2. WDC Diagnostic results:
Quick Test: Passes
Extended Test - Fails a few minutes (maybe less?) into the test "too many bad sectors". My speculation is disk appears to be "99&#37;" full, so maybe no room to move bad sectors.

3. WINSMFS copy - no errors, but no change

4. Backup/Restore (MFSLIVE CD) and MFSCOPY(WINSMFS) No Errors, but no change.

5. WINSMFS MFSCOPY from the original drive to new drive. Works fine (with 1 minor artifact that live video plays while in menu's).

6. MFS Info - reads fine (on original, failed, and replacement drives)

Most of the above were run using USB/IDE interfaces (dd_rescue was run both ways, originally using IDE ports and then later using USB/IDE interfaces.

Some ideas yet to try:
1. Run tools to add in the USB Networking to the tivo and explore more from there. (Will run these on the copied new drive, since I'm sure I will have a learning curve). 

2. I am conflicted with the results of "no errors" on the dd_rescue, WINSMFS copy, and the backup/restore, yet WDC diags Extended Test fails very quickly. Thus, I am not if this problem is a candidate for Spinrite since the reads *apparently* produce no errors. Then again, maybe its exactly what it needs...So after I play with the usb networking stuff, I may be back to spinrite as a last resort.

So I still have not given up yet, but even if not successful, this is actually turning into a fun learning experience and hobby. And I will be sure to post my final results somewhere.


----------



## ss_sea_ya

Just in case anyone finds this thread, I never tried anything else to recover the disk/data. As timed passed, recovering the shows became less relevant, so I have essentially shelved the project (for now) and just installed a new image on my new disk to get the system up and running.


----------



## stopright

ss_sea_ya said:


> Just in case anyone finds this thread, I never tried anything else to recover the disk/data. As timed passed, recovering the shows became less relevant, so I have essentially shelved the project (for now) and just installed a new image on my new disk to get the system up and running.


Never, never give up

Are you sure you don't wanna dig up all of those hours of greatness? I was recently in the video store office discussing a few things with a friend and we overheard somebody talking about how they have an archive over 50 terabytes worth of shows. There has to be some pretty good laughs, cries, and spooks in there wouldn't you say? Sounds like it is about time to bust out the dvd burning software.


----------



## ciper

Wanted to add useful information to this thread. One of my Tivo has two 1tb drives. I could tell a drive was starting to act up. I didn't want to wait for one to finish copying and then come back and start the copy of the second. I don't trust that connecting a drive to port one means automatically it will be /dev/sda like most guys assume. So I did the following -

Hooked all four drives (two old 1gb drives and two new 1gb drives) to the computer using onboard SATA. 
Booted into MFSlive cd

hdparm -l /dev/sdX 
(X being A-D for every port to make sure where each drive was connected by model number )

dd_rescue -y 2048 -v -b 4M -B 256 -l /drive1.log & /dev/sdc /dev/sdb & 
(copy original A drive to new A drive)

ps 
(to find the process ID number which happened to be 946)

kill -stop 946 
(this temporarily pauses the dd_rescue process)

dd_rescue -y 2048 -v -b 4M -B 256 -l /drive2.log & /dev/sda /dev/sdd & 
(copy original B drive to new B drive)

kill -cont 946 
(to restart the previous A drive copy process)

The Ampersand after every command lets it run in the background. Now the two drives are both copying simultaneously. The output of the two commands sort of fight for screen space but the refreshes are slow enough that you can catch a glimpse of both of them. Right now the separate AVERAGE copy speeds are 42MB per second and 35MB per second, or a total of 77MB per second. This is on an old as dirt Pentium 4 550 processor desktop.

Oh and if anyone cares I am using a Seagate ST1000DM003 as my A drive. I was able to boot the system with this drive as a test so it is at least potentially compatible. I am afraid it may not work because its both 6gb SATA and has advanced formatting without jumpers to disable either.

Edit: The transfer speed average has gone up. It is now at a combined NINETY FOUR megabytes per second! The current measured actual speed is well over 100MBps. The two lines shown are the individual drives (notice the progress is different between the two)


----------



## sfhub

ciper said:


> dd_rescue -y 2048 -v -b 4M -B 256 -l /drive1.log & /dev/sdc /dev/sdb &
> (copy original A drive to new A drive)
> ...
> dd_rescue -y 2048 -v -b 4M -B 256 -l /drive2.log & /dev/sda /dev/sdd &
> (copy original B drive to new B drive)


The last & on each line puts the command in background, but are you sure you need the first & (after the drive?.log) ?

Instead of the PS and KILL, if you want, you can run the first command in foreground, then press ctrl-z to suspend it. This will stop the output so you can type the 2nd command, then type "fg %1" to resume the first command. It achieves the same thing you wrote, but you don't need to look for the process id of the first command.


----------



## JohnnyBnyc

Hi all,
I haven't read the entire thread but I am posting just to let people know that this has worked for me.

http://www.logicsector.com/tivo/how-to-clone-your-failing-tivo-drive-with-ddrescue/

I used the precess at the link above for my failed tivo premiere xl hard drive. My drive failed the short test, the extended test showed errors and I was told by weaknees that it would be futile for me to try to revive the drive and get anything off of it. It was done!

Well I bought a western digital drive of the same size and type and followed the directions at the above link and lo and behold it worked with flying colors. My tivo booted up and I am copying shows to my new tivo as I type this.

So when in doubt try it yourself, sometimes the experts are wrong.


----------



## unitron

JohnnyBnyc said:


> Hi all,
> I haven't read the entire thread but I am posting just to let people know that this has worked for me.
> 
> http://www.logicsector.com/tivo/how-to-clone-your-failing-tivo-drive-with-ddrescue/
> 
> I used the precess at the link above for my failed tivo premiere xl hard drive. My drive failed the short test, the extended test showed errors and I was told by weaknees that it would be futile for me to try to revive the drive and get anything off of it. It was done!
> 
> Well I bought a western digital drive of the same size and type and followed the directions at the above link and lo and behold it worked with flying colors. My tivo booted up and I am copying shows to my new tivo as I type this.
> 
> So when in doubt try it yourself, sometimes the experts are wrong.


Congratulations.

But you could have used a larger drive as the target, and then expanded with jmfs on a Premiere.


----------

