Leitura do final de uma unidade com dd

3

Como posso ler a partir do final de uma unidade dd? Pensei em usar, size - to_readmas não tenho idéia de como obter o tamanho em bytes.

Dani
fonte
11
Veja esta pergunta unix.stackexchange.com/questions/13848/…
Zoredache

Respostas:

3

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
AGC
fonte
não funciona, ainda cópias primeiros bytes ...
Antti Haapala
1

Obtenha um tamanho total de um disco, em bytes:

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.

haimg
fonte
Eu não posso montar o disco, eu lê-lo como um todo (sem divisórias)
Dani
@ Dani: Eu mudei minha resposta, use fdisk em vez de df.
haimg
Não consigo usar o fdisk porque a tabela de partição está desarrumada. leva apenas 2 minutos e retorna e não escreve nada.
21411 Dani