pense-bête de bruno sanchiz

Accueil > Linux > installation d’un linux ou mises à jour > créer sa propre clé usb bootable

créer sa propre clé usb bootable

Publié le 24 juin 2017, dernière mise-à-jour le 23 juillet 2024, 28 visites, visites totales.

Tout se fait en root :

  • ouvrir un terminal
  • passer en root ( su root sur debian et sudo -s sur ubuntu , puis MotDePasse )
  • Copier/coller tout le bloc et appuyer sur la touche .
  • copier l’iso sur la clé
    • soit avec ventoy
    • soit tout seul sur une clé ( la clé sera effacée )
      On repère la clé appelée ici /dev/sdz ( dmesg |grep sd peut aider )
      On démonte éventuellement les partitions
      puis on copie sur la clé : cp live-image-amd64.hybrid.iso /dev/sdz && sync && eject /dev/sdz

installation des programmes : apt-get -y install live-build live-boot live-config


Installation d’une debian12 minimale

  1. mkdir debian12/ && cd debian12/ && lb clean && lb config&&sed "s#bullseye#bookworm#"  -i config/bootstrap && sed "s#main#main contrib non-free non-free-firmware#"  -i config/bootstrap && sed "s#bullseye#bookworm#"  -i config/binary && lb build

Installation d’une debian12 minimale persistente

Pour l’instant non automatisée

  1. faire l’installation comme dans Installation d’une debian12 minimale
  2. on eject puis remet la clé ; on l’appelera /dev/sdz
  3. umount /dev/sdz1 /dev/sdz2
  4. Créer une 3ème partition sur la clé, par exemple fdisk /dev/sdz puis n puis p puis 3 fois entrée ( puis parfois O ) puis w puis partprobe /dev/sdz && eject /dev/sdz)
  5. on débranche on rebranche
  6. mkfs.ext4 -L persistence /dev/sdz3 entrée plusieurs fois
  7. mkdir -p /media/aa && mount /dev/sdz3 /media/aa && echo "/ union" > /media/aa/persistence.conf && umount /media/aa && eject /dev/sdz
  8. Ensuite, à chaque démarrage, au moment du menu de démarrage, presser la touche Tab ⇆ pour "Tabulation" et ajouter le mot persistence après splash

Installation d’une debian12 cinnamon avec installateur et memtest (07/2024)

mkdir -p debian12/ && cd debian12/ && lb clean && lb config ; 

echo "task-cinnamon-desktop lightdm task-french-desktop task-french" >> config/package-lists/cinnamon.list.chroot ; 
echo debian-installer-launcher >> config/package-lists/installer.list.chroot ; 
echo "memtest86+" >> config/package-lists/linux.list.chroot ; 

sed -e "s#bullseye#bookworm#" -e "s#main#main contrib non-free non-free-firmware#"  -i config/bootstrap ; 
sed -e "s#bullseye#bookworm#" -e 's#LB_MEMTEST="none"#LB_MEMTEST="memtest86+"#' -i config/binary ; 

echo debian-installer-launcher >> config/package-lists/my.list.chroot ; 
sed 's#^LB_DEBIAN_INSTALLER=".*#LB_DEBIAN_INSTALLER="live"#' -i config/binary;
sed 's#^LB_IMAGE_NAME=".*#LB_IMAGE_NAME="bruno_bookworm"#' -i  config/common;
echo calamares >> config/package-lists/my.list.chroot;
echo calamares-settings-debian >> config/package-lists/my.list.chroot;
echo geeqie >> config/package-lists/live.list.chroot;
lb config && lb build

Installation d’une debian12 cinnamon persistente

mkdir -p debian12/ && cd debian12/ && lb clean && lb config ; cp /usr/share/doc/live-build/examples/auto/* auto/
remplacer le contenu de auto/config par :

#!/bin/sh

set -e

lb config noauto \
	--distribution bookworm \
	--archive-areas "main contrib non-free non-free-firmware" \
	--mirror-bootstrap "http://deb.debian.org/debian/" \
	--mirror-chroot-security "http://security.debian.org/" \
	--mirror-binary "http://deb.debian.org/debian/" \
	--mirror-binary-security "http://security.debian.org/" \
	--bootappend-live "boot=live persistence locales=fr_FR.UTF-8 keyboard-layouts=fr" \
	--bootappend-install "locales=fr_FR.UTF-8" \
	--debian-installer live \
	"${@}"

echo "task-cinnamon-desktop lightdm task-french-desktop task-french" >> config/package-lists/cinnamon.list.chroot ; echo debian-installer-launcher >> config/package-lists/installer.list.chroot ; echo "memtest86+" >> config/package-lists/linux.list.chroot ; sed -e "s#bullseye#bookworm#" -e "s#main#main contrib non-free non-free-firmware#"  -i config/bootstrap ; sed -e "s#bullseye#bookworm#" -e 's#LB_MEMTEST="none"#LB_MEMTEST="memtest86+"#' -i config/binary ; lb config && lb build

on ejecte puis remet la clé ; on l’appelera /dev/sdz
umount /dev/sdz1 /dev/sdz2
-# Créer une 3ème partition sur la clé, par exemplefdisk /dev/sdzpuis n puis p puis 3 fois {{entrée}} ( puis parfois O ) puis w puispartprobe /dev/sdz && eject /dev/sdz) -# on débranche on rebranche -#mkfs.ext4 -L persistence /dev/sdz3{{entrée}} plusieurs fois -#mkdir -p /media/aa && mount /dev/sdz3 /media/aa && echo "/ union" > /media/aa/persistence.conf && umount /media/aa && eject /dev/sdz----- [debian12Mate<-] {{{Installation d'une debian12 mate}}}mkdir -p debian12/ && cd debian12/ && lb clean && lb config ; echo "task-mate-desktop lightdm task-french-desktop task-french" >> config/package-lists/mate.list.chroot ;sed -e "s#bullseye#bookworm#" -e "s#main#main contrib non-free non-free-firmware#" -i config/bootstrap ; lb config && lb build`


à tester : https://itsfoss.com/ubuntu-persistent-live-usb/
très utile : https://manpages.debian.org/unstable/live-build/lb_config.1.en.html


Installation d’une debian10 amd64 cinnamon

mkdir debian10Amd64MinimaleCinnamon-Build/
cd debian10Amd64MinimaleCinnamon-Build/
lb config && cp /usr/share/doc/live-build/examples/auto/* auto/
lb config

Ajouter à auto/config avant "$@" ( vi auto/config )

--distribution buster \
--archive-areas "main contrib non-free" \
--mirror-bootstrap http://ftp.crihan.fr/debian/ \
--mirror-chroot-security http://security.debian.org/ \
--mirror-binary http://ftp.crihan.fr/debian/ \
--mirror-binary-security http://security.debian.org/ \
--bootappend-live "boot=live persistence locales=fr_FR.UTF-8 keyboard-layouts=fr" \
--bootappend-install "locales=fr_FR.UTF-8" \
--debian-installer live \

Haut de la page
clé debian9 amd64 minimale : 1,4Go
Commencer par mkdir debian9amd64Minimale-Build && cd debian9amd64Minimale-Build/ && lb config && cp /usr/share/doc/live-build/examples/auto/* auto/

Ajouter à auto/config avant "$@"

--distribution stretch \ 
--archive-areas "main contrib non-free" \ 
--mirror-bootstrap http://ftp.crihan.fr/debian/ \
--mirror-chroot-security http://security.debian.org/ \
--mirror-binary http://ftp.crihan.fr/debian/ \
--mirror-binary-security http://security.debian.org/ \ 
--bootappend-live "boot=live persistence locales=fr_FR.UTF-8 keyboard-layouts=fr" \ 
--bootappend-install "locales=fr_FR.UTF-8" \ 
--debian-installer live \

# linux-wlan-ng-firmware firmware-ivtv
lb config && lb build

On copie sur la clé qu’on suppose être /dev/sdg ( dmesg | tail -n 10 aide ) :
cp live-image-amd64.hybrid.iso /dev/sdg && sync
Ensuite, créer une partition, par exemple /dev/sdg3 ( avec fdisk /dev/sdg puis n puis w puis partprobe /dev/sdg && eject /dev/sdg) ; on débranche on rebranche uis mkfs.ext4 -L persistence /dev/sdg3
Pour finir, on va créer un fichier persistence.conf et par exemple, mkdir -p /media/persistence ;  mount -t ext4 /dev/sdg3 /media/persistence ; echo -e "/ union\n" >> /media/persistence/persistence.conf



Haut de la page
clé debian9 amd64 ultra minimale
Commencer par mkdir debian9amd64Minimale-Build && cd debian9amd64Minimale-Build/ && lb config && cp /usr/share/doc/live-build/examples/auto/* auto/

Ajouter à auto/config avant "$@"

--distribution stretch \ 
--archive-areas "main contrib non-free" \ 
--mirror-bootstrap http://ftp.crihan.fr/debian/ \
--mirror-chroot-security http://security.debian.org/ \
--mirror-binary http://ftp.crihan.fr/debian/ \
--mirror-binary-security http://security.debian.org/ \ 
--bootappend-live "boot=live persistence locales=fr_FR.UTF-8 keyboard-layouts=fr" \ 
--bootappend-install "locales=fr_FR.UTF-8" \ 
--debian-installer live \

lb config && lb build

On copie sur la clé qu’on suppose être /dev/sdg ( dmesg | tail -n 10 aide ) :
cp live-image-amd64.hybrid.iso /dev/sdg && sync
Ensuite, créer une partition, par exemple /dev/sdg3 ( avec fdisk /dev/sdg puis n puis w puis q ) puis mkfs.ext4 -L persistence /dev/sdg3
Pour finir, on va créer un fichier persistence.conf et par exemple, mkdir -p /media/persistence ;  mount -t ext4 /dev/sdg3 /media/persistence ; echo -e "/ union\n" >> /media/persistence/persistence.conf


Haut de la page
clé debian9 amd64 mate

Commencer par mkdir Debian9Amd64-Build && cd Debian9Amd64-Build/ && lb config && cp /usr/share/doc/live-build/examples/auto/* auto/

Ajouter à auto/config avant "$@"

--distribution stretch \ 
--archive-areas "main contrib non-free" \ 
--mirror-bootstrap http://deb.debian.org/debian/ \
--mirror-chroot-security http://security.debian.org/ \
--mirror-binary http://deb.debian.org/debian/ \
--mirror-binary-security http://security.debian.org/ \ 
--bootappend-live "boot=live persistence locales=fr_FR.UTF-8 keyboard-layouts=fr" \ 
--bootappend-install "locales=fr_FR.UTF-8" \ 
--debian-installer live \
  • on indique les paquets à installer, en particulier lightdm task-mate-desktop task-french-desktop task-french qui comprennent des paquets tout prêts
    echo "lightdm task-mate-desktop task-french-desktop task-french" >> config/package-lists/mate.list.chroot
    echo "deb http://ftp.crihan.fr/debian/ stretch-updates main contrib non-free" >> config/archives/updates.list.chroot
echo debian-installer-launcher >> config/package-lists/installer.list.chroot

echo "INDISPENSABLES firmware" ;  echo  firmware-atheros firmware-b43-installer firmware-b43legacy-installer firmware-bnx2 firmware-bnx2x firmware-brcm80211 firmware-crystalhd firmware-intelwimax firmware-ipw2x00 firmware-ivtv firmware-iwlwifi firmware-libertas firmware-linux firmware-linux-free firmware-linux-nonfree firmware-misc-nonfree firmware-myricom firmware-netxen firmware-qlogic firmware-realtek firmware-samsung firmware-ti-connectivity firmware-zd1211 >>  config/package-lists/linux.list.chroot# firmware-ralink linux-wlan-ng-firmware 

echo "INDISPENSABLES programmes système - 0,9 Go " ;  echo  build-essential fail2ban gparted gsmartcontrol hardinfo linux-headers-amd64 linux-source lshw lshw-gtk nmap pavucontrol rfkill smartmontools open-sshserver >>  config/package-lists/linux.list.chroot

echo "INDISPENSABLES sécurité informatique" ;  echo  rkhunter chkrootkit fail2ban >>  config/package-lists/linux.list.chroot

echo "INDISPENSABLES" ;  echo  binutils secure-delete apt-file rar p7zip-full rar unrar p7zip-rar ntfs-3g unrar-free unace >>  config/package-lists/linux.list.chroot

echo "imprimante scanner - 1,0 Go " ;  echo  cups cups-browsed cups-bsd cups-client cups-common cups-core-drivers cups-daemon cups-filters cups-filters-core-drivers cups-pdf cups-pk-helper cups-ppdc cups-server-common printer-driver-cups-pdf printer-driver-hpcups python-cups printer-driver-cjet system-config-printer xsane simple-scan >>  config/package-lists/linux.list.chroot#cups-driver-gutenprint python-cupshelpers >>  config/package-lists/linux.list.chroot

echo "INDISPENSABLES si mate - 1,5 Go " ;  echo  caja-extensions-common caja-share mate-desktop-environment-extra mate-desktop-environment-extras >>  config/package-lists/linux.list.chroot

echo "GRAVURE - 1,2 Go ";  echo  bc brasero brasero-cdrkit k3b kamera normalize-audio sox vcdimager vorbis-tools  >>  config/package-lists/linux.list.chroot# transcode >>  config/package-lists/linux.list.chroot

echo "FONTS POLICES - 2,9 Go " ; echo  fontconfig fontconfig-config fontforge fontforge-common fonts-cabin fonts-cantarell fonts-comfortaa fonts-crosextra-caladea fonts-crosextra-carlito fonts-dancingscript fonts-dejavu fonts-dejavu-core fonts-dejavu-extra fonts-droid-fallback fonts-dustin fonts-ebgaramond fonts-ebgaramond-extra fonts-font-awesome fonts-freefont-otf fonts-freefont-ttf fonts-gfs-artemisia fonts-gfs-complutum fonts-gfs-didot fonts-gfs-neohellenic fonts-gfs-olga fonts-gfs-solomos fonts-inconsolata fonts-junicode fonts-lato fonts-liberation fonts-linuxlibertine fonts-lmodern fonts-lobster fonts-lobstertwo fonts-lohit-mlym fonts-lyx fonts-maitreya fonts-manchufont fonts-misaki fonts-mlym fonts-mona fonts-monapo fonts-motoya-l-cedar fonts-motoya-l-maruberi fonts-mph-2b-damase fonts-mplus fonts-ocr-a fonts-oflb-asana-math fonts-opensymbol fonts-samyak-mlym fonts-sil-gentium fonts-sil-gentium-basic fonts-smc fonts-stix fonts-texgyre fonts-unfonts-core gsfonts gsfonts-x11 texlive-font-utils texlive-fonts-extra texlive-fonts-extra-doc texlive-fonts-recommended texlive-fonts-recommended-doc ttf-mscorefonts-installer ttf-sjfonts xfonts-100dpi xfonts-75dpi xfonts-base xfonts-encodings xfonts-scalable xfonts-utils >>  config/package-lists/linux.list.chroot# fonts-mgopen texmacs-extra-fonts >>  config/package-lists/linux.list.chroot

echo "VIDEO AUDIO - 1,5Go" ;  echo  browser-plugin-vlc cheese faac ffmpeg ffmpeg2theora gaupol libvdpau1 libvdpau-va-gl1 mesa-vdpau-drivers mplayer2 nvidia-vdpau-driver rtmpdump vdpauinfo vdpau-va-driver vlc vlc-nox vlc-plugin-fluidsynth vlc-plugin-jack vlc-plugin-sdl x264 xine-ui vorbis-tools vlc-plugin-svg vlc-plugin-vlsub libde265-0 vlc-plugin-access-extra >>  config/package-lists/linux.list.chroot# libgstreamer-plugins-bad1.0 libx264-146 vlc-plugin-pulse avidemux-qt mencoder >>  config/package-lists/linux.list.chroot

echo "VIDEO editing"; echo  kdenlive lives pitivi frei0r-plugins openshot handbrake >>  config/package-lists/linux.list.chrootecho 'VIDEO teletext';  echo  vlc-plugin-zvbi >>  config/package-lists/linux.list.chrootecho "nvidia - 1,3 Go "; #  echo  nvidia-alternative nvidia-cg-dev nvidia-cg-doc nvidia-cg-toolkit nvidia-cuda-doc nvidia-cuda-mps nvidia-detect nvidia-driver nvidia-driver-bin nvidia-installer-cleanup nvidia-kernel-common nvidia-kernel-dkms nvidia-kernel-source nvidia-legacy-304xx-alternative nvidia-legacy-304xx-driver nvidia-legacy-304xx-kernel-dkms nvidia-legacy-304xx-kernel-source nvidia-libopencl1 nvidia-modprobe nvidia-opencl-common nvidia-opencl-icd nvidia-settings nvidia-settings-legacy-304xx nvidia-smi nvidia-support nvidia-vdpau-driver nvidia-xconfig nvidia-detect xserver-xorg-video-nvidia.* >>  config/package-lists/linux.list.chroot# nvidia-cuda-dev nvidia-cuda-gdb nvidia-cuda-toolkit nvidia-kernel-3.16.0-4-amd64 nvidia-kernel-amd64 nvidia-glx nvidia-kernel-dummy nvidia-opencl-dev nvidia-nsight nvidia-profiler nvidia-visual-profiler >>  config/package-lists/linux.list.chroot  >>  config/package-lists/linux.list.chrootecho "ati rien n existe";  echo  xserver-xorg-video-ati #  echo  fglrx-driver glx-alternative-fglrx libgl1-fglrx-glx fglrx-ati.* fglrx-modules-dkms fglrx-control libfglrx-amdxvba1 fglrx-driver fglrx-atieventsd glx-alternative-fglrx libgl1-fglrx-glx fglrx-modules-dkms glx-diversions libgl1-nvidia-glx >>  config/package-lists/linux.list.chroot

echo "PROGRAMMATION - 2,1 Go ";  echo  doxygen geany-plugin.* geany-plugin.* git-core jython libboost1.48 libqt4-opengl libqt5core5a libqtcore4 libqtcore4 libsfml-dev libtool opencv-data php-db pyqt5-doc python3 python3-djvu python3-httplib2 python3-mysql.connector python3-mysql.connector python3-opengl python3-pyqt4 python3-pyqt4.phonon python3-pyqt4.qtopengl python3-pyqt5 python3-pyqt5.qtopengl python3-pyside.phonon python3-requests python3-sfml python-cups python-djvu python-eventlet python-glade2 python-httplib2 python-mutagen python-mysql.connector python-mysql.connector python-numpy python-opencv python-opengl python-opengl python-opengl python.*phonon python.*phonon python-pyqt5 python-pyside.phonon python-pythonmagick python-qt.* python-qt.* python-qt4 python-qt4 python-qt4.* python-qt4-doc python-qt4-gl python-qt4-gl python-qt4-phonon python-requests python-sfml.* python-sfml-doc qt4-designer qt5-qmake qtcore.* qtcore4-l10n software-properties-common sqlite3 vim-common >>  config/package-lists/linux.list.chroot# libcsfml-audio2 libcsfml-graphics2 libcsfml-network2 libcsfml-system2 libcsfml-window2 php5-sqlite python-cupshelpers python-software-properties >>  config/package-lists/linux.list.chrootecho "programmes système" ;  echo  autoconf bc build-essential debconf gdm3 hardinfo htop hugin lsb-base mbr mtools pavucontrol rfkill screen screen secure-delete subversion subversion syslinux >>  config/package-lists/linux.list.chroot

echo "french - 1,3 Go";  echo  aspell-fr developers-reference-fr dict-freedict-bre-fra dict-freedict-eng-fra doc-debian-fr firefox-esr-l10n-fr hunspell-fr ifrench-gut libreoffice-help-fr libreoffice-l10n-fr maint-guide-fr manpages-fr mythes-fr task-french task-french-desktop tesseract-ocr-fra  thunderbird-l10n-fr wfrench >>  config/package-lists/linux.list.chroot 

echo "LATEX - 3,6 Go ";  echo  texlive-lang-french fonts-dancingscript latex2html tex-common tex-gyre texinfo texlive texlive-base texlive-bibtex-extra texlive-binaries texlive-extra-utils texlive-fonts-extra texlive-fonts-recommended texlive-fonts-recommended-doc texlive-font-utils texlive-generic-recommended texlive-lang-cyrillic texlive-lang-french texlive-latex-base texlive-latex-base-doc texlive-latex-extra texlive-latex-extra-doc texlive-latex-recommended texlive-latex-recommended-doc texlive-luatex texlive-math-extra texlive-omega texlive-pictures texlive-pictures-doc texlive-pstricks texlive-pstricks-doc texlive-science texmaker texmaker-data writer2latex writer2latex-manual >>  config/package-lists/linux.list.chroot# tex4ht-common texmacs-extra-fonts >>  config/package-lists/linux.list.chroot

echo "PHP5 APACHE2 mysql" ; #  echo  mysql-client mysql-common mysql-server mysql-server php-db php-db php-gettext phpmyadmin php-pear php-tcpdf python3-mysql.connector python-mysql.connector >>  config/package-lists/linux.list.chrootecho "PHP7 APACHE2 MARIADB" ; echo  php7.0-common mariadb-server mariadb-client apache2 php7.0-cli phpmyadmin >>  config/package-lists/linux.list.chroot#mysql-client-5.5 mysql-server-5.5 mysql-server-core-5.5 php5-cli php5-common php5-gd php5-json php5-mcrypt php5-mysql php5-readline php5-sqlite php5-sqlite >>  config/package-lists/linux.list.chrootecho "PHOTOS IMAGES - 1,2 Go " ;  echo  luminance-hdr geeqie gimp libjpeg-progs imagemagick mjpegtools gimagereader exiv2 gimp gimp-data gimp-data-extras gimp-gap gimp-texturize gimp-lensfun gimp-gutenprint gimp-gmic gtkam-gimp ufraw dcraw gmic gimp-dcraw >>  config/package-lists/linux.list.chroot#gimp-ufraw darktable >>  config/package-lists/linux.list.chrootecho "DIVERS - 1,5 Go " ; apt-get -d install scribus djview inkscape fdupes dia make libgtk2-gladexml-perl tesseract-ocr tesseract-ocr-fra thunderbird-l10n-fr thunderbird thunderbird-l10n-fr mesa-utils glew-utils openssh-server cups audacity alsamixergui lame cabextract mpgtx g++ git-core gimagereader gpscorrelate-gui transmission-gtk googleearth-package diffpdf diffutils fldiff >>  config/package-lists/linux.list.chroot#flashplugin-nonfree >>  config/package-lists/linux.list.chrootecho "tableau periodique des elements" ;  echo  bkchem libavogadro-dev mmass psi4-data qalculate-gtk kalzium >>  config/package-lists/linux.list.chrootecho "étoiles - 1,1 Go " ;  echo  celestia.* kstars.* yale starplot stellarium.* >>  config/package-lists/linux.list.chrootecho "java jre jdk -0,5 Go " ;  echo  java-common default-jre default-jdk java8.* >>  config/package-lists/linux.list.chroot#oracle-java8-installer oracle-java8-unlimited-jce-policy oracle-java8-set-default openjdk-7-jre >>  config/package-lists/linux.list.chrootecho "android" ;  echo  android-tools-adb >>  config/package-lists/linux.list.chrootecho "dictionnaires";  echo  stardict goldendict artha dict-freedict.*fra >>  config/package-lists/linux.list.chrootecho "openstreemap";  echo  josm osm2pgsql josm openstreetmap.* mkgmapgui mkgmap josm postgresql-contrib postgresql-server-dev.* mapcache-cgi viking >>  config/package-lists/linux.list.chroot# libopenlayer2 libjs-openlayerspostgresql-.*-postgis

Ensuite :

On copie sur la clé qu’on suppose être /dev/sdg ( dmesg | tail -n 10 aide )
cp live-image-amd64.hybrid.iso /dev/sdg && sync
Ensuite, créer une partition, par exemple /dev/sdg3 ( avec fdisk /dev/sdg puis n puis w puis q ) puis mkfs.ext4 -L persistence /dev/sdg3
Pour finir, on va créer un fichier persistence.conf et par exemple, mkdir -p /media/persistence ;  mount -t ext4 /dev/sdg3 /media/persistence ; echo -e "/ union\n" >> /media/persistence/persistence.conf


Haut de la page
clé debian9 i386 xfce

Ajouter à auto/config avant "$@"

--distribution stretch \ 
--archive-areas "main contrib non-free" \ 
--architecture i386 \
--linux-flavours 686-pae \
--mirror-bootstrap http://ftp.crihan.fr/debian/ \
--mirror-chroot-security http://security.debian.org/ \
--mirror-binary http://ftp.crihan.fr/debian/ \
--mirror-binary-security http://security.debian.org/ \ 
--bootappend-live "boot=live persistence locales=fr_FR.UTF-8 keyboard-layouts=fr" \ 
--bootappend-install "locales=fr_FR.UTF-8" \ 
--debian-installer live \

Voir article 179 pour les programmes à rajouter

echo "deb http://ftp.crihan.fr/debian/ stretch-updates main contrib non-free" >> config/archives/updates.list.chroot

echo "lightdm task-xfce-desktop xfce4-taskmanager xfce4-goodies" >> config/package-lists/xfce4.list.chroot

echo debian-installer-launcher >> config/package-lists/installer.list.chroot

echo "linux-source memtest86+" >> config/package-lists/linux.list.chroot

echo "firmware-atheros firmware-b43-installer firmware-b43legacy-installer firmware-bnx2 firmware-bnx2x firmware-brcm80211 firmware-crystalhd firmware-intelwimax firmware-ipw2x00 firmware-ivtv firmware-iwlwifi firmware-libertas firmware-linux firmware-linux-free firmware-linux-nonfree firmware-misc-nonfree   firmware-myricom firmware-netxen firmware-qlogic  firmware-realtek firmware-samsung firmware-ti-connectivity firmware-zd1211 " >> config/package-lists/firmware.list.chroot

echo "gparted gsmartcontrol hardinfo lshw lshw-gtk rfkill binutils  secure-delete   apt-file rar p7zip-full unrar  p7zip-rar  ntfs-3g  unrar-free unace  " >> config/package-lists/systeme.list.chroot

echo "cups  cups-pdf xsane  simple-scan">>config/package-lists/imprimante.list.chroot 

echo "vlc tesseract-ocr-fra geeqie gimp libjpeg-progs imagemagick mjpegtools gimagereader exiv2 gimp-data-extras gimp-dcraw fdupes audacity binutils secure-delete apt-file rar p7zip-full rar unrar p7zip-rar ntfs-3g unrar-free unace cups cups-browsed cups-bsd cups-client cups-common cups-core-drivers cups-daemon cups-filters cups-filters-core-drivers cups-pdf cups-pk-helper cups-ppdc cups-server-common printer-driver-cups-pdf printer-driver-hpcups python-cups printer-driver-cjet system-config-printer xsane simple-scan bc brasero brasero-cdrkit k3b kamera normalize-audio sox vcdimager vorbis-tools browser-plugin-vlc cheese faac ffmpeg ffmpeg2theora gaupol libvdpau1 libvdpau-va-gl1 mesa-vdpau-drivers mplayer2 nvidia-vdpau-driver rtmpdump vdpauinfo vdpau-va-driver vlc vlc-nox vlc-plugin-fluidsynth vlc-plugin-jack vlc-plugin-sdl x264 xine-ui vorbis-tools vlc-plugin-svg vlc-plugin-vlsub libde265-0 vlc-plugin-zvbi autoconf bc build-essential debconf  hardinfo htop hugin lsb-base mbr mtools pavucontrol rfkill screen screen secure-delete subversion subversion syslinux aspell-fr developers-reference-fr dict-freedict-bre-fra dict-freedict-eng-fra doc-debian-fr firefox-esr-l10n-fr hunspell-fr ifrench-gut libreoffice-help-fr libreoffice-l10n-fr maint-guide-fr manpages-fr mythes-fr task-french task-french-desktop tesseract-ocr-fra  thunderbird-l10n-fr wfrench mysql-client mysql-common mysql-server mysql-server php-db php-db php-gettext phpmyadmin php-pear php-tcpdf python3-mysql.connector python-mysql.connector luminance-hdr geeqie gimp libjpeg-progs imagemagick mjpegtools gimagereader exiv2 gimp gimp-data gimp-data-extras gimp-gap gimp-texturize gimp-lensfun gimp-gutenprint gimp-gmic gtkam-gimp ufraw dcraw gmic gimp-dcraw scribus djview inkscape fdupes dia make libgtk2-gladexml-perl tesseract-ocr tesseract-ocr-fra mesa-utils glew-utils openssh-server cups audacity alsamixergui lame cabextract mpgtx g++ git-core gimagereader gpscorrelate-gui transmission-gtk  diffpdf diffutils fldiff" >> config/package-lists/divers.list.chroot 
# texlive-lang-french googleearth-package icedove

lb config && lb build &&  mv live-image-i386.hybrid.iso debian9i386xfce.iso

on crée ainsi debian9i386xfce.iso et on copie cp debian9i386xfce.iso /dev/sdz && sync
login/mdp : user / live
La construction d’une image HDD est similaire à une ISO hybride à tous les regards, sauf que vous spécifiez -b hdd et le nom du fichier résultant est live-image-i386.img

Partition persistente :
créer une partition /dev/sde2 (fdisk ) puis
mkfs.ext4 -L persistence /dev/sde2
Pour finir, on va créer un fichier persistence.conf et par exemple, mkdir -p /media/persistence ;  mount -t ext4 /dev/sde2 /media/persistence ; echo -e "/ union n" >> /media/persistence/persistence.conf voir man 5 persistence.conf

test avec apt-get install qemu-kvm puis kvm -cdrom live-image-amd64.hybrid.iso

  1. docs
    1. file :///usr/share/doc/live-manual/html/live-manual/the-basics.fr.html#178
    2. https://yeuxdelibad.net/Logiciel-libre/Debian/Creer_sa_propre_distribution_avec_live-build.html
    3. créer une clé usb bootable persistante 12.04/14.04
    4. installation de linux : iso : créer une clé usb de boot
  2. problèmes :
    1. en cas de réutilisation de la clé des gparted(supprimer,tables de parition dos) ,fdisk et wipefs -a /dev/sde peuvent être utiles

https://debian-facile.org/utilisateurs:abdelqahar:tutos:live-build


Haut de la page
clé debian8 amd64 mate
Méthode :

  • on commence par créer un répertoire puis à initialiser lb
  • on installera la version jessie en live
  • on indique les paquets à installer, en particulier lightdm task-mate-desktop task-french-desktop task-french qui comprennent des paquets tout prêts
    mkdir CreerUnLive-Build && cd CreerUnLive-Build/ && lb config && cp /usr/share/doc/live-build/examples/auto/* auto/
    echo "lightdm task-mate-desktop task-french-desktop task-french" >> config/package-lists/mate.list.chroot
    # echo "lightdm task-xfce-desktop xfce4-taskmanager xfce4-goodies" >> config/package-lists/mate.list.chroot
    
    echo debian-installer-launcher >> config/package-lists/installer.list.chroot
    echo "firmware-atheros firmware-b43-installer firmware-b43legacy-installer firmware-bnx2 firmware-bnx2x firmware-brcm80211 firmware-crystalhd firmware-intelwimax firmware-ipw2x00 firmware-ivtv firmware-iwlwifi firmware-libertas firmware-linux firmware-linux-free firmware-linux-nonfree firmware-myricom firmware-netxen firmware-qlogic firmware-ralink firmware-realtek firmware-samsung firmware-ti-connectivity firmware-zd1211 linux-wlan-ng-firmware" >> config/package-lists/firmwares.list.chroot
    echo "x11vnc openssh-server xtightvncviewer" >> config/package-lists/firmwares.list.chroot
    echo "deb http://ftp.crihan.fr/debian/ jessie-updates main contrib non-free" >> config/archives/updates.list.chroot
    echo "linux-source linux-kbuild-$(uname -r |sed 's/^\([0-9]*\.[0-9]*\)\..*/\1/') linux-image-amd64  linux-headers-amd64" >> config/package-lists/linux.list.chroot
    echo "gparted gsmartcontrol hardinfo lshw lshw-gtk rfkill binutils  secure-delete   apt-file rar p7zip-full unrar  p7zip-rar  ntfs-3g  unrar-free unace  " >> config/package-lists/systeme.list.chroot
    echo "cups cups-driver-gutenprint cups-pdf xsane  simple-scan">>config/package-lists/imprimante.list.chroot 
    echo "mate-desktop-environment-extra mate-desktop-environment-extras" >> config/package-lists/mate.list.chroot 
    echo "vlc tesseract-ocr-fra geeqie gimp libjpeg-progs imagemagick mjpegtools  gimagereader exiv2 gimp-data-extras gimp-dcraw fdupes audacity  " >> config/package-lists/divers.list.chroot 

    Ajouter à auto/config avant "$@"

    --distribution jessie \ 
    --archive-areas "main contrib non-free" \ 
    --mirror-bootstrap http://ftp.crihan.fr/debian/ \
    --mirror-chroot-security http://security.debian.org/ \
    --mirror-binary http://ftp.crihan.fr/debian/ \
    --mirror-binary-security http://security.debian.org/ \ 
    --bootappend-live "boot=live locales=fr_FR.UTF-8 keyboard-layouts=fr" \ 
    --bootappend-install "locales=fr_FR.UTF-8" \ 
    --debian-installer live \

    enfin

