# Read-only access to a Tivo drive using Windows



## Sam Ray (Jul 30, 2012)

We have a Tivo Premiere with a bad hard drive. I have removed the hard drive and mounted it in an old Windows PC. I have not yet tried to do anything more with the Tivo drive.

I want to only read the data on the Tivo drive. What forum should I use to ask about that? If anyone can help with the keywords to use to search for I am happy to do the searching and reading myself.

The thing I would most prefer to use is a Windows program that can read the Tivo data; at least the XML files. The second possibility would be to boot Linux using a VM under Windows. I think that computer already has at least one Linux that I can boot from a VM so I will try that unless someone here tells me not to try it.

If necessary, I could make a boot CD-Rom or flash drive to boot Linux from.

Any guidance will be appreciated. I will read the documentation or whatever if someone can help me find what to read. I have looked at the mfslive.org web site but it does not seem to be relevant but if it is then let me know.


----------



## Dan203 (Apr 17, 2000)

If you're trying to get at the videos you wont be able to. TiVo uses a proprietary file system, not one Windows can read, and all the videos are encrypted anyway.

If you just want to image the drive so you can copy it to a new one then there is a program called WinMFS that can help.

Dan


----------



## lillevig (Dec 7, 2010)

Sam Ray said:


> We have a Tivo Premiere with a bad hard drive. I have removed the hard drive and mounted it in an old Windows PC. I have not yet tried to do anything more with the Tivo drive.
> 
> I want to only read the data on the Tivo drive. What forum should I use to ask about that? If anyone can help with the keywords to use to search for I am happy to do the searching and reading myself.
> 
> ...


First thing I would recommend is to run the long drive test (Should be a WD drive in the Premiere). That will run under Windows and the drive can be connected via a USB to SATA adapter if you don't want to crack open the PC. Unfortunately. Premeire and newer Tivos cannot have a new drive imaged from a captured file. They can only be copied from a working drive. See the upgrade forum for the JMFS tool. If the drive is beyond copying, then you will need to buy a new one pre-imaged. They can be found on eBay.


----------



## unitron (Apr 28, 2006)

Dan203 said:


> If you're trying to get at the videos you wont be able to. TiVo uses a proprietary file system, not one Windows can read, and all the videos are encrypted anyway.
> 
> If you just want to image the drive so you can copy it to a new one then there is a program called WinMFS that can help.
> 
> Dan


You missed where he said he has a Premiere.

WinMFS can't do anything for an S4 drive except maybe screw it up if it isn't already screwed up, either on its own or by being connected when Windows booted.


----------



## Dan203 (Apr 17, 2000)

It's been so long since I hacked a TiVo I didn't realize WinMFS didn't work on the Premiere. I knew the Premiere's were locked up tight to hacking, but I thought they were still upgrade friendly.

Dan


----------



## unitron (Apr 28, 2006)

Dan203 said:


> It's been so long since I hacked a TiVo I didn't realize WinMFS didn't work on the Premiere. I knew the Premiere's were locked up tight to hacking, but I thought they were still upgrade friendly.
> 
> Dan


They added some kind of sort of SQL or something partition, and the S3 and older tools don't know how to deal with it, so at this point, it's jmfs to copy and expand by adding a single MFS Media partition, or it's nothing.

Aside from whatever secret voodoo dvr_dude and weaknees do that they ain't talkin' about.

But as far as I know, no truncated backups are possible.

I think you can boot from the MFS Live cd and look at the partition map with

pdisk -l

without hosing it, but anything else there's no telling what you might break.

The trouble with Windows is you never know for sure when it's going to be read-only and when it's going to do something sneaky.

And if someone copies a Premiere drive to a larger drive and tries to look at it with

pdisk -l

before using jmfs to add that final partition, I'm not certain that pdisk won't re-write things to label the extra space that's not a partition yet as an Apple Free Partition, at which point jmfs can't do anything 'cause it thinks it's a valid partition and that there's no room left on the drive.


----------



## lrhorer (Aug 31, 2003)

unitron said:


> And if someone copies a Premiere drive to a larger drive and tries to look at it with
> 
> pdisk -l
> 
> before using jmfs to add that final partition, I'm not certain that pdisk won't re-write things to label the extra space that's not a partition yet as an Apple Free Partition, at which point jmfs can't do anything 'cause it thinks it's a valid partition and that there's no room left on the drive.


No, pdisk won't write a new partition table unless one commands it to do so. Merely looking at it won't cause it to be modified.


----------



## unitron (Apr 28, 2006)

lrhorer said:


> No, pdisk won't write a new partition table unless one commands it to do so. Merely looking at it won't cause it to be modified.


I trust Linux/Unix stuff not to do sneaky stuff behind my back more than I do MS stuff, but like the man said "Trust, but verify".

I'm pretty sure Murphy's Law remains unrepealed, as well as that other guy's corollary that says Murphy was an optimist.


----------



## Sam Ray (Jul 30, 2012)

I am sorry I did not see the replies before now. Thank you very much for them. I had assumed I would get notification of replies; I had thought I set that up. I will check that later.

We have a Premiere (TCD746320) that is nearly two years old. Apparently the hard drive is bad. We have already purchased a Premiere XL4.

I posted previously in this and related posts in that thread.

The main thing I want is the thumbs-up data. I assume (am hoping) it is in a XML file. The reason I want the thumbs-up data is because my mother used it to keep track of what (movies) she has seen. It is unfortunate that Tivo has not implemented something for that specifically.

So no, I do not expect to be able to get the videos.

The drive from the TCD746320 is not doing well. I might be able to copy it (to be used in antoter drive) but that is not a priority. The TCD746320 was more than one year old but less than two years old when it failed. I did the drive self-test thing that is provided by Tivo and assuming I did it correctly the overnight test failed on everything except the initialization.

I did find the WinMFS and such when I was searching a couple of months ago. I eventually found comments saying it does not work with newer Tivos. So just now before I found these replies I found jmfs. I assume I must have 10 posts to be able to download jmfs so after this post I will be able to.

So do I understand correctly that the recommendation is to put jmfs on a CD and boot it and then I can look at the Tivo files with it?


----------



## lrhorer (Aug 31, 2003)

Sam Ray said:


> I am sorry I did not see the replies before now. Thank you very much for them. I had assumed I would get notification of replies; I had thought I set that up. I will check that later.
> 
> We have a Premiere (TCD746320) that is nearly two years old. Apparently the hard drive is bad. We have already purchased a Premiere XL4.


You can check with some of the guys whohave been tinkering with Premiers on the "other" website.



Sam Ray said:


> The main thing I want is the thumbs-up data. I assume (am hoping) it is in a XML file.


It might be an XML structure. It is not a file in the ordinary sense.



Sam Ray said:


> So do I understand correctly that the recommendation is to put jmfs on a CD and boot it and then I can look at the Tivo files with it?


I doubt it. It is not a mountable file system.


----------



## unitron (Apr 28, 2006)

Sam Ray said:


> I am sorry I did not see the replies before now. Thank you very much for them. I had assumed I would get notification of replies; I had thought I set that up. I will check that later.
> 
> We have a Premiere (TCD746320) that is nearly two years old. Apparently the hard drive is bad. We have already purchased a Premiere XL4.
> 
> ...


If you go here:

http://www.tivocommunity.com/tivo-vb/showthread.php?t=455968

you'll find a link to where you can download a zip file of the .iso image file for the bootable cd with the jmfs utility.

Here's how it works:

You unzip it to get the .iso file, and you burn that as an image to a cd-r, and then you boot the computer with it, with the original TiVo drive and the newer, and usually larger, drive attached.

The jmfs utility will copy the original drive to the new drive, using, I think, the

ddrescue

utilty, not to be confused with the similar

dd_rescue

utility or with the grandaddy of both,

dd

and if you choose to expand, it will fill the rest of the space with a single additional partition of the MFS media type, and rewrite the partition map and partition headers to reflect the addition.

And that's pretty much it.

It has no provisions that I know of for accessing any of the files in any of the partitions, much less putting them in human readable form.

I'm not sure where TiVos keep what information. I wish I did know.


----------



## Sam Ray (Jul 30, 2012)

