Tout en essayant de monter une image disque au format Raw (dd) en utilisant la commande suivante
mount nps-2010-emails.dd /media/manu/
Je reçois le message d'erreur suivant
mount: you must specify the filesystem type
Je sais qu'en utilisant -t
, nous pouvons spécifier le système de fichiers, mais quelle est la terminologie utilisée pour un fichier RAW (dd), qui peut être passé en tant qu'argument à la commande mount. Si ma méthode de montage de ce système de fichiers est incorrecte, aidez-moi à faire de même.
$ 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
De http://major.io/2010/12/14/mounting-a-raw-partition-file-made-with-dd-or-dd_rescue-in-linux/ , il y a une suggestion. utiliser un offset. Commencez par obtenir le décalage via fdisk(8)
, puis spécifiez-le avec l’option offset
à mount
. Utilisez fdisk
pour déterminer le secteur de départ de la partition et la taille du secteur. Puis calculez le décalage en octets en utilisant le numéro de secteur de départ et la taille de secteur en octets. Voir Monter une seule partition à partir de l'image du disque entier (périphérique) pour un exemple. Finalement:
mount -o offset=<offset in bytes> nps-2010-emails.dd /media/manu/
Sur un disque dur typique, les cellules contenant les données sont regroupées. Les groupements sont appelés secteurs. Comme nous partitionnons habituellement les choses, les premiers secteurs sont gardés de côté pour donner des informations sur les partitions, ce qui laisse un vide. Donc, si nous avons l'image d'un disque entier, ces secteurs sont également inclus. Désormais, la commande mount
ne peut pas démarrer directement au premier octet, car la partition ne démarre pas au premier octet. Nous devrons donc indiquer à mount
le nombre d'octets à ignorer (pour éviter les informations supplémentaires) et accéder à la partition réelle. C'est ce qu'on appelle l'offset. Désormais, chaque secteur peut stocker une certaine quantité d’informations en octets, appelée la taille d’un secteur. Nous prenons la taille totale des informations pouvant être stockées dans cet espace en multipliant la taille d'un secteur par la taille de l'espace en nombre de secteurs.
Dans la sortie de fdisk
, vous pouvez voir que la taille du secteur est de 512 octets et qu'elle commence au secteur 1. Le décalage est donc de 1 * 512 = 512. Essayez la commande suivante:
mount -t vfat -o offset=512 ps-2010-emails.dd /media/manu/
J'ai ajouté le type de système de fichiers depuis que fdisk
l'a donné en tant que FAT32. Pour le monter en écriture, utilisez également -o offset=512,rw
.
Vous pouvez également demander à l'ordinateur d'analyser automatiquement toutes les partitions d'un dump et de préparer automatiquement tous les périphériques en boucle, comme décrit ici .
Donc, disons que vous avez vidé tout votre /dev/sda
dans un nom appelé sda.img
. Vous pouvez accéder à ses partitions comme suit:
losetup -f -P sda.img
Sur mon système, il se présente comme suit:
Dans les environnements non graphiques, vous pouvez répertorier le périphérique créé avec losetup -l
, qui vous indiquera le nom du périphérique en boucle, par exemple:
# losetup -l
NAME SIZELIMIT OFFSET AUTOCLEAR RO BACK-FILE
/dev/loop0 0 0 0 0 /path/mmcblk0
Vous pouvez ensuite monter disons, la première partition, avec:
mount /dev/loop0p1 /mnt/mypartition
J'espère que cela pourra aider.
Impossible d'ajouter un commentaire en raison d'un manque de réputation, mais tenez à dire à ceux d'entre vous qui possèdent un disque GPT lors de son test avec fdisk, utilisez plutôt gdsik pour obtenir le secteur de démarrage et compter le décalage adéquat. Ça m'a aidé.
fdisk -l
m'a donné:
Device Boot Start End Blocks Id System
vm2080737.bak1 * 1 3901 31457279+ ee GPT
et il ne pouvait pas être monté avec 512 offset avec une erreur 'mount: vous devez spécifier le type de système de fichiers'
gdisk -l
m'a donné un bon résultat:
Number Start (sector) End (sector) Size Code Name
1 34 545 256.0 KiB A501 gpboot
2 546 993825 485.0 MiB A502 swap
3 993826 62914526 29.5 GiB A503 rootfs