[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
4. Logfile Structure
The logfile is a text file easy to read and edit. It is formed of two parts, the status line and the list of data blocks.
NOTE: Logfiles generated by a version of ddrescue prior to 1.6 lack the status line. If you want to use an old logfile with ddrescue 1.6 or later, you will have to insert a line like ‘0 +’ at the beginning of the logfile.
The first non-comment line is the status line. It contains a non-negative integer and a status character. The integer is the position being tried in the input file. The status character is one of these:
Character | Meaning |
'?' | copying data |
'*' | trimming bad areas |
'/' | splitting bad areas |
'-' | retrying bad hardware blocks |
'F' | filling specified areas |
'G' | generating approximate logfile |
'+' | finished |
Every line in the list of data blocks describes a block of data, and contains 2 non-negative integers and a status character. The first integer is a position in the input file, the second is the size (in bytes) of the data to be copied. The status character is one of these:
Character | Meaning |
'?' | non-tried |
'*' | bad area non-trimmed |
'/' | bad area non-split |
'-' | bad hardware block(s) |
'+' | finished |
And here is an example logfile:
# Rescue Logfile. Created by GNU ddrescue version 1.10
# current_pos current_status
0x00120000 ?
# pos size status
0x00000000 | 0x00117000 | + |
0x00117000 | 0x00000200 | - |
0x00117200 | 0x00001000 | / |
0x00118200 | 0x00007E00 | * |
0x00120000 | 0x00048000 | ? |
Any line beginning with ‘#’ is a comment line. The blocks must be contiguous and non-overlapping.
If you edit the file, you may use decimal, hexadecimal or octal values, using the same syntax that integer constants in C++.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |