ddrescue - Data recovery tool

January 14th, 2009

GNU ddrescue is a data recovery tool. It copies data from one file or block device (hard disc, cdrom, etc) to another, trying hard to rescue data in case of read errors.

Ddrescue does not truncate the output file if not asked to. So, every time you run it on the same output file, it tries to fill in the gaps.

The basic operation of ddrescue is fully automatic. That is, you don't have to wait for an error, stop the program, read the log, run it in reverse mode, etc.

If you use the logfile feature of ddrescue, the data is rescued very efficiently (only the needed blocks are read). Also you can interrupt the rescue at any time and resume it later at the same point.

Automatic merging of backups: If you have two or more damaged copies of a file, cdrom, etc, and run ddrescue on all of them, one at a time, with the same output file, you will probably obtain a complete and error-free file. This is so because the probability of having damaged areas at the same places on different input files is very low. Using the logfile, only the needed blocks are read from the second and successive copies.

The logfile is periodically saved to disc. So in case of a crash you can resume the rescue with little recopying.

Also, the same logfile can be used for multiple commands that copy different areas of the file, and for multiple recovery attempts over different subsets.

Ddrescue aligns its I/O buffer to the sector size so that it can be used to read from raw devices. For efficiency reasons, also aligns it to the memory page size if page size is a multiple of sector size.

More information at homepage here

Note: For floppy, I used the following command:
ddrescue --direct -v -r99 -c1 -b512 /dev/sdb disk1.img disk1.log

SSH Tunneling

January 14th, 2009

Putty command line to set up a tunnel (page is here):

Make a ssh connection to the remote machine using dynamic port forwarding. (If the standard ssh port [22] is blocked then some accounts, such as Panix, will allow a ssh connection on another port, such as 80 or 443). For example, on a Windows machine I could connect to Panix by entering the following on the command line:

putty -ssh -D 4096 -P 80 shell.panix.com

In case you are not familiar with Putty* and its command line options I will break that down for you:

-ssh
Use the ssh protocol
-D 4096
Use dynamic port forwarding with 4096 as that port. (You could use any port number you like that is not already in use on your machine).
-P 80
Connect to the server on port 80 (this part may not be needed or your remote machine may not support it)
shell.panix.com
The server you are connecting to. In this example the panix shell server.

Note 1: You can also use the Putty graphical user interface. You do not need to use the command line! Once you have started Putty you can get to the port forwarding section via Connection -> SSH -> Tunnels. Then type 4096 (or any other suitable port number) in the Source Port box, click the Dynamic radio box and click the Add button.

Note 2: If you are using Linux or MacOS/X you could use OpenSSH as follows: ssh -D 4096 -p 80 shell.panix.com

DD-WRT

January 14th, 2009

Awesome firmware replacement for wireless routers.

WRT600N
Thread regarding WRT600N

WOW Mods

January 14th, 2009

MythTV information

January 14th, 2009