Thank you unitron, but I am not trying to copy the drive for using in a new drive. I might try that later. I will however burn jmfs to a CD and see what I can do with it.


----------



## lrhorer (Aug 31, 2003)

unitron said:


> I'm not sure where TiVos keep what information. I wish I did know.


I think probably you are speaking of the structure of the MFS file system, and I think you already know the following, but I shall endeavor to expand a bit. The operating system files are all in ordinary ext2 partitions, readily readable and writable by any modern version of Linux with just a tiny bit of help. All of them are mounted as read-only except for /var (the 9th partition), where the TiVo keeps all its logs. The kernel is written as a raw binary to a dedicated partition with no file system. Everything else, including the TiVo configuration, is read and written to the MFS file system, which is not mountable. The structures there cannot be read or written by the kernel or its modules directly, and thus not by any OS external to the functional TiVo. No one who is talking knows enough about the MFS system to be able to write loadable modules for reading and writing those structures. One can extract information about the structures and even the data itself on a running TiVo, but not a Premier.


----------



## unitron (Apr 28, 2006)

lrhorer said:


> I think probably you are speaking of the structure of the MFS file system, and I think you already know the following, but I shall endeavor to expand a bit. The operating system files are all in ordinary ext2 partitions, readily readable and writable by any modern version of Linux with just a tiny bit of help. All of them are mounted as read-only except for /var (the 9th partition), where the TiVo keeps all its logs. The kernel is written as a raw binary to a dedicated partition with no file system. Everything else, including the TiVo configuration, is read and written to the MFS file system, which is not mountable. The structures there cannot be read or written by the kernel or its modules directly, and thus not by any OS external to the functional TiVo. No one who is talking knows enough about the MFS system to be able to write loadable modules for reading and writing those structures. One can extract information about the structures and even the data itself on a running TiVo, but not a Premier.


Okay, so when you run Guided Setup, and tell it what your zip code is, and you specify which cable company and stuff like that, which partition is that written to?

When you record a show, it creates some sort of index/table of contents/database of what you recorded which is separate from the actual recordings. In which partition(s) is that kept?

What about stuff like the to do list, and the recording history?

Is any of that stuff kept in 2,3, or 4, or 5, 6, or 7?


----------



## Sam Ray (Jul 30, 2012)

And to add to what unitron said, what happens when we do something like:
https://192.168.1.4/TiVoConnect?Command=QueryContainer&Container=/NowPlaying​I realize it is possible that the XML file is generated each time a command such as that is received.


----------



## Dan203 (Apr 17, 2000)

If you're just trying to transfer your Season Passes, etc.. to the new XL4 you can do that via the TiVo website. If you want the actual recordings then I would unplug the Premiere until the XL4 gets there, then I would reconnect it to just power and network and transfer as much as I could to the XL4 via MRV. Anything that is blocked from transfer you'll have to find on BitTorrent or buy from Amazon/Netflix/Hulu. The recordings on the drive are encrypted using hardware built into the Premiere so there is absolutely no way to extract them and transplant them to the XL4.

Dan


----------



## Sam Ray (Jul 30, 2012)

Dan203 said:


> If you're just trying to transfer your Season Passes, etc..


I think you did not read what I said.

Or perhaps there is something that the Tivo web site does that it does not specify and the customer service people do not know about.

*Can the TiVo website transfer thumbs-up data?*


----------



## unitron (Apr 28, 2006)

Sam Ray said:


> I think you did not read what I said.
> 
> Or perhaps there is something that the Tivo web site does that it does not specify and the customer service people do not know about.
> 
> *Can the TiVo website transfer thumbs-up data?*


I think he may have missed the part where you said

"We have a Tivo Premiere with a bad hard drive."


----------



## jrtroo (Feb 4, 2008)

Sam Ray said:


> *Can the TiVo website transfer thumbs-up data?*


No. It cannot.

Unless you can figure out how to copy the drive before ti fails completely, I have never heard of anyone taking a specific piece of data like thumbs and pulling it off the drive. I have heard of people taking pictures of screens to preserve this data, but that is it.


----------



## Dan203 (Apr 17, 2000)

Sorry the thread got technical so I glossed over a few posts. Cloning the drive wont work since the new TiVo you bought is a different model. And as jrtroo said there is no way to simply pluck the thumb data from the old drive and implant it on the new one. 

