J'ai fait une image de tout mon disque avec
dd if=/dev/sda of=/media/external_media/sda.img
Maintenant, le problème est que je voudrais monter un système de fichiers ext4 qui était sur ce disque, mais
mount -t ext4 -o loop /media/external_media/sda.img /media/sda_image
donne évidemment une erreur de superbloc puisque l'image contient le disque entier (MBR, autres partitions) et pas seulement la partition dont j'ai besoin. Je suppose donc que je devrais trouver un moyen de faire apparaître l’image disque dans le /dev/
dossier ...
Est-ce que quelqu'un sait comment faire ça?
PS: Je peux toujours dd
sauvegarder l’image sur le disque d’origine, mais ce serait très pratique (j’ai mis à jour le système d’exploitation et j’aimerais le conserver tel quel)
sudo losetup -o $((56*512)) /dev/loop0 sda.img
mount -o loop,offset=$((56 * 512)) sda.img /mnt
. Source: madduck.net/blog/…Mise à jour pour Ubuntu 16.04: Avec la nouvelle,
losetup
ceci est maintenant plus facile:Voir le reste de la réponse pour les anciennes versions d'Ubuntu.
Une solution simple consiste à utiliser kpartx : il détermine la structure de la partition et mappe chaque unité sur un périphérique en mode bloc. Après cela, tout ce que vous avez à faire est de monter celui que vous voulez.
Ouvrez Terminal, localisez l’image disque et entrez la commande suivante:
Cette créé
loop0p1
etloop0p2
sous/dev/mapper
. Dans la sortie, vous pouvez voir la taille des partitions, ce qui vous aide à les identifier. Vous pouvez monter celui que vous voulez avec:Sinon, le périphérique de blocage est détecté par Nautilus et vous pouvez le monter à partir de la barre latérale:
Lorsque vous avez terminé, démontez ce que vous avez monté et supprimez le mappage de périphérique:
la source
sudo apt-get install kpartx
- avoir accès à kpartx. Lekpartx
lien au début de l'article est un "piège" à mon avis. Les liens qui impliquent l'installation d'un logiciel est un non-non.losetup -Pf
avait été mentionné précédemment par askubuntu.com/a/496576/52975 Je vous recommande au moins lien vers cette réponse.losetup -Pf ..
commande créera des périphériques similaires à ceux/dev/loopXpY
que vous devez encore monter. Vous pouvez trouver leX
de regarder le résultat de lalosetup
commande. LeY
est le numéro de partition.Edit : fonctionne avec util-linux> = 2.21 . Au moment de la rédaction, Ubuntu est livré avec la version 2.20 uniquement.
De l' homme perdant :
Donc juste courir
créer des nœuds de périphérique pour chaque partition de votre image disque sur le premier périphérique de boucle inutilisé et l’imprimer sur la sortie standard. Si vous utilisez un
/dev/loop0
périphérique, cela créera au moins/dev/loop0p1
une capacité que vous pourrez monter comme d'habitude.la source
losetup
? Celui que j’ai dans Ubuntu 14.04 a une page de manuel de juillet 2003 (util-linux) et aucune option `-P` (ni quoi que ce soit d’autre) pour analyser les partitions.--partscan
option a été introduite dans util-linux 2.21gnome-disks
a une option pour monter une image disque et ses partitions. (<- pour l’installation et l’utilisation de bash / terminal,Disks
le tiret le trouve aussi).losetup
), mais c’est presque trois ans plus récent que la réponse acceptée - ce qui était la façon de le faire à l’époque.Essayez
gnome-disk-image-mounter
:Non
sudo
requis. Il sera monté à/media/your_user_name/partition_name
, tout comme les clés USB.la source
losetup -P
automatisationlosetup -P
est la meilleure méthode à partir d’Ubuntu 16.04, comme indiqué à l’ adresse https://askubuntu.com/a/496576/52975 , voici des fonctions à automatiser si nécessaire. Usage:La source:
module de boucle max_part config
Ceci est une méthode décente avant 16.04.
loop
est un module de noyau, intégré au noyau dans Ubuntu 14.04.Si vous le configurez correctement, Linux divise automatiquement les périphériques pour vous.
indique le nombre de partitions que les
loop
périphériques peuvent générer.C'est
0
par défaut sur Ubuntu 14.04, c'est pourquoi aucune division automatique n'a lieu.Pour le changer, on peut soit ajouter:
dans un fichier
/etc/modprobe
, ou:à
/etc/default/grub
et ensuitesudo update-grub
.Comment définir un paramètre de module est également couvert à: Comment ajouter des paramètres de module au noyau?
Après un redémarrage, quand vous faites:
il monte l'image sur un
/dev/loopX
périphérique et monte automatiquement les partitions sur des/dev/loopXpY
périphériques.Donc, c'est la méthode la plus pratique si vous êtes prêt à redémarrer.
Voir également
la source
Utilisez losetup pour attacher l’image entière du disque.
Ensuite, utilisez mdadm pour créer un périphérique md et des périphériques de blocage seront créés pour toutes les partitions.
Vous devriez maintenant voir les périphériques de partition.
la source
La manière la plus simple, à mon avis, utilise
mount -o loop,offset=...
comme mentionné dans cette réponse sur StackOverflow . L'idée est la suivante:Cette méthode est préférable car elle ne nécessite pas la suppression du périphérique de boucle après le démontage de la partition montée.
Pour simplifier davantage la tâche (ce qui est nécessaire si vous le faites souvent), vous pouvez utiliser mon script
mountimg
pour tout faire à votre place. Obtenez-le simplement à partir de https://github.com/AlexanderAmelkin/mountimg et utilisez comme ceci:Vous pouvez également spécifier le type de système de fichiers et toute autre option de montage supplémentaire si vous le souhaitez:
Quand vous avez fini avec la partition,
umount
il suffit de :la source