Problème partition après gravure ISO avec commande DD

Fermé
dammex Messages postés 31 Date d'inscription jeudi 22 juillet 2010 Statut Membre Dernière intervention 14 février 2017 - 10 févr. 2017 à 09:50
dindoun Messages postés 1027 Date d'inscription mercredi 23 janvier 2008 Statut Membre Dernière intervention 17 février 2017 - 17 févr. 2017 à 18:38
Bonjour à tous,

Je souhaite personnaliser mon installeur Debian. J'ai donc téléchargé un ISO d'origine sur le site de Debian, fait mes petites manipulations (preseed, isolinux.cfg...). Jusque là tout va bien :) La personnalisation est opérationnelle.

Après cette étape, je recrée une image ISO de mon OS Debian personnalisé via les commandes :

genisoimage -o <Mon_ISO> -input-charset utf-8 -r -J -no-emul-boot -boot-load-size 4 -boot-info-table -b isolinux/isolinux.bin -c isolinux/boot.cat ./
isohybrid <Mon_ISO>


L'image générée est OK puis je la grave sur USB via la commande :

dd bs=4M if=<Mon_ISO> of=/dev/sda && sync



Tout semble OK. Je mets cette clé sur un serveur et mon OS Debian s'installe...

Mais alors où est le problème ? :)

