/var/hack missing on my TiVo Series 1

I upgraded my TiVo Series 1 years ago, adding more storage, a network card, and a web server. Apart from having to replace two drives, everything else has worked smoothly, which is pretty good for a 10 year old computer. I haven't used the tivoweb server much, but today I went to try and use it to add a program recording while someone was watching a show. But no response.

So I telnet'ed into the server, successfully, and started to try and figure it out. First typed "ls" and got "command not found". I knew I had installed ls along with the web server and various other things. But I couldn't remember where, and without ls I was a little lost navigating the server.

I tried to ftp to the server, but that too was down. With the help of various forum posts and articles on the web I was able to recover my setup. Here's a few things that helped:

echo * will show you all the files and directories in the current directory, similar to ls, albeit without the formatting options.

echo $PATH shows you the path. If you previously installed things on your TiVo, then it will probably look something like: /bin:/sbin:/tvbin:/devbin:/var/hack:/var/hack/bin

So with that I was reminded that the various things were installed in /var/hack, and sure enough that folder was missing. I suspected that perhaps an upgrade had blown it away, but after some reading it seems that if the file system experiences a problem, then that directory is rebuilt, thus losing any folders created there. I poked around but hadn't kept any backups on the TiVo in any other directories. And without the ftp server, it was beginning to look like the only way to recover was to mount the drive back in a PC and copy it on from there.

But it turns out that the TiVo comes with a program called http_get which let's you download files from a web server. So the trick was finding a place where tivoftpd.ppc.gz was hosted. Several forum posts provided a particular url, but that was no longer active. I did find it on a web site, but you need to use an IP address, and when I converted the web url host name to an IP address it no longer worked (because the server was using virtual servers). So in the end I downloaded it and then uploaded it to my own server. I'll keep the file there in case anyone else needs it. To fetch it, first recreate your /var/hack directory (mkdir /var/hack) and then execute this command:

http_get -T 0 -C 0 -D /var/hack -U http://209.68.7.98:80/tivoftpd.ppc.gz

Then you can unzip it, rename it and put it in a bin directory, make it executable, and finally launch it.

gzip -d tivoftpd.ppc.gz
mv tivoftpd.ppc bin/tivoftpd
chmod 755 bin/tivoftpd
bin/tivoftpd

If all that works, then you should now be able to ftp to the server, after which you can easily get across all the other files you might want, such as tivowebplus and the tivo-bin utilities. I referred to Steve's TiVo Network Hack How-To Guide to find the other files and the steps to install them.

It took a couple of hours, but the TiVo web server is back (I'm running the TivoWebPlus v2.1.b3), and thankfully without needing to take the TiVo apart.

SecCopy has stopped working

I've been using Centered Systems Second Copy 2000 to manage the backups on my home network, and to an offsite server, for years. For the offsite backups I use the "autodial" feature in Second Copy, that configures a profile to "dial" a connection, such as a VPN connection.

I recently upgraded to Windows 7 from Windows XP, and when I ran my profiles, Second Copy crashed with the message "SecCopy has stopped working".

After some experimentation I narrowed this down to the profile that was using the autodial feature. If I disabled the autodial, and connected to the network manually from outside of Second Copy, then the profile would run fine. I sent a message to Centered Systems support, but didn't get (or missed) the reply. I bought a license to Second Copy 7.1 hoping that this addressed any Windows 7 compatibility issues. But I got exactly the same problem there.

I am now successfully using the following workaround. Instead of using the autodial feature, I am using the run programs feature. This lets you specify a command line to be executed before or after running the profile. I am using the rasdial command line to connect to the network.

rasdial vpnnetwork userid password

This connects to the network called "vpnnetwork" with the userid and password specified. You can also disconnect using

rasdial vpnnetwork /disconnect

Credit to Jon Galloway's article on "Easier VPN Connections from a Windows Desktop" for the command line parameters.