Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 04/09/2006, à 13:21

RemyX

Créer une distribution Ubuntu Live USB

Bonjour à tous,

Possesseur d'un disque dur 2'5 USB, j'ai cherché à y installer GNU/Linux tout en bénéficiant de la reconnaissance de matériel des livecd, et à le personnaliser pour y inclure les paramètres/logiciels dont j'aurai besoin en déplacement, et le rendre aussi léger que possible tout en étant fonctionnel : aux ptits oignons wink

J'ai cherché sur le net, mais peu d'infos à ce sujet, je créé donc ce topic en espérant qu'il vous sera utile.


Niveau : facile normalement, moyen sûrement à cause de mes explications fumeuses tongue
Temps : quelques minutes si vous avez deja un iso ou un cd de dapper sous la main, à plusieurs heures pour peaufiner votre distrib si vous le souhaitez.


1ere partie : préparation de la distrib bootable sur support USB

Tout d'abord, téléchargez un iso d'install live de Dapper (xubuntu dans mon cas, mais cette astuce doit marcher avec les autres releases).

Montez l'iso et copiez son contenu sur votre disque dans un repertoire que j'appellerai distusb, mais libre à vous de l'appeller comme vous le souhaitez.

sudo mount /dev/cdrom /cdrom
sudo rsync -ax /cdrom/. /distusb/

Editez le fichier /distusb/isolinux/isolinux.cfg selon vos besoins, pour ma part, j'ai juste mis le live ubuntu en version FR avec clavier azerty, je verrai plus tard pour changer le splash et autres broutilles.

LABEL live
  menu label ^Start or install Xubuntu
  kernel vmlinuz
  append  preseed/locale=fr_FR kbd-chooser/method=fr DEBCONF_PRIORITY=critical preseed/file=/cdrom/preseed/xubuntu.seed boot=casper initrd=initrd.gz ramdisk_size=1048576 root=/dev/ram rw quiet splash --

Copiez et renommez le fichier /distusb/isolinux/isolinux.cfg en syslinux.cfg à la racine de votre répertoire distusb, puis copiez les fichiers vmlinuz et initrd.gz aussi à la racine de distusb.

sudo mv /distusb/isolinux/isolinux.cfg /distusb/syslinux.cfg
sudo cp /distusb/isolinux/vmlinuz /distusb/
sudo cp /distusb/isolinux/initrd.gz /distusb/

2eme partie : Préparation du support USB

Syslinux http://syslinux.zytor.com/faq.php est limité quand au type de partition qu'il peut rendre exécutable : il doit s'agir de FAT16, et doit avoir une taille de secteur de 16Ko (attention, cela implique que la partition ne pourra pas exceder 1Go).
De plus il me semble qu'il ne peut booter sur une partition qui se trouve après le 1024eme cylindre, pour ma part je l'ai donc créée tout au début de mon disque.

Créons donc une partition inférieure à 1Go, en FAT16 avec des secteurs de 16ko, de 950Mo au début du disque (mon disque USB est /dev/sdb, remplacez le par celui correspondant à votre disque)

sudo parted mkpartfs fat16 1 950

Puis rendons la bootable.

sudo parted set /dev/sdb1 boot on

Voila, une fois montée la partition, nous pouvons y copier le contenu du répertoire /distusb

sudo mkdir /mnt/sdb1
sudo mount /dev/sdb1 /mnt/sdb1
sudo rsync -ax /distusb/. /mnt/sdb1/

Dernière étape, rendre le disque bootable, avec syslinux (il faut avoir démonté la partition au préalable) :

sudo umount /mnt/sdb1
sudo syslinux /dev/sdb1

Voila, votre disque USB avec Ubuntu Live est prêt, testez le wink
Pour ma part, avec USB2 et 512Mo de RAM, la rapidité est bluffante... en 15s environ je suis sous fluxbox.


3eme partie : personnalisation de votre distribution

Cette partie est subsidiaire, tout dépend de vos besoins...

Le filesystem des live cd ubuntu est en squashfs et se trouve dans le répertoire casper de l'iso.
Nous allons le monter pour copier son contenu (lecture seule) dans le répertoire /distusbfs (libre à vous de ne pas utiliser le même nom que moi)

sudo mkdir /mnt/tmp
sudo mount /distusb/casper/filesystem.squashfs /mnt/tmp -t squashfs -o loop
sudo rsync -av /mnt/tmp/. /distusbfs/.
sudo umount /mnt/tmp

Voila, vous avez maintenant dans le répertoire distusbfs tout le filesystem de votre distrib USB.
Vous pouvez éditer vos fichiers de config, notamment /etc/apt/sources.list pour bénéficier des dépots univers et multiverse éventuellement... ou d'autres à votre convenance.
Pour pouvoir installer/supprimer des logiciels, il faudra se chrooter dans ce répertoire. Mais tout d'abord il faut y copier le fichier /etc/resolv.conf sinon nous n'aurons pas de résolution DNS, et copier le fichier /etc/hosts pour le reverse DNS.