Je rencontre quelques soucis concernant le montage de la clé sur d'autres équipements :
=> Windows me propose de la formatter, malgré des tests de repositionnement MBR + table partitions
=> Gparted m'indique un message "recursive partition" mais j'arrive à la monter manuellement et à accéder au contenu de ma clé. Cependant, celle-ci est protégée en lecture seule (car je pense qu'elle est vue comme un CD-Rom non?)

Du coup, je me suis dis, si je ne peux utiliser la commande DD, je pourrais utiliser la commande CP comme ci-dessous :
- mount - loop <Mon_ISO> <Montage_ISO>
- cp -av <Montage_ISO>/* <Montage_USB>
- cp -av <Montage_ISO>/.disk <Montage_USB>



Cela fonctionne, mais la personnalisation du mes labels définis dans mon fichier isolinux.cfg ne sont pas pris en compte lors de son installation...

Je tourne désespéramment en rond.

En gros, pouvez-vous m'expliquer quelles erreurs je commets et quelle serait la meilleure méthode à vos yeux.

Mon but:
- Génerer une image ISO perso
- Copier cette image ISO perso sur clé USB
- Pouvoir monter cette clé sur un PC Debian
- Effectuer quelques opérations complémentaires sur ma clé USB (ajout de quelques scripts...., ces scripts ne pouvant être positionnés avant la génération de l'ISO).

Merci beaucoup.
A voir également:

4 réponses

Bonjour,
Si tu observes ta clé dans gparted tu remarqueras :
1 - l'espace alloué à l'image iso (probablement sdb1) est une partition de type inconnu, ce qui explique que tu ne puisses la monter.
2 - Le reste de l'espace de la clé usb est noté non alloué.
Rien ne t'empêche de créer une nouvelle partition fat32 ou même ext4 dans cet espace non alloué, tu pourras alors y placer ce que tu veux.

Si j'ai bien compris, ce que ce que tu cherches à faire, c'est injecter des éléments dans ton image iso après "gravure" sur la clé, je ne pense pas que ce soit possible, il faut le faire avant de la copier sur la clé usb.
0
dammex Messages postés 31 Date d'inscription jeudi 22 juillet 2010 Statut Membre Dernière intervention 14 février 2017
10 févr. 2017 à 14:58
OK.

Du coup, si je comprends bien, je dois absolument passer par les commandes cp ou sync ...

Etapes:
- je monte mon image ISO
- je monte ma clé USB
- Je copie les données de mon ISO vers ma clé USB

Par contre, aurais-tu une explication sur le faite que le fichier isolinux.cfg ne soit pas pris en compte lors de l'installation?
0
http://linux.jpvweb.com/mesrecetteslinux/doku.php?id=images_iso_cd

Par contre, aurais-tu une explication sur le faite que le fichier isolinux.cfg ne soit pas pris en compte lors de l'installation?

Tout dépend comment tu bootes ton media d'installation :
En mode efi, c'est la partition EFI qui est utilisée lors du démarrage (fichiers BOOTx64.efi et grubx64.efi)
En mode legacy, c'est syslinux (c'est lui qui utilise le fichier isolinux.cfg)

Je suppose que tu bootes en mode efi...
0
dammex Messages postés 31 Date d'inscription jeudi 22 juillet 2010 Statut Membre Dernière intervention 14 février 2017
12 févr. 2017 à 00:27
Merci jns55 pour ces explications.

En effet, je me suis servi de ce genre de tutoriels pour avancer sur ce sujet. À une remarque près, j'utilisais genisoimage à la place de mkisofs pour générer l'image. Cela marchait très bien mais cela ne me permettait plus par la suite de modifier la clé USB. C'est pourquoi je ne peux pas "graver" l'image ISO directement sur la clé USB... Je suis obligé d'extraire les données de l'ISO puis de les copier...

Concernant Isolinux.cfg, en effet, je crois que tu as raison concernant l'efi. En faite, quand je mettais la clé USB générée après mon cp, rien ne se passait quand je la selectionnais dans le menu de boot, alors que si je selectionnais UEFI, l'installeur debian s'affichait.

Cela veut dire que je dois réinstaller syslinux sur ma clé ?

Tu confirmes ?
0
Si tu désires booter en mode legacy, oui, si tu bootes en mode efi c'est inutile.

Autre élément du problème : le format de ton disque dur : s'il est au format gpt tu dois booter en mode efi par contre s'il est au format mbr (msdos) tu es obligé de booter en mode legacy pour pouvoir l'installer.
Tu connais la différence ?
mode efi : grub est dans la partition efi (128 partitions primaires possibles)
mode legacy grub est dans le mbr du disque... (anciens pc, 4 partitions primaires possibles)

Une remarque toutefois: sur un pc récent je suis parvenu tout à fait accidentellement à installer linux en mode legacy sur un disque dur au format GPT et à ma grande surprise ça fonctionne, c'est en voyant la partition EFI vide que je me suis rendu compte que l'installation s'était faite en mode legacy !
Le pc fonctionne normalement mais je déconseille de tenter l'aventure car c'est pas du tout certain qu'avec une autre version du bios ça fonctionnerait encore.
0
dammex Messages postés 31 Date d'inscription jeudi 22 juillet 2010 Statut Membre Dernière intervention 14 février 2017
14 févr. 2017 à 22:51
Désolé pour ce retard.

J'ai suivi ton conseil et j'ai donc réinstallé syslinux sur ma clé USB, car le fonctionnement en mode lagacy est pour le moment la solution retenue.

Maintenant, ma clé fonctionne parfaitement. Je parvient depuis un ISO, à extraire ses données et à les copier sur la clé USB. Tout en laissant ma clé accessible en ecriture, bootable ainsi que prenant en compte ma personnalisation d'isolinux. J'ai cependant remarqué une petite chose étrange...

Quand j'installe syslinux sur ma partition :

syslinux -s /dev/sdb1


deux libraries .c32 (je n'ai plus leurs noms exactes) sont créés à la racine de la clé, alors que celles-ci sont déjà présentes dans le dossier syslinux de ma clé...

Pourquoi ce doublon? Sachant que la commande prends en compte mon fichier syslinux/syslinux.cfg, pourquoi me crée-t'elle ce doublon?

Après ça, promis j'arrête
0
Là, j'ai pas la réponse. Désolé.
0
dindoun Messages postés 1027 Date d'inscription mercredi 23 janvier 2008 Statut Membre Dernière intervention 17 février 2017 135
17 févr. 2017 à 18:38
salut
ca peut peut etre t'aider :

http://www.dindoun.lautre.net/spip.php?article81=

en particuleir j'utilise
sudo umount /dev/sdh1 && sudo syslinux -f /dev/sdh1
0