Chargement...
 
[Voir/Cacher menus de gauche]
[Voir/Cacher menus de droite]

Fabrication d'une clé USB musicale (Dans l'antémémoire)
Gilles : cet article est ici comme carnet de notes sur un projet qui m'a pris un peu de temps.

Vous pouvez également regarder ce fil de discussion sur le forum qui traite aussi de la création d'une clé USB pour la MAO.

Objectif

Présentation

Used in Créer un système Live USB personnalisé
L'objectif de cet article est de relater l'installation d'un système GNU/Linux sur une clé USB. Cette dernière permet de démarrer un ordinateur d'architecture i386 et de faire tourner un certain nombre d'applications. Il s'agit donc de faire tourner une distribution musicale sur une clé USB de 4 Go!
L'intérêt est de disposer d'une clé à la manière d'un Live CD, permettant de se connecter sur un PC pour y réaliser des opérations musicales nomades.

Etat de l'art

L'idée est de disposer d'1 à 4 Go et de n'y installer que le strict nécessaire pour pouvoir disposer de quelques logiciels sur mesure.
Il existe des distributions minilunix pour clé de 64Mo, Il existe des documentations permettant de faire des distributions à base de système Knoppix et Kaella. Mais l'idée est de faire ici une clé sur mesure.
Après avoir fait des essais avec un système Gentoo, j'ai renoncé pensant que le poids des compilateurs était un frein à l'économie de mémoire.
Le choix s'est donc porté sur une Debian.

Installation

Etape 1

La première étape est de charger sur le site de Debian une image ISO minimale appelée business card. Cette image tient sur 40Mo et elle permet de graver un CDROM. Cette installation nécessite un accès réseau. L'installeur a trouvé une adresse IP car j'avais un serveur DHCP sous la main.
Le CDROM est booté sur un vieux PC qui sait quand même démarrer sur une clé USB.
Attention : au démarrage certains PC ne reconnaissent la CLE USB au moment de l'installation que si le PC est physiquement allumé quand la clé est dedans. Un simple reboot peut perdre la clé.
au besoin passer l'option
linux26 vga=771


Etape 2

Installer le CD Debian carte de crédit le plus à jour et demander l'installation sur votre clé USB.
J'ai choisi d'installer GNU/Linux sur la clé complète, c'est à dire que j'ai laissé la Debian faire deux partitions sur la clé USB : une de swap et une grande partition ext3. La partition de swap si elle s'avère inutile pourra être remplacée par une partition VFAT par la suite permettant d'utiliser la clé USB comme une clé 64Mo.

Durant l'installation il est utile de surveiller par les touches CONTROL ALF F2 en ouvrant une console et par une commande df que la partition tient la charge en terme de quantité d'espace disque.
CONTROL F1 permet de revenir à l'écran d'installation et CONTROL F3 permet de suivre ce qu'il se passe. C'est important de suivre car sur certains PC l'USB 2.0 plante au niveau du BIOS. Dans ce cas ne pas hésiter à flasher une version plus récente du BIOS.

Etape 3 : Création initramfs

Par défaut, votre clé USB bootera mais fera un "kernel panic" en disant qu'elle ne trouve pas le "ROOT device". La raison en est simple. Sous GNU/Linux, les périphériques USB de type stockage (Mass Storage) sont reconnu en tant que périphériques SCSI.
Pour charger ces modules au démarrage nous devons créer un nouvel "initramfs" . La méthode la plus simple pour effectuer l'opération est d'utiliser l'outil "mkinitramfs" (8) fourni par Debian.

Liste des modules

Pour que notre clé USB soit reconnue après le boot du noyau, nous devons charger des modules. Ceux-ci sont a spécifier dans /etc/mkinitrd/modules de votre clé USB
mount -o bind /proc /mnt/flash/proc
mount /dev/sdb1 /mnt/flash
chroot /mnt/flash/ /bin/bash -l


Il faut ajouter les deux lignes suivantes dans le fichier /etc/mkinitramfs/modules de votre clé:
ide-cd
cdrom
ide_generic
ide_core
ide-disk
ide-generic
scsi_mod
sd_mod
psmouse
usbcore
ehci-hcd
uhci-hcd
ohci-hcd
usbmouse
usb-storage

Ces deux modules doivent être présents dans votre noyau (ce qui est le cas pour les noyaux Debian par défaut).

Configuration de mkinitramfs

L'outil mkinitrd vient avec un fichier de configuration. Celui-ci est dans /etc/mkinitrd/mkinitrd.conf (5). Nous devons y changer deux lignes comme indiqué ci-dessous
MODULES=dep
ROOT=/dev/sda1
DELAY=5

MODULES=dep : Lors de la création du initrd, uniquement les modules spécifiés seront ajoutés ainsi que les dépendances nécessaires.
DELAY=10 : Lors de l'initialisation de certain périphériques (Scsis, Usb ...) il peut être parfois nécessaire d'attendre quelques secondes. Cela est particulièrement intéressant quand il s'agit du device ROOT.

Création de l'image

Pour créer votre image, il suffit d'appeler mkinitrd avec les bons paramètres :
mkinitramfs -o /boot/myinitrd-2.6.18-5-686 2.6.18-5-686

La valeur 2.6.18-5-686 correspond a la version complète de notre noyau ainsi qu'au répertoire contenant les modules (/lib/modules/<version>/)

