Forum Astuces.divers [Terminal] Monter des images ISO

Posté par  .
Étiquettes : aucune
0
5
fév.
2002
Un truc tout bête, mais auquel on ne pense pas forcément, c'est qu'on peut monter une image iso comme on monterait un cdrom...
Pour ca, tapez "mount -o loop -t iso9660 /chemin/vers/votreImage.iso /repertoire/de/destination/"
Il faut être root, ou avoir un root (très) sympa pour pouvoir faire cela.
  • # Lecture / ecriture

    Posté par  (site web personnel) . Évalué à 1.

    Quelqu'un sait-il s'il est possible par cette méthode de monter l'image iso en lecture/ecriture afin de pouvoir modifier son contenu ?

    Merci d'avance pour toute reponse.
    • [^] # Re: Lecture / ecriture

      Posté par  . Évalué à 1.

      Vu le principe d'une image iso, ca me semble plutot bizarre.

      Une image iso, c'est un copie precise d'un disque, selon l'emplacement precis de chaque élément sur la structure du disque (désolé pour les termes précis). A priori si l'on modifie rien qu'un fichier, tout s'en trouve modifié.
    • [^] # Re: Lecture / ecriture

      Posté par  (site web personnel) . Évalué à 1.

      On peut modifier une image montée avec -oloop, *seulement* si le FS sous-jacent autorise l'écriture. Donc à mon avis ca ne marche pas pour isofs. Par contre ca marche pour vfat, ext2, minix,...

      Pour écrire sur une image ISO > mkisofs
      • [^] # Re: Lecture / ecriture

        Posté par  . Évalué à 1.

        Oui, voila, le mieux est de copié le contenu de l'image (montée au préalable) dans un autre repertoire, de rajouter les fichiers, et de refaire l'image
        avec:
        mkisofs -o image.iso repertoire (ou remplacer repertoire par repertoire/* pour eviter d'avoir le repertoire a la racine du cd)
        .
        si les nom longs sont indispensables, rajouter les flags:
        -l pour les noms longs
        -r pour rockridge + flags a rwx pour tous.

        et pour un bootable:
        -b image.disk (ou image.disk et l'image de la diskette bootable)
        -hard-disk-boot (si l'image precedement sité est une image de HD avec MBR)
      • [^] # Re: Lecture / ecriture

        Posté par  (site web personnel) . Évalué à 1.

        Je suis tout à fait d'accord .... Il n'est possible d'ecrire que dans des images d'FS read/write.

        Pour faire un espace RW dans un fichier :

        dd if=/dev/zero of=mon_fichier bs=1M count=Nbr_de_M
        mkreiserfs mon_fichier (ou n'importe quel autre system de fichiers)
        mount -o loop mon_fichier /mnt/Espace_RW

        Ce ce que j'utilise pour faire des disquettes bootables, avec une toolbox.

        @+ Whoo

        linux / linux / linux

    • [^] # Re: Lecture / ecriture

      Posté par  (site web personnel) . Évalué à 1.

      Bon j'ai pas trouvé de réference précise ni d'url, mais je sait par science que ISO9660 est par définition non modifiable, car destiné à être stoque sur des supports non modifiables (CDROM means Compact Disk _Read Only Memory_ !!! ) ( juste une petite mention dans le man mount : " it is read-only, of course" ). De plus le iso9660 contient des information de redondance et des CRC qui permettent de recouvrer la totalite des données même si le suport est partiellement endomagé.

      j ai juste un http://www.computeruser.com/articles/daily/8,8,1,0424,01.html(...) :/
      • [^] # Re: Lecture / ecriture

        Posté par  . Évalué à 1.

        les crc sont pas dans l'image iso mais sur le support physique.
        par contre, non, le filessytem iso9660 n'est pas fait pour etre modifier a la volee, donc le proposer serait complexe a programmer et particulierement peu performant.
        sans compter que de base iso9660 est un sac de noeuds.

        en substance:
        dans un fs fait pour la lecture ecriture, on laisse de la place a droite a gauche pour pouvoir ajouter des choses au fur et a mesure (et sur les filesystem microsoft en plus on s'arrange pour que ca fasse des trous durables dans le temps pour obliger les gens a defragmenter mais c'est une autre histoire).
        sur un fs destine a de la lecture seule, comme iso9660 ou romfs (cat /usr/src/linux/Documentation/filesystems/romfs.txt pour plus d'info), on met la liste de tous les fichiers une fois pour toute au debut du filesystem et on tasse tout pour ne pas perdre de place. du coup si tu veux ajouter des fichiers ou les agrandir, il faut deplacer tous les autres (donc il faut beaucoup reflechir pour voir comment faire et en plus ca peut revenir a deplacer plusieurs centaines de Mo pour ajouter 3 octets), ca sera beaucoup plus lent que de refaire l'image iso, des lors que tu ajouteras quelques dizaines de fichiers.
        (je simplifie un peu)

        par contre on peut imaginer des truc tres sioux genre un pseudo-filesystem qui stocke les donnees en ext2 quand tu les ecrits, et qui, lorsque tu demonte le filesystem (unmount) genere l'image iso pour toi, tu auras le meme confort. cela dit c'est bien complique, et ca revient a la meme chose que de stocker dans un repertoire puis d'appeler mkisofs...

        si ton probleme c'est que tu trouves mkisofs tres lent, achete 2 barrettes de 512Mo, une fois que tous les fichiers a mettre dans l'image iso sont en cache, mkisofs est bcp plus rapide... un dur performant aide aussi.

        si tu n'es pas motive pour aller voir le code source de mkisofs (par exemple), tu peux jeter un coup d'oeil la:
        http://www.alumni.caltech.edu/~pje/iso9660.html(...)
        • [^] # Re: Lecture / ecriture

          Posté par  . Évalué à 1.

          Comment expliquer alors que le logiciel UltraISO (sous windows, desole) permet par exemple d'ouvrir une ISO de DVD de 4Go en quelques secondes, en modifier le contenu, et enfin de sauvegarder le resultat en quelques secondes egalement (P3 500 MHz RAM 384 Mo, tres peu d'access disque pendant l'operation, en tout cas certainement pas le lecture et encore moins l'ecriture des 4 Go, memoire necessaire faible) ??
  • # Re: Monter des images ISO

    Posté par  . Évalué à 1.

    Si le root est sympa, il peut mettre dans /etc/fstab un truc du style :
    > /home/f.matias/cdimage.raw /home/f.matias/cdimage iso9660 ro,loop,noauto,user 0 0

    iso9660 peut-être remplacé par auto si on envisage de monter d'autre type de système de fichier. De même, "ro" peut-être virer si on veut créé une image disquette.

    çà permet aussi de faire des images iso (mkisofs) , de les tester (mount cdimage) et de graver sans être root !
  • # Tu montes tes CD-ROM à la main toi ?

    Posté par  . Évalué à 0.

    pas moi.
  • # Re: Monter des images ISO

    Posté par  . Évalué à 1.

    Concernant Linux, il me semble qu'il faille une option particulière du noyau pour bénéficier de cette fonctionnalité (/dev/loopback ou un truc dans le genre)...
    En revanche, pour les UNIX (tout particulièrement HP/DEC True64), j'aimerais savoir s'il existe une option similaire afin de tester une image ISO sans avoir à la graver.

    Merci à celui/celle qui a des informations sur le sujet...
    • [^] # Re: Monter des images ISO

      Posté par  . Évalué à 0.

      > Concernant Linux, il me semble qu'il faille une option particulière du noyau Le noyau doit supporté les périphérique loopback. C'est activé sur toutes les disbres. Le périphérique loopback est utilisé avec "mount -o loop". Sinon pour ne pas utiliser cette fonctionnalité de mount tu peux faire : # losetup /dev/loop0 image_cd # mount -t iso9660 -o ro /dev/loop0 /point_de_montage. > DEC True64 Pas d'info.
  • # Re: Monter des images ISO

    Posté par  . Évalué à 0.

    Il faut être root, ou avoir un root (très) sympa pour pouvoir faire cela.

    Les roots sont sympas.

    [-1]
  • # Comment rendre son root sympa ?

    Posté par  . Évalué à 1.

    Chez moi un utilisateur ne peut pas faire ce genre de chose. Comment on fait pour le permettre ?

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.