Dan


----------



## unitron (Apr 28, 2006)

Sam Ray said:


> We have a Tivo Premiere with a bad hard drive....


How bad?

Somebody on another thread just brought a Premiere back to life by copying the failing drive to a new drive.

Maybe there's hope for your situation.


----------



## Sam Ray (Jul 30, 2012)

jrtroo said:


> No. It cannot.
> 
> Unless you can figure out how to copy the drive before ti fails completely, I have never heard of anyone taking a specific piece of data like thumbs and pulling it off the drive. I have heard of people taking pictures of screens to preserve this data, but that is it.


Even if the drive was good, is there any way to get the data without using the drive in the Tivo unit? Even if we cannot do that, is there a way to get Tivo to list everything that has thumbs-up as a computer-readable file? I assume not, if it is true that the data is encrypted and can only be decrypted by hardware in the Tivo unit. I even do not know how to get the thumbs-up data using the Tivo UI so we can copy it manually.

Tivo could provide a way to get the thumbs data in XML format in the same manner as the Now Playing data. The Wishlist data would also be useful. As far as I know the only reason they do not is because they do not want to. They also could provide a way for the Tivo to remember everything that has previously been recorded; movies at least. Show episodes would be more complicated but movies would be easy enough to store. Data such as that could be stored in a "cloud" somewhere.


----------



## jrtroo (Feb 4, 2008)

TiVo COULD do lots of things, but they normally concentrate on items that give the biggest bang for the buck. Keeping an ever growing list of things recorded does not make much sense to me, it would be HUGE and neverending.

You can review thumbs in any of the UIs (I go to the suggestions folder and follow the instructions at the bottom, not sure how to pull up through the menus). It is a long and tedious process, but something I do from time to time as I love suggestions and once in a while others will give thumb ratings prematurely.


----------



## gonzotek (Sep 24, 2004)

Sam Ray said:


> Even if the drive was good, is there any way to get the data without using the drive in the Tivo unit? Even if we do that, is there a way to get Tivo to list everything that has thumbs-up? I do not know how to do that even in the Tivo UI.
> 
> I assume not, if it is true that the data is encrypted and can only be decrypted by hardware in the Tivo unit.
> 
> Tivo could provide a way to get the thumbs data in XML format in the same manner as the Now Playing data. The Wishlist data would also be useful. As far as I know the only reason they do not is because they do not want to. They also could provide a way for the Tivo to remember everything that has previously been recorded; movies at least. Show episodes would be more complicated but movies would be easy enough to store. Data such as that could be stored in a "cloud" somewhere.


There is simply no known way to extract the data you seek, except visually on the Thumb Ratings screen of a working TiVo.

Since the dawn of the TivoToGo feature (when they first introduced the xml web interface), we've been asking for additional data to be shared. Thumbs, wishlist, todo, and history have all been requested previously and we have not received any indication from TiVo that there will ever be more data available. One other possible (if unlikely) route to this data is via the newer API the TiVo remote apps for iOS and Android use:
http://www.tivocommunity.com/tivo-vb/showthread.php?t=462980 
I suggest reading through that thread(it starts to get interesting around post 54 or so) and possibly asking there if anyone has an ideas.


----------



## Sam Ray (Jul 30, 2012)

jrtroo said:


> TiVo COULD do lots of things, but they normally concentrate on items that give the biggest bang for the buck. Keeping an ever growing list of things recorded does not make much sense to me, it would be HUGE and neverending.


Many think it is a foolish idea and many think it would be extremely useful. It would be a big bang for those that would use it. It is very likely that as soon as their competition does it, it will become a high priority for Tivo to do it.

From the point of view of a *customer* viewing the list, it could easily get *huge*. From the point of view of a *developer*, it would be *small*. You need to understand from the point of view of a software developer; the data does not need to ever be viewed by a person. It would be *very useful* as data that Tivo uses *internally* but people seldom look at.

As for size, it could potentially be quite small (as small as 20 bytes of data per show) in terms of *hard drive space*, but you need to understand how databases work to understand what I mean.


----------



## Sam Ray (Jul 30, 2012)

gonzotek said:


> One other possible (if unlikely) route to this data is via the newer API the TiVo remote apps for iOS and Android use:
> http://www.tivocommunity.com/tivo-vb/showthread.php?t=462980
> I suggest reading through that thread(it starts to get interesting around post 54 or so) and possibly asking there if anyone has an ideas.


Based on this it sounds likely but I have been mislead by comments such as that in the past. I will look at the documentation and such later. I am not a Python or Java programmer although I am a C++ and C# programmer. I began learning C/C++ before Java existed. I assume I can use the Java at least as a sample.

So if I were to get something like that working then I would try putting the drive back into the Tivo and hopefully the drive is working enough for me to get the thumbs data. It will likely be a couple of months before I can do that; I have other work to do.


----------



## unitron (Apr 28, 2006)

Sam Ray said:


> Based on this it sounds likely but I have been mislead by comments such as that in the past. I will look at the documentation and such later. I am not a Python or Java programmer although I am a C++ and C# programmer. I began learning C/C++ before Java existed. I assume I can use the Java at least as a sample.
> 
> So if I were to get something like that working then I would try putting the drive back into the Tivo and hopefully the drive is working enough for me to get the thumbs data. It will likely be a couple of months before I can do that; I have other work to do.


You might be able to do as another has recently done and use

dd_rescue

to copy the drive to another known good drive and get the TiVo running again.


----------



## Sam Ray (Jul 30, 2012)

unitron said:


> You might be able to do as another has recently done and use
> 
> dd_rescue
> 
> to copy the drive to another known good drive and get the TiVo running again.


Yes, thank you. I am hopeful that something like that is possible. I did not ask about that here since I did not want to distract this thread with that but it is good that you mentioned dd_rescue since it is a specific suggestion. I know that I can go to other threads for more about all that. The hard part is finding a good drive to use, especially the money part.


----------



## unitron (Apr 28, 2006)

Sam Ray said:


> ...The hard part is finding a good drive to use, especially the money part.


I feel ya, brother.

Even if you've got the scratch, drive makers are doing their best to keep us confused about which drives will or won't work in a TiVo.


----------



## mattack (Apr 9, 2001)

I know he wants the thumbs data, but as for the 'show' data, supposedly on the 'other' site (which was mentioned above), people have figured out some of it. I have never got far enough to trying to see if it would help in my case (dead S3 + dead drive -- but the drive seemingly spins when I get power, so hopefully it's a controller board). I even bought another S3 to see if it was a power supply issue, apparently not.. motherboard still doesn't power up with the PS from the other one. If I could get that drive up so I could rescue the shows, I'd give up on the S3 altogether. I know it's basically a hopeless cause, but I'm still keeping the parts..


----------



## alansh (Jan 3, 2003)

Lots of stuff here:

The issue with Windows wiping out TiVo drives was with earlier releases of 2000 and XP. In order to keep drive letters from moving around if you switch connections in the PC, Windows writes a unique serial number to each disk so it can identify them. However, on a TiVo drive this overwrites critical data and makes it unbootable. This was done automatically.

Current service packs of 2000 and later Windows versions now ask if you want to initialize the drive first. Don't let Windows initialize the drive, obviously. As long as you say no, you're fine and nothing is written to the drive.

The MFS application region is a hierarchical database (similar to the Windows registry) that stores all the data TiVo uses -- program guides, program metadata, season passes, preferences, etc. When it was possible to get into the box (via software exploits on the Series1 and 2, and via ROM mods in Series3 and HD), you could use a program called tivosh to do arbitrary queries. So by going through /SeasonPass/User you could get all the season passes, for example

Because the HD and S3 require soldering a modified ROM to the board, it became much harder in the high-def units. The Premier uses a SecurCore ARM CPU that does a verification of the ROM before the CPU will execute it. There's currently no known workaround for this.

So, right now we're limited to what functionality that TiVo exposes via the web server, either in HTML or XML (used by the Tivo Desktop). As far as I know, there's no way to extract thumbs data this way. And there's certainly no way to upload thumbs data.

Yes, a few users would find this extremely useful, but most users don't really pay much attention to it.


----------