N'oubliez pas d'adapter grub pour prendre en compte le nouvel initrd en question.
En ajustant dans votre fichier /boot/grub/menu.lst les lignes du genre :
# le titre
title Debian GNU/Linux, kernel 2.6.8-2-386
  1. dire de booter sur le premier device qui est votre clé en principe puisque vous booter dessus
root (hd0,0)
kernel /boot/vmlinuz-2.6.8-2-386 root=/dev/sda1 ro vga=771
initrd /boot/myinitrd

On note qu'au moment du boot la clé est vue comme le premier disque sda même si votre disque dur est un disque SCSI.
Le fichier /etc/fstab sera :
proc /proc proc defaults 0 0
/dev/sdb1 / ext3 defaults,errors=remount-ro 0 1
/dev/sdb5 none swap sw 0 0

En effet à ce moment là du process votre disque dur est vu comme /dev/sda.

Premiers tests

En spécifiant dans votre BIOS que vous souhaitez booter sur la clé USB vous devriez maintenant pouvoir booter sur la clé USB sans problème.
À la première installation le système GNU/Linux minimal vous demandera les mots de passe root et les heures ainsi que des informations de configuration et chargera à l'aide de l'utilitaire aptitude les paquets Debian à jour.
Ce système vous permet d'utiliser GNU/Linux sur une centaine de méga mais vous n'avez pas à ce stade là d'interface graphique.
La suite des opérations va viser à installer X11, le serveur graphique de GNU/Linux.

Customisation de la clé

Travail préparatoire

Explications

Quelques modifications sont nécessaires pour installer votre système Linux mais :
  • en général votre contrôleur USB est configuré sans aucune optimisation avec des traces de debug qui ralentissent le processus, il va falloir recompiler le noyau,
  • il va falloir installer X11 et le reste.
La méthode retenue consiste à prendre un PC avec un disque d'accès rapide, de copier la clé dessus de tout installer sur cette portion de disque et une fois que tout sera installé (ou de temps en temps) recopier le contenu du disque sur la clé pour la tester.
L'important c'est qu'à présent votre clé est capable de booter.

Mise à disposition d'un espace de travail rapide

Les commandes suivantes copies le contenu la clé sur votre partition disque /mnt/flash :
mount -o ro /dev/sda1 /mnt/usb/
cd /mnt/usb
mkdir /mnt/flash
cp -pdr ./* /mn/flash/
mount -o bind /proc /mnt/flash/proc
chroot /mnt/flash/ /bin/bash -l

Vous êtes maintenant sur la partition /mnt/flash avec votre shell bash comme si vous étiez sur / .
Vous avez une machine virtuelle sur votre disque dur et pouvez continuer l'installation.
On va dire à Debian d'installer xfce4 ce qui provoquera l'installation de X et de tous les outils nécessaires :
apt-get install xfce4


Mise à jour

Mise à jour de la clé après l'installation rapide
exit
umount /mnt/flash/proc
cd /mnt/flash
umount /mnt/usb
mount /dev/sda1 /mnt/usb/
cp -pdr /mnt/flash/* /mnt/usb/

Version 2

Voici le script de génération de la clé de base

Script

[+]

Documentation [Afficher / Cacher]

Connexion
[Afficher / Cacher]



Mégaphone [Afficher / Cacher]

lila, 18:30, ven. 22 Nov 2019: ouaip ! je pars de loin je vous préviens
lila, 18:19, ven. 22 Nov 2019: Bon je ne sais toujours pas ou est le forum adéquat
lila, 18:17, ven. 22 Nov 2019: Y a pas moyen d'avoir un tchat plus long ?
lila, 18:16, ven. 22 Nov 2019: Parce que la voix c'est comme de la musique...
lila, 18:15, ven. 22 Nov 2019: Je ne fais pas de musique mais de la voix, il faut que ce soit nette. Quel matériel me conseillerez vous ?
lila, 18:15, ven. 22 Nov 2019: J’ai testé la Focusrite 2i2 2è generation mais elle me coupais le début des mots, j’ai du la renvoyer. J’ai pas envie de racheter le même modèle. trop déçue
lila, 18:13, ven. 22 Nov 2019: Voilà mon problème, Je cherche une carte son pour la voix. Quelqu’un sait si l’audient D14 marche avec Linux, le revendeur me dit que non. Elle a un pré-ampl et on me dit que c’est bien.
lila, 18:06, ven. 22 Nov 2019: 6) Quels logiciels de MAO connais-tu ? j'utilise Audacity, les autres sont trop compliqués 7) Quel matériel audio possèdes-tu ? PC portable CLEVO 8) Comment as-tu connu Linuxmao.org ? Via la radio Cause Commune dans l’émission Libravous de l’April
lila, 18:04, ven. 22 Nov 2019: 1) Quels instruments pratiques-tu ? Aucun je fais de la lecture à haute voix haute 2) Quelles musiques écoutes/pratiques-tu ? Aucun mais j’aime toutes sortes de musiques (classique jusqu’au hard rock) 3) Connais-tu déjà un peu GNU/Linux ? UBUNTU LINUX
olinuxx, 13:52, jeu. 21 Nov 2019: Bonjour et bienvenue à Fab-DFK cool
ycollet, 23:18, mar. 19 Nov 2019: La prochaine version de vsxu sera ... closed sources ... Lu sur discord.
sub26nico, 17:23, dim. 17 Nov 2019: Salut et bienvenue à Virginal et Geis007 :-)