06 Jan 2018, 00:00

Live-USB Hybrid Debian Stretch

Quelques petites variations par rapport à Jessie, notamment le fait que la construction d’une image avec double architecture semble échouer. il faut donc d’abord créer une image complète en architecture i386 (ainsi le système complet sera 32 bits, mais exploitable par un noyau 64 bits), puis créer une image 64 bits dont on extraiera le noyau et l’initrd.

sudo aptitude install live-build live-tools
mkdir stretch_live && cd stretch_live
mkdir auto && cp /usr/share/doc/live-build/examples/auto/* ./auto/

Editer le fichier auto/config pour qu’il contienne ceci :

#!/bin/sh

set -e

lb config noauto \
	--architectures 'i386' \
	--archive-areas 'main contrib non-free' \
	--bootappend-live 'boot=live config locales=fr_FR.UTF-8 keyboard-layouts=fr' \
	--binary-images 'iso-hybrid' \
	--distribution 'stretch' \
	--linux-flavours '686-pae' \
	--source 'false' \
	"${@}"

Entrer la commande lb config, puis aller éditer le fichier config/package-lists/live.list.chroot et ajouter les paquets désirés. Je propose ceci :

live-boot
live-config
live-config-systemd
vlc mdadm rdesktop conky nmap rcconf network-manager-gnome firmware-linux firmware-atheros firmware-b43-installer firmware-bnx2x firmware-brcm80211 firmware-intelwimax firmware-iwlwifi firmware-libertas firmware-myricom firmware-netxen firmware-qlogic firmware-ralink firmware-realtek gparted hfsprogs ntfs-3g hfsplus hfsutils dosfstools hplip system-config-printer xsane simple-scan lightdm mate-desktop-environment bash-completion chntpw caja-open-terminal dcfldd bootlogd less mesa-utils numlockx ethtool grub2 mesa-utils ssh gdisk testdisk python-tk iftop nethogs pm-utils dmraid chromium engrampa unrar pluma aptitude apt-file chromium-l10n smartmontools debootstrap pciutils usbutils cifs-utils e2fsprogs mtools screen pulseaudio pavucontrol pavumeter mate-media-common mate-media mate-settings-daemon-dev mate-settings-daemon-common mate-settings-daemon lvm2 bluez blueman pulseaudio-module-bluetooth

Puis entrer la commande sudo lb build.

A noter qu’il est possible de décomposer la commande sudo lb build en la succession suivante :

sudo lb bootstrap
sudo lb chroot
sudo lb binary

Il est possible d’aller modifier/ajouter manuellement des fichiers entre l’étape chroot et l’étape binary. Par exemple, pour créer /home/user/ , /home/user/Bureau/ et y ajouter des fichiers, qui seront disponibles directement sur le bureau du live.

Si on souhaite recommencer la création du live, on peut utiliser la commande sudo lb clean qui ne conserve que le cache des paquets, du bootstrap et la config. On peut aussi utiliser les options --binary ou bien --chroot pour conserver les étapes antérieures.

11 May 2015, 00:00

Live-USB Hybrid Debian Jessie

Maintenant que Jessie est sortie, voici les commandes pour la création rapide d’une image Live customisée avec le bureau MATE. Ceci est basé sur la méthode pour Wheezy, avec quelques petites modifications.

sudo aptitude install live-build live-tools
mkdir jessie_live && cd jessie_live
mkdir auto && cp /usr/share/doc/live-build/examples/auto/* ./auto/

Editer le fichier auto/config pour qu’il contienne ceci :

#!/bin/sh

set -e

lb config noauto \
	--architectures 'i386' \
	--archive-areas 'main contrib non-free' \
	--bootappend-live 'boot=live config locales=fr_FR.UTF-8 keyboard-layouts=fr' \
	--binary-images 'iso-hybrid' \
	--distribution 'jessie' \
	--linux-flavours '586 686-pae amd64' \
	--source 'false' \
	"${@}"

Entrer la commande lb config, puis aller éditer le fichier config/package-lists/live.list.chroot et ajouter les paquets désirés. Je propose ceci :

live-boot
live-config
live-config-systemd
vlc mdadm rdesktop conky nmap rcconf network-manager-gnome firmware-linux firmware-atheros firmware-b43-installer firmware-bnx2x firmware-brcm80211 firmware-intelwimax firmware-ipw2x00 firmware-ivtv firmware-iwlwifi firmware-libertas firmware-myricom firmware-netxen firmware-qlogic firmware-ralink firmware-realtek gparted hfsprogs ntfs-3g hfsplus hfsutils dosfstools hplip system-config-printer xsane simple-scan lightdm mate-desktop-environment bash-completion chntpw caja-open-terminal dcfldd bootlogd less mesa-utils numlockx ethtool grub2 mesa-utils ssh gdisk testdisk python-tk iftop nethogs pm-utils dmraid chromium engrampa unrar pluma aptitude apt-file chromium-l10n smartmontools debootstrap pciutils usbutils cifs-utils e2fsprogs mtools screen pulseaudio pavucontrol pavumeter mate-media-pulse gstreamer0.10-pulseaudio mate-settings-daemon-pulse lvm2

Puis entrer la commande sudo lb build.

A noter qu’il est possible de décomposer la commande sudo lb build en la succession suivante :

sudo lb bootstrap
sudo lb chroot
sudo lb binary

Il est possible d’aller modifier/ajouter manuellement des fichiers entre l’étape chroot et l’étape binary. Par exemple, pour créer /home/user/ , /home/user/Bureau/ et y ajouter des fichiers, qui seront disponibles directement sur le bureau du live.

Si on souhaite recommencer la création du live, on peut utiliser la commande sudo lb clean qui ne conserve que le cache des paquets, du bootstrap et la config. On peut aussi utiliser les options --binary ou bien --chroot pour conserver les étapes antérieures.

30 Aug 2013, 00:00

Création rapide d'une image live de Debian Wheezy avec le bureau Mate

Grâce au paquet live-build, on peut aisément construire une image personnalisée d’un système live Debian Wheezy. Ceci a été réalisé sous Wheezy en 64 bits, et je souhaitais obtenir une image i386 (pour la compatibilité avec le maximum d’ordinateurs à des fins de dépannage).

Première étape : installer le paquet :

sudo aptitude install live-build

créer un dossier dedié à la construction de l’image et aller dedans :

mkdir debian_live && cd debian_live

créer un dossier auto pour la conf, et y coller les exemples :

mkdir auto && cp /usr/share/doc/live-build/examples/auto/* ./auto/

Préparer la configuration en éditant le fichier auto/config pour qu’il contienne ceci

#!/bin/sh

lb config noauto \
    --architectures 'i386' \
    --archive-areas 'main contrib non-free' \
    --bootappend-live 'boot=live config locales=fr_FR.UTF-8 keyboard-layouts=fr' \
    --binary-images 'iso-hybrid' \
    --distribution 'wheezy' \
    --linux-flavours '486 686-pae' \
    --source 'false' \
    --apt 'aptitude' \
    --apt-secure 'false' \
    "${@}"

le --apt-secure 'false' permet d’installer les paquets non-signés pour installer mate.

Puis on initie la configuration :

lb config

Les infos sont récuperées du fichier que l’on vient d’éditer.

Il faut ensuite ajouter les dépôts additionnels ; dans mon exemple celui de Mate, mais cela peut être n’importe quel dépôt. pour cela, créer le fichier

nano ./config/archives/mate.list.chroot

et copier dedans l’adresse du dépôt

deb http://packages.mate-desktop.org/repo/debian/ wheezy main

Ce(s) fichier(s) doit être de la forme xxxx.list.chroot pour être pris en compte automatiquement lors de la construction de l’image (à l’étape du chroot). Il est aussi possible de nommer un fichier xxx.list.binary si l’on souhaite que le dépôt se retrouve dans le sources.list du système live.

Nous spécifions ensuite la liste des paquets que nous souhaitons voir installés dans le système, grâce au fichier :

nano ./config/package-lists/packages.list.chroot

dans lequel nous collons la liste de tous les paquets souhaités. Par exemple :

vlc openoffice.org  openoffice.org-l10n-fr openjdk-7-jre mdadm  rdesktop conky nmap rcconf network-manager-gnome firmware-linux firmware-atheros firmware-b43-installer firmware-bnx2 firmware-bnx2x firmware-brcm80211 firmware-intelwimax firmware-ipw2x00 firmware-ivtv firmware-iwlwifi firmware-libertas firmware-myricom firmware-netxen firmware-qlogic firmware-ralink firmware-realtek gparted hfsprogs ntfs-3g hfsplus hfsutils dosfstools hplip system-config-printer xsane simple-scan lightdm mate-desktop-environment bash-completion chntpw caja-open-terminal clamav dcfldd bootlogd less mesa-utils numlockx ethtool grub2 mesa-utils ssh gdisk testdisk python-tk iftop nethogs pm-utils dmraid unrar

De la même manière, le format doit respecter la syntaxe xxx.list.chroot pour être pris en compte lors de la construction de l’image.

Puis on peut lancer la construction à proprement parler, en root :

sudo lb build

Qui amène à la création d’un fichier binary.hybrid.iso dans le dossier courant, prêt à être gravé sur cd ou dumpé sur clé usb avec la commande

dd if=./binary.hybrid.iso of=/dev/sdX

Pour plus d’infos, ne pas oublier de consulter les mans :

man live-build
man lb config