lb config && lb build

on crée ainsi live-image-amd64.hybrid.iso de 1,3Go et on copie cp live-image-amd64.hybrid.iso /dev/sdz && sync
login/mdp : user / live
La construction d’une image HDD est similaire à une ISO hybride à tous les regards, sauf que vous spécifiez -b hdd et le nom du fichier résultant est live-image-i386.img

Partition persistente :
créer une partition /dev/sde2 (fdisk ) puis
mkfs.ext4 -L persistence /dev/sde2
Pour finir, on va créer un fichier persistence.conf et par exemple, mkdir -p /media/persistence ;  mount -t ext4 /dev/sde2 /media/persistence ; echo -e "/ union \n" >> /media/persistence/persistence.conf voir man 5 persistence.conf

test avec apt-get install qemu-kvm puis kvm -cdrom live-image-amd64.hybrid.iso

  1. docs
    1. file :///usr/share/doc/live-manual/html/live-manual/the-basics.fr.html#178
    2. https://yeuxdelibad.net/Logiciel-libre/Debian/Creer_sa_propre_distribution_avec_live-build.html
    3. créer une clé usb bootable persistante 12.04/14.04
    4. installation de linux : iso : créer une clé usb de boot
  2. problèmes :
    1. en cas de réutilisation de la clé des gparted(supprimer,tables de parition dos) ,fdisk et wipefs -a /dev/sde peuvent être utiles

