[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Virtualisation de disques (logiciel)



Salut,

Lionel FERNANDEZ a écrit :
> 
> 1 : Pour un disk usb bootable (recovery) j'ai fait :
> 
> dd if=/dev/sdf of=image_name.img   (sdf=le disk , pas la part sdf1)
> 
> ça change qqchose si je fait :
> 
> dd if=/dev/sdf of=image_name.iso  ?

Techniquement nom, mais le suffixe .iso est impropre en ce qu'il suggère
qu'il s'agit d'une image de CD ou DVD (en fait un système de fichiers)
au format ISO 9660, ce qui n'est pas le cas d'une image disque.

> 2 : j'ai tenté :
> 
>        $ sudo mkdir /mnt/test
>        $ sudo mount -o loop image_name.img /mnt/test
>        mount : vous devez indiquer le type de système de fichiers
> 
> /mnt est en ext3 et la clé usb d'origine en VFAT => là y a un soucis ???

Non, rien à voir.
Cette commande aurait fonctionné si le disque d'origine n'était pas
partitionné et contenait uniquement un système de fichiers, car mount
attend un système de fichiers, par une table de partition.


Plusieurs solutions. Deux exemples.

1) Avec kpartx.
Installer le paquet kpartx.
Charger le module noyau du device mapper.
# modprobe dm-mod
Créer un périphérique bloc /dev/loopX à partir du fichier image.
# losetup -f --show image.img
Créer les périphériques correspondants aux partitions du fichier.
# kpartx /dev/loop0
Les partitions devraient être visibles en tant que /dev/dm-X ou
/dev/mapper/loop0pX.
Monter une partition.
mount /dev/mapper/loop0pX /mnt/test

2) Directement avec le fichier image et l'offset de la partition.
Afficher les positions des partitions du fichier image.
fdisk -ul image.img
Attention à l'unité affichée  pour la position : secteur, cylindre...
Idéalement afficher en secteurs de 512 octets.
Monter le fichier image en spécifiant l'offset de la partition en octets.
# mount -o loop,offset=$[position début*unité] image.img /mnt/test


Reply to: