Forum Linux.livecd iso quelconque sur clé USB bootable

Posté par .
Tags : aucun
2
17
fév.
2009
Bonjour,

je dispose d'une image iso comportant un système d'exploitation bootable.

Et non il ne s'agit pas de la dernière version d'ubuntu je sais pas quoi.

Je voudrais créer une clé USB bootable, exactement comme un CD bootable si je gravais l'image iso sur un CD.

Je m'arrache les cheveux, parce que ce qu'on trouve sur le net à ce sujet, c'est :

- soit 50000 façons de faire avec la dernière version de Ubuntu trepid je sais pas quoi en clic clic ;

- soit wgetter le script sauvage de untel ou untel, qui soit ne marche pas, soit n'est plus disponible...

Donc concrètement, pour faire une telle clé USB soi-même et proprement, il faut faire quoi ?

Pour le moment, j'ai monté l'image iso, copié tous les fichiers sur ma clé, et rendu la clé bootable en activant le drapeau "boot" de la clé à l'aide de gparted.
Mais ça ne marche pas ("boot error") lors du boot.
Alors que :

- le même OS, gravé CD, boote correctement sur ce PC ;
- avec une iso Ubuntu + l'outil en clic clic qui fait tout tout seul (Administration -> Create a startup disk), avec la même clé, ça marche également.

Merci d'avance pour votre éclairage !
  • # Installer un bootloader

    Posté par (page perso) . Évalué à 4.

    Ce qu'il manque c'est "juste" d'installer (et configurer un bootloader)
    personnellement j'utilise grub2, mais pour les clés usb c'est syslinux qui est courrement utilisé (pourtant grub2 c'est tellement bien... 'fin bref). Et pour savoir les options qu'il faut mettre, en général faut aller chercher dans isolinux/isolinux.cfg. Atteention, la gestion des initrd change d'un bootloader à un autre donc il ne s'agit pas de juste recopier les options.
    • [^] # Re: Installer un bootloader

      Posté par . Évalué à 1.

      mais en quoi le bootloader à inclure dans le CD est différent de celui à inclure dans la clé USB ?

      Quand je grave une image iso sur CD, je ne me suis jamais occupé de configurer de bootloader...
      • [^] # Re: Installer un bootloader

        Posté par . Évalué à 4.

        parce que quand tu graves un CD

        tu graves en fait une "image" d'un CD
        qui contient l'arborescence et le bootloader

        il faut refaire la meme arborescence sur ta clef USB et activer le bootloader
        (isolinux, memdisk...)
      • [^] # Re: Installer un bootloader

        Posté par (page perso) . Évalué à 3.

        Deux choses, comme dit en dessous quand tu grave un CD tu grave le boot loader avec, mais en plus les bootloader pour CD sont TRÈS particulier, et accède au CD par une méthode qui a pas grand chose à voir avec les disques durs, donc les bootloader CD vs disque dur sont clairement incompatibles, sauf cas tordu que fait unetbootin (que j'ai du mal à discerner quand même)
  • # unetbootin

    Posté par (page perso) . Évalué à 3.

    un outil fait pour:
    http://unetbootin.sourceforge.net/

    est ce que ça marche ?
    • [^] # Re: unetbootin

      Posté par . Évalué à 1.

      Je l'ai vu, mais pas testé. Comme beaucoup de choses que j'ai vu sur le net, c'est un truc pré-cliqué pour des cas de figures bien précis (les principales distributions linux).

      Or moi je cherche une solution générique, pour faire une clé bootable à partir de n'importe quelle iso, comme avec un CD, **indépendamment du contenu** de l'iso.
      • [^] # Re: unetbootin

        Posté par (page perso) . Évalué à 2.

        En fait la méthode qu'ils utilisent m'a l'air universelle vis à vis des sources utilisées. Bon après il a pas été foutu de me faire une clé usb qui marche pour aucune des distribs listées que j'ai essayé ... ( DSL et Mandriva), et cette méthode est un peu mastodonte.
        • [^] # Re: unetbootin

          Posté par . Évalué à 2.

          Je confirme, j'ai installé debian/freebsd/openbsd de cette manière.
        • [^] # Re: unetbootin

          Posté par . Évalué à 3.

          Effectivement, avec unetbootin, pas de problème. Certes il y a une option pré-mâchée pour certaines distributions, mais il y a aussi une option pour utiliser n'importe quelle image iso. Dans mon cas ça a marché.
      • [^] # Re: unetbootin

        Posté par . Évalué à 2.

        Tous les live cd doivent fonctionner à peu près de la même manière.
        Ils contiennent un fichier (casper/filesystem.squashfs pour ubuntu) qui est décompressé en RAM.
        Tu peux utiliser unetbootin pour te créer une clé usb bootable,
        puis recopier le fichier squashfs du cd qui t'intéresse. (et peut être les autres fichiers à côté du squashfs)
        Derrière unetbootin, c'est l'outil syslinux qui crée la structure de la clé bootable,
        puis unetbootin vient recopier le fichier squashfs de l'iso spécifiée.

        Ca, c'est dans les grandes lignes, il y a sûrement des spécificités pour chaque distrib.

        Pour comprendre la mécanique des systèmes type livecd :
        http://debian-live.alioth.debian.org/
        http://www.debuntu.org/how-to-customize-your-ubuntu-live-cd
        https://help.ubuntu.com/community/LiveCDCustomization
        • [^] # Re: unetbootin

          Posté par (page perso) . Évalué à 2.

          ils contiennent un fichier (casper/filesystem.squashfs pour ubuntu) qui est décompressé en RAM.
          OURGH
          Heureusment que tu te trompe complétement, sinon on pourrait pas souvent installer ubuntu, je parle même pas des versions DVD ! (sachant que le rapport de compression squashfs est au moins 2, voire même 3, si ca devait partir en RAM, ca ferait mal.)
          Sinon unetbootin est beaucoup plus "bas" niveau: squashfs c'est déjà au niveau de l'initramfs, unetbootin ne va clairement pas aussi loin, il s'arrête au niveau de l'isolinux qu'il remplace par syslinux, ca s'arrête à peu pres là (mais il copie tout le contenu de l'iso au passage oui)
          • [^] # Re: unetbootin

            Posté par . Évalué à 2.

            Il n'est pas décompressé mais il est au moins placé en RAM ?

            J'en avais déduit ça, je n'ai pas réussi à booter sur un système dont la taille du squashfs était supérieure la taille de la RAM.
            Je suis resté sur cette conclusion faute d'avoir trouvé des explications.
            • [^] # Re: unetbootin

              Posté par (page perso) . Évalué à 2.

              La plupart du temps il est même pas placé en RAM, il est lu tel quel sur le disque d'origine. Apres la plupart des distribs ont une option pour passer en RAM pour avoir un système plus réactif, mais je n'ai jamais vu ce comportement par défaut sauf chez damn small linux ('fin c'est ce qu'ils disent j'ai pas vérifié)
  • # simplement

    Posté par . Évalué à 2.

    J'ai une fois aussi lu tout ce mic-mac pour créer une clef usb bootable à partir d'une iso de CD bootable.
    J'ai finalement fait un bête (en root):# cp image.iso > /dev/sdc1 (ton device représentant ta clef usb)

    Je ne sais plus si j'avais désigné la partition (sdc1 par exemple) ou toute la clef (sdc par ex).

    quand c'est fini, tu testes pour voir si ça boote, et ce serait sympa de me dire ce que ça donne.
  • # Syslinux

    Posté par . Évalué à 2.

    1) Copier le contenu du CD sur la clé
    2) Copier le fichier isolinux.cfg en syslinux.cfg
    3) Utiliser syslinux en précisant le chemin vers syslinux.cfg (http://syslinux.zytor.com/wiki/index.php/SYSLINUX)

    Pour moi ça marche à tous les coups.
    Ca se complique lorsque l’on veut mettre plusieurs CD bootable sur une clé seule clé USB.

Suivre le flux des commentaires

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