Forum Astuces.divers [Terminal] Booter sur un disque USB

Posté par  .
Étiquettes : aucune
0
10
sept.
2004
Comment booter sur un disque dur externe en USB ?

Tout d'abord vous devez savoir que si votre kernel ne trouve pas votre partition root au démarrage celui-ci fait un panic() et stoppe son chargement.

La solution est de patcher le noyau pour qu'il n'arrête pas son chargement si il ne trouve pas de partition système et qu'il continue ses autres tâches (par exemple la détection de votre disque USB...) tout en renouvelant ses tentatives régulièrement.

Appliquez donc tout d'abord ce patch :
http://www.xenotime.net/linux/usb/usbboot-2422.patch
Puis recompiler votre kernel Linux en ajoutant en "dur" le support ext2, ext3, ReiserFS en fonction du type de votre partition root sans oublier le support USB (USB MASS Storage...).
  • # ça marche pas avec initrid ?

    Posté par  . Évalué à 1.

    Une question (vu que je peux pas essayer ).
    comme la mode est apparement d'utiliser l'option --initrd à la compilation du noyau ( enfin voir tous les noyaux par dèfaut Debian).
    si on ajoute les modules usb , usb mass storage pendant la crèation de l'image initrd, pourquoi ça marcherait pas ?
    Je compile mes noyaux avec le support ide et ext3 en modules quand j'utilise l'option --initrd et ça marche , mes disques sont bien montès au demarrage.
    • [^] # Re: ça marche pas avec initrid ?

      Posté par  . Évalué à 1.

      En effet c'est ce que j'avais pensé au début...
      Mais après plusieurs tests je me suis rendu compte que ce n'etait "pas possible" avec un partition root qui est sur le disque USB...
  • # Ça marche avec initrd

    Posté par  . Évalué à 2.

    > Mais après plusieurs tests je me suis rendu compte que ce n'etait
    > "pas possible" avec un partition root qui est sur le disque USB...

    Ah ? C'est pourtant ce que j'ai fait. Système entier sur disque dur USB (pour avoir un système de sauvetage en cas de pb), qui boote un kernel standard (package debian 2.6.8) avec initrd. Le tout est de bien configurer les fichiers de /etc/mkinitrd pour que initrd lance bien les modules USB dès le début. Ça me semble quand même moins sauvage que ce patch... et pas besoin de recompil.

    Il existe aussi le package mkinitrd-cd qui contient des scripts permettant de faire un initrd specialement dédié aux CD/disques USB:


    Description: Creates an initrd image for booting from a live CD-ROM or USB device
    This is the package used by the Gibraltar project to create the initrd images
    used for booting from CD-ROM or USB sticks. The bootable CD-ROMs or USB
    mass storage devices are actual live CD-ROMs respective live filesystems.
    That is, the root file system is the CD-ROM or an image on the USB device,
    ramdisks are the only things needed for operation without a hard disk.
    Although a harddisk can be used for e.g. storing log files permanently or
    when the machine acts as a proxy server.
    .
    Given a kernel image and the corresponding modules, it creates a complete
    boot image that can be written to floppy or be used as El Torito image for
    a bootable CD-ROM. Additionally, it is possible to create an initrd image to
    be used on a USB stick (e.g. with syslinux). Upon bootup, the initrd image
    will try to locate an ATAPI CD-ROM drive or a USB mass storage device. When
    this does not succeed, it auto-probes for SCSI adapters and tries to locate
    SCSI drives. It also works when multiple CD-ROM drives are installed in the
    system by checking if the inserted CD is the correct one for booting.
    .
    The package can be of use to developers and packagers who want to create
    their own bootable, live Debian CD-ROM or bootable, live Debian USB stick.
    It will probably not be of any use to others.
  • # Et le chargeur de boot ?

    Posté par  . Évalué à 1.

    Bonjour,
    C'est très bien lorsque l'on peut booter directement a partir du bios, mais peut on charger un os en ajoutant le support usb a lilo ou grub?
    C'est a dire que l'on pourrai avoir root (sda) au lieu de root (hda) par exemple.

Suivre le flux des commentaires

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