Forum CDRinfo.pl

Forum CDRinfo.pl (https://forum.cdrinfo.pl/)
-   Komputery - oprogramowanie i sprzęt (https://forum.cdrinfo.pl/f113/)
-   -   dd (https://forum.cdrinfo.pl/f113/dd-93226/)

Berion 17.02.2014 00:36

dd
 
Chciałbym skopiować 10MB rozpoczynając od określonego sektora na dysku twardym do pliku. Pytanie jak to zrobić?

Czy ja dobrze myślę?

Kod:

dd if=/dev/sda of=/home/<user>/plik.bin bs=512 count=10M skip=<liczba sektorów podzielona przez bs minus ilość sektorów od końca>

andy 17.02.2014 05:46

Count nie ma wielkości (chyba że użyjesz count_bytes) - to zwykła liczba. bs * count = ilość danych wyjściowych

Jeżeli chcesz odczytać setny sektor dysku to:
... bs=512 count=1 skip=99
Cytat:

skip=N pomija N bloków o rozmiarze ibs na początku wejścia
Aby to wszystko było wydajniejsze używaj większych jednostek przy zapisie/odczycie.


Można użyć jeszcze flagi iflag z przełącznikiem seek_bytes, wtedy wartość seek podajesz w bajtach

... bs=512 count=1 iflag=seek_bytes seek=50688 //Pomija 99 sektorów i odczytuje 100 sektor dysku.

andy 17.02.2014 18:13

Na szybko sprawdziłem i działa. Stworzyłem plik tekstowy w którym jest 2048 wierszy:
0001
0002
0003
[...]
2048

Cytat:

andy@nabuchodonozor:~/Pulpit$ dd if=test ibs=5 count=11 skip=9
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020

Berion 17.02.2014 18:44

Dzięki, sprawdzę.


Wszystkie czasy w strefie CET. Aktualna godzina: 05:50.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions Inc.