Tem que ser 'dd'? O GNU 'ddrescue' possui uma conveniente opção "reversa":
# copy the last 1K from '/dev/sdc' to '/tmp/c_end'
% ddrescue --reverse --max-size=1Ki /dev/sdc /tmp/c_end
Press Ctrl-C to interrupt
rescued: 1024 B, errsize: 0 B, current rate: 1024 B/s
ipos: 0 B, errors: 0, average rate: 1024 B/s
opos: 0 B, time from last successful read: 0 s
Finished
fdisk -l / dev / sda
Disco / dev / sda: 1000.2 GB, 1000204886016 bytes
255 cabeças, 63 setores / pista, 121601 cilindros
Unidades = cilindros de 16065 * 512 = 8225280 bytes
Sistema de identificação de blocos finais de inicialização do dispositivo
/ dev / sda1 * 1 7 56196 fd detecção automática de raid do Linux
/ dev / sda2 8 257 2008125 83 Linux
/ dev / sda3 258 121602 974698231+ detecção automática de raid Linux fd
Obtenha os últimos 100 bytes do disco com o dd:
dd se = / dev / sda de = / tmp / endofdisk.data bs = 1 skip = 1000204885916 count = 100
Observe o tamanho total do disco na primeira linha da saída do fdisk. Usei o tamanho de um bloco de 1 byte, mas é claro que se você estiver copiando mais do que alguns bytes, use blocos de 1K ou 1M. Calcular o tamanho manualmente (dividir por 1024) e substitua bs=1com bs=1024por 1K blocos.
Respostas:
Tem que ser 'dd'? O GNU 'ddrescue' possui uma conveniente opção "reversa":
fonte
Obtenha um tamanho total de um disco, em bytes:
Obtenha os últimos 100 bytes do disco com o dd:
Observe o tamanho total do disco na primeira linha da saída do fdisk. Usei o tamanho de um bloco de 1 byte, mas é claro que se você estiver copiando mais do que alguns bytes, use blocos de 1K ou 1M. Calcular o tamanho manualmente (dividir por 1024) e substitua
bs=1
combs=1024
por 1K blocos.fonte