Podczas próby zamontowania obrazu dysku w formacie Raw (dd) za pomocą następującego polecenia
mount nps-2010-emails.dd /media/manu/
Otrzymuję następujący komunikat o błędzie
mount: you must specify the filesystem type
Wiem, że za pomocą -t
możemy określić system plików, ale jaka jest terminologia pliku RAW (dd), który można przekazać jako argument do polecenia mount. Jeśli moja metoda zamontowania tego systemu plików jest nieprawidłowa, pomóż mi zrobić to samo.
$ file -s nps-2010-emails.dd
nps-2010-emails.dd: x86 boot sector;
partition 1: ID=0xb, starthead 254, startsector 1, 20479 sectors, extended partition table (last)\011, code offset 0x0
$ fdisk -l nps-2010-emails.dd
Disk nps-2010-emails.dd: 10 MB, 10485760 bytes
255 heads, 63 sectors/track, 1 cylinders, total 20480 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
Device Boot Start End Blocks Id System
nps-2010-emails.dd1 1 20479 10239+ b W95 FAT32
command-line
mount
filesystem
file-format
disk-image
spaceman_spiff
źródło
źródło
file -s nps-2010-emails.dd
do swojego postu?Odpowiedzi:
Od http://major.io/2010/12/14/mounting-a-raw-partition-file-made-with-dd-or-dd_rescue-in-linux/ , sugeruje się użycie offsetu. Najpierw uzyskaj przesunięcie przez,
fdisk(8)
a następnie określ je zoffset
opcjąmount
. Służyfdisk
do określania początkowego sektora partycji i rozmiaru sektora. Następnie oblicz przesunięcie w bajtach, używając początkowego numeru sektora i wielkości sektora w bajtach. Zobacz Przykład montowania pojedynczej partycji z obrazu całego dysku (urządzenia) . Wreszcie:Na typowym dysku twardym komórki przechowujące dane są zgrupowane. Grupy są nazywane sektorami. W sposób, w jaki zwykle dzielimy rzeczy na części, kilka pierwszych sektorów jest odkładanych na bok, aby podawać informacje o partycjach, pozostawiając lukę. Więc jeśli mamy obraz całego dysku, sektory te również zostaną uwzględnione. Teraz
mount
polecenie nie może rozpocząć się bezpośrednio od pierwszego bajtu, ponieważ partycja nie rozpoczyna się od pierwszego bajtu. Więc będziemy musieli powiedziećmount
ile bajtów pominąć (aby uniknąć dodatkowych informacji) i dostać się do właściwej partycji. Nazywa się to przesunięciem. Teraz każdy sektor może przechowywać pewną ilość informacji w bajtach, co nazywa się rozmiarem sektora. Bierzemy całkowity rozmiar informacji, które mogą być przechowywane w tej luce, mnożąc rozmiar sektora przez rozmiar luki w liczbie sektorów.Z danych wyjściowych
fdisk
widać, że rozmiar sektora wynosi 512 bajtów i zaczyna się od sektora 1. Zatem przesunięcie wynosi 1 * 512 = 512. Spróbuj wykonać następujące polecenie:Dodałem typ systemu plików, ponieważ
fdisk
podałem go jako FAT32. Aby zamontować go również do pisania, użyj-o offset=512,rw
zamiast niego.źródło
fdisk -l nps-2010-emails.dd
.Możesz także ustawić komputer na automatyczne skanowanie wszystkich partycji w zrzucie i automatyczne przygotowywanie wszystkich urządzeń pętlowych, jak opisano tutaj .
Powiedzmy, że zrzuciłeś całą
/dev/sda
na coś zwanegosda.img
. Możesz uzyskać dostęp do jego partycji w następujący sposób:W moim systemie pokazuje się to następująco:
W środowiskach innych niż GUI możesz wyświetlić listę utworzonych urządzeń
losetup -l
, które podadzą nazwę urządzenia pętli, na przykład:Następnie możesz zamontować powiedzmy pierwszą partycję za pomocą:
Mam nadzieję, że to pomaga.
źródło
losetup
polecenie?Nie można dodać komentarza z powodu braku reputacji, ale chcę powiedzieć tym z was, którzy mają dysk GPT podczas testowania go za pomocą fdisk, zamiast tego użyj gdsik, aby rozpocząć sektor i policzyć odpowiednie przesunięcie. Pomogło mi to.
fdisk -l
dałeś mi:i nie można go zamontować z przesunięciem 512 z błędem „zamontować: należy określić typ systemu plików”
gdisk -l
dał mi dobry wynik:źródło
parted
.