sudo cp /etc/resolv.conf /distusbfs/
sudo cp /etc/hosts /distusbfs/

Enfin, shtroumphons nous wink

sudo chroot /distusbfs

et apt-getisez tout ce que vous voulez... c'est le moment.

Il nous faut maintenant reconstruire le fichier filesystem.manifest que l'on trouve à la racine de la distrib et dans son répertoire casper/

dpkg-query -W --showformat='${Package} ${Version}\n' | grep -v deinstall > filesystem.manifest

Une fois terminé, sortez de l'environnement chroot avec la commande

exit

Montez votre disque USB (il s'agit pour moi de /dev/sdb1, mais ça peut être différent pour vous)

Copiez le fichier filesystem.manifest à la racine de votre disque usb et dans son répertoire casper/

sudo cp /distusbfs/filesystem.manifest /mnt/sdb1/
sudo cp /distusbfs/filesystem.manifest /mnt/sdb1/casper/

Enfin, nous devons reconstruire le fichier squashfs :

sudo mksquashfs /distusbfs/ /mnt/sdb1/casper/filesystem.squashed

Et voila, le tuto est (enfin) fini ^^ amusez vous bien.

Librement votre wink

Dernière modification par RemyX (Le 04/09/2006, à 13:27)

Hors ligne

#2 Le 04/09/2006, à 14:04

pépère

Re : Créer une distribution Ubuntu Live USB

Waou ! Respect totale ! cool:D

Mais j'ai déjà une question wink
Est-il possible de faire la même chose sur une clef usb ? J'imagine que toutes ta partie sur les cylindres et tout ça ne vaut que pour les disques dures externes, mais je suis l'heureux possesseurs d'une clef usb de 2 gigas, et ça serait cool de booter ubuntu dessus !

Comme je n'y connais rien, je suis bien incapable de savoir ce qu'il faut modifier dans tes explications, mais je serais un heureux et actifs testeurs si jamais tu as une idée. tongue


Contre la récupération politicienne d'Ubuntu.

Hors ligne

#3 Le 04/09/2006, à 14:11

Compte anonymisé

Re : Créer une distribution Ubuntu Live USB

Tu devrais mettre ça en .pdf disponible kekpart sur le ouèbe mon bon ami...
Avec un exemple sur un FTP, ce serait tip top.

#4 Le 04/09/2006, à 14:14

Zangdar

Re : Créer une distribution Ubuntu Live USB

+1 pour la clef USB !

Hors ligne

#5 Le 04/09/2006, à 14:36

pomalin

Re : Créer une distribution Ubuntu Live USB

peut-être rajouter la persistence ? j'ai parcouru vite fait ton tuto et j'ai pas vu cette option, là en anglais ya le comment faire : https://wiki.ubuntu.com/LiveUsbPendrivePersistent

Hors ligne

#6 Le 04/09/2006, à 14:52

RemyX

Re : Créer une distribution Ubuntu Live USB

Youhou ! merci pomalin pour ton lien, tout ce qui me manquait s'y trouve. Franchement dommage que je ne soit pas tombé dessus plus tôt, j'aurai économisé du temps (même si je me suis bien amusé à chercher tripatouiller, je ne suis pas très bon sous linux, et de chercher m'a fait beaucoup apprendre).
J'étais justement en train de chercher comment faire pour rendre les home persistants...

Il répond aussi à vos questions sur vos clés USB de 2go : apparemment syslinux gère le fat32 depuis la version 3.00, contrairement à ce qui est dit dans la faq (ça m'apprendra à me baser sur elle sans lire les changelog...), il est donc tout à fait possible d'imaginer des partitions de plus d'1Go ^^

Merci encore, je refait mon micmac, je teste tout ça et je modifie mon tuto.

Hors ligne

#7 Le 04/09/2006, à 15:02

pépère

Re : Créer une distribution Ubuntu Live USB

Cool RemyX !
Merci pour ton chouette travail !!

Vous savez à quoi on assiste là ? Au début de USBuntu ! Ca serait chouette qu'un projet comme ça fasse partie des projets officiels, comme Ubuntu, Kubuntu, Xubuntu, Edubuntu, et tous ça...


Contre la récupération politicienne d'Ubuntu.

Hors ligne

#8 Le 04/09/2006, à 15:12

crowax

Re : Créer une distribution Ubuntu Live USB

Je pose ma question aujourd'hui sur une autre section et j'ai ma réponse
Merci le forum !! tongue
Merci à RémyX aussi wink

Dernière modification par crowax (Le 04/09/2006, à 15:12)


Propulsé par Maverick 32bits
Ubuntu user 7722

Hors ligne

#9 Le 04/09/2006, à 15:21

severino

Re : Créer une distribution Ubuntu Live USB

++

Est-ce qu'on peut booter à partir du clé USB dans les cyber-cafés ?

Dernière modification par severino (Le 04/09/2006, à 15:21)

Hors ligne

#10 Le 04/09/2006, à 16:01

pépère

Re : Créer une distribution Ubuntu Live USB

Franchement, ça serait génial !!

Je sais que ça existe... J'avais déjà essayé une distribution spéciale pour installer et booter sur une clef usb (j'ai oublié le nom... ah, c'est shinux, merci google). Il y en a surement d'autres, mais si ubuntu existait comme ça, et qu'en plus, on pouvait la personnaliser via synaptic.... Argh, j'ose mm pas y penser, c'est trop beau.... cool:D


Contre la récupération politicienne d'Ubuntu.

Hors ligne

#11 Le 04/09/2006, à 16:17

Black_pignouf

Re : Créer une distribution Ubuntu Live USB

Oui, comme il est expliqué là bas (  https://wiki.ubuntu.com/LiveUsbPendrivePersistent - merci pomalin!) il est possible d'avoir la persistance et d'installer Ubuntu sur une clef USB.
Si quelqu'un est chaud pour la traduction...

Je vais faire un tour sur Ebay moi!

Hors ligne

#12 Le 05/09/2006, à 01:53

pomalin

Re : Créer une distribution Ubuntu Live USB

pépère a écrit :

Vous savez à quoi on assiste là ? Au début de USBuntu ! Ca serait chouette qu'un projet comme ça fasse partie des projets officiels, comme Ubuntu, Kubuntu, Xubuntu, Edubuntu, et tous ça...

big_smile

C'était il y a longtemps (enfin pas si longtemps) et les liens cités ne fonctionnent plus, j'ai plus le temps .... mais je poursuis quand même big_smile

http://forum.ubuntu-fr.org/viewtopic.ph … 94#p144494

Dernière modification par pomalin (Le 05/09/2006, à 01:58)

Hors ligne

#13 Le 06/09/2006, à 08:11

pépère

Re : Créer une distribution Ubuntu Live USB

Bon, j'ai voulu essayé ton tuto...

Mais à la première partie, j'ai été bloqué :

sudo cp /distusb/isolinux/vmlinuz /distusb/
sudo cp /distusb/isolinux/initrd.gz /distusb/

Je n'ai pas trouvé ces fichiers (vmlinuz et initrd.gz dans le cd... pourtant, j'ai aussi utilisé une xubuntu dapper... C'est grave docteur ?:P


Contre la récupération politicienne d'Ubuntu.

Hors ligne

#14 Le 06/09/2006, à 13:35

pomalin

Re : Créer une distribution Ubuntu Live USB

vmlinuz et initrd.gz sont dans le dossier casper, pas dans le dossier isolinux

Hors ligne

#15 Le 06/09/2006, à 13:51

pépère

Re : Créer une distribution Ubuntu Live USB

Ah ? Merci, je verrai ce soir... Y'a une petite erreur dans le premier post alors.


Contre la récupération politicienne d'Ubuntu.

Hors ligne

#16 Le 07/09/2006, à 08:29

pépère

Re : Créer une distribution Ubuntu Live USB

Bah dis donc, c'est pas facile à mettre en oeuvre tout ça !

Je suis bloqué à l'étape de création d'une partition. Comme je vous l'ai dit, je n'ai pas de disque dure, mais une clef usb de 2 gigas. Je l'ai formaté, en fat16 puis en fat32 pour voir, mais la commande pour la rendre bootable (sudo parted set /media/usbdisk boot on) ne marche pas... En fait, c'est tout simple, le terminal me dit qu'il ne trouve pas ma clef. Pourtant, elle est montée dans le répertoire /media/usbdisk... Ou en tout cas, c'est le chemin qui s'affiche dans nautilus pour ma clef...

La procédure est-elle particulière ici avec une clef usb ? Et ai je tapé le bon chemin vers ma clef ?

Merci bcp pour votre aide... J'ai hate que ça marche ! Pouvoir travailler sous ubunt à mon boulot, quel pied ! cool


Contre la récupération politicienne d'Ubuntu.

Hors ligne

#17 Le 07/09/2006, à 08:48

cep

Re : Créer une distribution Ubuntu Live USB

pépère a écrit :

J la commande pour la rendre bootable (sudo parted set /media/usbdisk boot on) ne marche pas...

Ta commande n'est pas bonne.

Regarde dans mount quel est le nom du disque usb, sous la forme /dev/sda ou /dev/sdb ou /dev/sdc, etc. etc.

Ensuite la commande exacte sera :

sudo parted -s /dev/sda set 1 boot on

Tu peux même faire :

sudo parted -s /dev/sda set 1 boot on print ( l'ajout de print va afficher la table te permettant ainsi de vérifier que l'amorce a bien été mise.

1 est le numéro de la partition que tu veux rendre bootable. Et s est à ajouter lorsqu'on utilise parted en script tel que vu ici.

Sur certaines cartes il est nécessaire d'installer le paquet debian mbr

Dernière modification par cep (Le 07/09/2006, à 08:49)

Hors ligne

#18 Le 08/09/2006, à 09:11

pépère

Re : Créer une distribution Ubuntu Live USB

Coucou !

Je n'ai pas encore eu le temps d'essayer la commande que tu m'as expliquée cep. Mais je me suis demandé un truc pendant la nuit : ne serait-il pas possible, avec le live-cd, au moment de l'installation, de demander tout simplement que xubuntu soit installé sur ma clef usb ? Et l'installeur ferait tout le travail tout seul... Ca marcherait ça vous croyez ?

Ca serait quand même pratique !! Un cd, vous pouvez installer la distrib sur votre ordi, sur votre disque dur externe, ou sur votre clef usb... cool


Contre la récupération politicienne d'Ubuntu.

Hors ligne

#19 Le 08/09/2006, à 09:15

pomalin

Re : Créer une distribution Ubuntu Live USB

Ben en fait si tu l'installe sur ta clef usb, c'est une installation, donc dépendante de ton matériel,donc, pas transportable d'un ordi à l'autre comme un live qui gère le matériel au démarrage.

Hors ligne

#20 Le 08/09/2006, à 09:45

pépère

Re : Créer une distribution Ubuntu Live USB

aaaaaahhhh... hmm

C'est moi qui aurait du choisir ton pseudo... roll

Bon, on va bidouiller alors... Mais, et c'est pas seulement parce que je suis un gros flemmard, ça serait pratique d'avoir une sorte d'"iso" pour clef usb disponible...

Un idée pour edgy+1 ? (on connait déjà le nom au fait ? de la prochaine-prochaine ubuntu ?)


Contre la récupération politicienne d'Ubuntu.

Hors ligne

#21 Le 08/09/2006, à 18:11

cep

Re : Créer une distribution Ubuntu Live USB

pépère a écrit :

. . . Mais je me suis demandé un truc pendant la nuit : ne serait-il pas possible, avec le live-cd, au moment de l'installation, de demander tout simplement que xubuntu soit installé sur ma clef usb ?

Salut pépère smile

Dans ce cas, il faut chosir un autre mode d'installation.

Au cas où, un tuto pour ce genre d'installation :

http://www.gap.ien.05.ac-aix-marseille.fr/rre/article.php3?id_article=1562

Bonne continuation.
cep

Hors ligne

#22 Le 08/09/2006, à 18:33

michel2652

Re : Créer une distribution Ubuntu Live USB

Bonjour,

@ cep, ce lien est une mine d'or.
Depuis le jour où tu as donné ce lien, j'ai enfin appris à faire des bases de données avec Openoffice sans prise de tête. smile
Vraiment génial le RRE.

A+

#23 Le 08/09/2006, à 19:26

cep

Re : Créer une distribution Ubuntu Live USB

Bonjour Michel,

Normal, c'est le sud-est, et en plus c'est rural smile

Hors ligne

#24 Le 09/09/2006, à 11:33

pépère

Re : Créer une distribution Ubuntu Live USB

C'est la fin d'une belle histoire pour la commande que tu m'as indiquée cep...

~$ sudo parted -s /dev/sda set 1 boot on print
Erreur: The flag 'boot' is not available for loop disk labels.

Je vais essayer la méthode à partir de l'installeur du cd que tu m'as indiquée... Merci pour tout !


Contre la récupération politicienne d'Ubuntu.

Hors ligne

#25 Le 09/09/2006, à 11:43

cep

Re : Créer une distribution Ubuntu Live USB

Oui.
Il faudra aussi voir comment est partitionné ce disque, si l'écriture est activée, quel est le label choisi, et cela quelle que soit la solution envisagée.
Le loop (raw disk access) est soit temporaire, soit un choix, ce qui m'étonnerait.

Faire la commande mount pour voir quelle lettre a été attribuée à sd* puis :

sudo parted -s /dev/sda print  ( adapter la lettre "a" ). (ou simplement sudo fdisk -l , mais fdisk est moins "strict" dans certains cas que parted).

Si ce disque a un mbr non standard qui ne permet pas de le rendre bootable (très rare), il sera possible d'installer le paquet debian " mbr ".

Bonne continuation.
cep

Hors ligne