dimanche 12 avril 2009

Clef USB Debian Live

Faites comme moi
  • achetez des clefs USB de 2 GB
  • installez Debian Live dessus
  • donnez les autour de vous















Il devient parfois difficile de trouver une clef USB neuve de 2 GB. Après quelques recherches sur Internet j'ai trouvé une offre assez intéressante: la clef Kingston DataTraveler 100 2GB sur pixmania.com. Elle ne coûte pas cher, et elle a un bon rapport qualité/prix. Elle n'est pas la plus rapide (seulement 10 MB/sec en lecture), si vous cherchez plus rapide, utilisez plutôt la Corsair Flash Voyager.















Notez que je ne touche pas d'argent ni de Kingston ni de Pixmania :)

mardi 7 avril 2009

Nouvel autorun.inf pour clef USB

Suite des aventures avec Debian Live:

Sur la partition DOCUMENTS j'ai créé un fichier autorun.inf qui contient tout simplement:

[autorun]
icon=linux.ico
shellexecute=debian_live.html
Ceci provoque l'ouverture du fichier debian_live.html (une page web avec des explications) dans le programme qui est associé aux fichiers de type .html sur la machine Windows (le navigateur web par défaut en l'occurence).

Quand je branche la clef USB dans une machine Windows, je vois ceci dans explorer.exe:

samedi 4 avril 2009

Debian Live sur une clef USB: la solution définitive pour les partitions

Dans un post précédent (enfin il y a plus d'un an) je vous expliquais un "dilemme":

Lorsqu'on introduit une clef USB qui contient plusieurs partitions, Windows monte seulement la première partition, et aucune autre !

Ceci est embêtant car sur ma clef USB Debian Live j'ai en fait deux partitions
  • une partition DEBIAN_LIVE qui contient le système Debian Live bootable
  • une partition DOCUMENTS formatée en FAT32 qui contient divers fichiers utiles
La partition DOCUMENTS occupe en fait l'espace libre après la partition DEBIAN_LIVE.

La solution que j'avais trouvée il y a un an fonctionnait, mais n'était pas très élégante. Je devais utiliser dd ou parted pour déplacer la partition DEBIAN_LIVE à la fin de la clef USB. Ensuite je recréais la partition DOCUMENTS comme première partition de la clef USB.

Comme me l'a suggéré Stuart (merci beaucoup !) dans un commentaire sur mon blog, il y a une solution beaucoup plus élégante. On se base sur le fait que la première partition de la table des partitions n'est pas obligatoirement la première partition sur la clef USB. La partition que Windows va monter est celle qui est la première dans la table des partitions, mais elle peut être n'importe où sur la clef USB.

Voici en pratique comment faire:

** Je m'occupe de ma clef USB: /dev/sdc
[root@cobra] /home/pbn/debian-live>fdisk /dev/sdc
** Je regarde les partitions
Command (m for help): p
Disk /dev/sdc: 2004 MB, 2004876800 bytes
255 heads, 63 sectors/track, 243 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x00075233
Device Boot Start End Blocks Id System
/dev/sdc1 * 1 134 1076323+ 83 Linux
** Je vois qu'il y a une partition, c'est DEBIAN_LIVE, qui commence au cylindre 1 et s'arrête au cylindre 134
** Je jette la partition 1
Command (m for help): d
Selected partition 1
** Je crée une nouvelle partition 2
** Cette partition va du cylindre 1 à 134 inclus
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 2
First cylinder (1-243, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-134, default 134):
Using default value 134
** Je marque la partition 2 comme bootable
Command (m for help): a
Partition number (1-4): 2
** Je crée une nouvelle partition 1
** Cette partition va du cylindre 135 à la fin
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-243, default 1): 135
Last cylinder or +size or +sizeM or +sizeK (135-243, default 243):
Using default value 243
** Cette partition est de type 0x0b (FAT32)
Command (m for help): t
Selected partition 1
Hex code (type L to list codes): 0b
Changed system type of partition 1 to b (W95 FAT32)
** Je regarde le résultat
Command (m for help): p
Disk /dev/sdc: 2004 MB, 2004876800 bytes
255 heads, 63 sectors/track, 243 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x00075233
Device Boot Start End Blocks Id System
/dev/sdc1 135 243 875542+ b W95 FAT32
/dev/sdc2 * 1 134 1076323+ 83 Linux
Partition table entries are not in disk order
* J'écris la table des partitions
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
* Ca y est on a fini !

C'est beaucoup plus élégant, et ça va beaucoup plus vite !
Merci encore à Stuart...