Haut de la page

MÉTHODE GÉNÉRALE

utilisation :

  • pour toutes les utilisations on copies collera dans le terminal

    en cas d’erreur, effacer le répertoire CreerUnLive-Build :

  • rm -r CreerUnLive-Build
  • on rajoute des infos dans auto/config avant "$@"
  • on pose des miroirs dans config/archives/machin.list[.binary|.chroot]
  • on rajoute des programmes dans des fichiers config/package-lists/machin.list[.binary|.chroot|.chroot_live|.chroot_install]
  • lb config && lb build
  • on a alors un iso : live-image-i386.hybrid.iso ou live-image-amd64.hybrid.iso
    • clé usb : cp machin.iso /dev/sdh && sync
    • cdrom : xorriso -as cdrecord -v dev=/dev/sr0 blank=as_needed machin.iso
      remarque : si on a déjà essayé un lb build, commencer par un lb clean
      remarque : .chroot signifie installer le programme ; .binary signifie mettre le .deb dans le répertoire pool ; .chroot_live et .chroot_install sont installés puis enlevés

      exemple de configurations dans auto/config



DOC : manuel internet ou manuel local

créer une clé uefi
https://wiki.archlinux.org/index.php/Multiboot_USB_drive#Arch_Linux


Haut de la page

ARCHIVES


persistence 1.0

comme live-build 1.0 mais :
--bootappend-live "persistence" ou --bootappend-live "boot=live persistence locales=fr_FR.UTF-8 keyboard-layouts=fr" \ dans auto/config ou avec lb config
mkfs.ext4 -L persistence /dev/sde2
Pour finir, on va créer un fichier persistence.conf et par exemple, mount -t ext4 /dev/sde2 /media/persistence ; echo -e "/ union\n" >> /media/persistence/persistence.conf voir man 5 persistence.conf

live-build 1.0

mkdir CreerUnLive-Build && cd CreerUnLive-Build/ && lb config && cp /usr/share/doc/live-build/examples/auto/* auto/

echo "lightdm task-mate-desktop task-french-desktop task-french" >> config/package-lists/my.list.chroot

echo "deb http://ftp.crihan.fr/debian/ jessie-updates main contrib non-free" >> config/archives/br.list.chroot

Ajouter à auto/config avant "${@}"

--distribution jessie \ 
--archive-areas "main contrib non-free" \ 
--mirror-binary http://ftp.crihan.fr/debian/ --mirror-binary-security http://security.debian.org/ \ 
--bootappend-live "boot=live locales=fr_FR.UTF-8 keyboard-layouts=fr" \ 
--bootappend-install "locales=fr_FR.UTF-8" \ 

Enfin
lb config && lb build

live-build 0.0

  • apt-get install live-build live-boot live-config ;echo "#live-boot-doc live-tools live-config-doc live-manual-html live-manual"

mkdir CreerUnLive-Build && cd CreerUnLive-Build/ && lb config  && lb build : 40min / 17min
on crée ainsi live-image-amd64.hybrid.iso et on copie cp live-image-amd64.hybrid.iso /dev/sdz && sync
login/mdp : user / live
La construction d’une image HDD est similaire à une ISO hybride à tous les regards, sauf que vous spécifiez -b hdd et le nom du fichier résultant est live-image-i386.img

test avec apt-get install qemu-kvm puis kvm -cdrom live-image-amd64.hybrid.iso

  • chaque utilisation :
lb clean && mkdir -p config/package-lists 
lb config --distribution jessie
lb config --archive-areas "main contrib non-free"
lb config --mirror-binary http://ftp.crihan.fr/debian/ --mirror-binary-security http://security.debian.org/ 
echo "deb http://ftp.crihan.fr/debian/ jessie-updates main contrib non-free" >> config/archives/br.list.chroot
echo "lightdm task-mate-desktop task-french-desktop task-french" >> config/package-lists/my.list.chroot
lb config --bootappend-live "boot=live components locales=fr_FR.UTF-8 keyboard-layouts=fr"
lb build
  1.  constructions plus rapides : n’a pas marché
    apt-get install apt-cacher-ng
    /etc/init.d/apt-cacher-ng start
    export http_proxy=http://localhost:3142/
    .... # setup and configure your live build
    lb config --apt-http-proxy http://127.0.0.1:3142/
    lb build

aide du debug : Most notably, if you change —architectures from the default i386 to amd64, you must change the corresponding option —linux-flavours from the default 586 to amd64.

Burning an ISO image to a physical medium
Burning an ISO image is easy. Just install xorriso and use it from the command-line to burn the image. For instance :
# apt-get install xorriso
$ xorriso -as cdrecord -v dev=/dev/sr0 blank=as_needed live-image-i386.hybrid.iso

script exclamation point indicates a command to be executed within the chroot when the image is built

plusieurs kernels When more than one kernel package version is available [..]

$ lb config --linux-packages linux-image-3.18.0-trunk
$ echo "deb http://ftp.debian.org/debian/ experimental main" > config/archives/experimental.list.chroot

le répertoire config/includes.chroot correspond au slash / dans le live

le répertoire config/includes.binary/ correspond au slash / dans la clé usb gravée

configuration des groupes : config/includes.chroot/etc/live/config/user-setup.conf: LIVE_USER_DEFAULT_GROUPS="audio cdrom dip floppy video plugdev netdev powerdev scanner bluetooth fuse"

Using persistence with encryption

noms de l’iso ISO metadata

[bruno sanchiz]