Contenu du live-CD

J'ai modifié le live-CD Desktop Ubuntu 12.04 amd64 de la façon suivante :

  • Démarrage d'un serveur ssh.
  • Support lvm2.
  • Suppression du démarrage de l'interface graphique.
  • J'ai laissé la configuration utilisateur par défaut, ainsi le live-CD répond à l'utilisateur ubuntu sans mot de passe.

Pour réaliser ces modifications j'ai suivi les instructions présentes sur le site ubuntu-fr.org.

Prise en main à distance du live-CD

Si le PC portable est bien configuré pour booter sur le CD alors on peut ouvrir une session ssh pour prendre en main à distance ce PC portable. Pour connaitre l'adresse attribuée au PC portable 2 solutions :

  • Soit à l'aide de la console d'administration de la box internet on peut retrouver la liste des machines connectées sur le réseau avec leur adresse.
  • Soit à l'aide de nmap on peut scanner le réseau local et détecter les adresses répondant au service ssh.

Installation d'Ubuntu avec chroot

Sur le site ubuntu-fr.org la page debootstrap indique comment installer un système fonctionnel avec cette commande. Pour ma part j'ai utilisé la procédure suivante :

Installation des paquets nécessaires à l'installation

Le live-CD ne contient pas les paquets nécessaires à l'installation qu'il convient d'installer à l'aide des commandes suivantes :

  • sudo apt-get update
  • sudo apt-get install debootstrap

Montage des disques

Après avoir défini et formaté les partitions, il faut monter les partitions avec les commandes suivantes :

  • sudo mount /dev/sda2 /mnt
  • sudo mkdir /mnt/boot
  • sudo mount /dev/sda1 /boot

Lancement de l'installation

L'installation de la version 15.10 (Wily Werewolf) est effecutée avec la commande suivante :

  • sudo debootstrap --include ubuntu-minimal --arch amd64 wily /mnt http://archive.ubuntu.com/ubuntu

Démarrage de chroot

Avant de démarrer chroot il faut monter les systèmes de fichiers suivants pour accéder aux périphériques et autres données système :

  • sudo mount --bind /dev /mnt/dev
  • sudo mount --bind /dev/pts /mnt/dev/pts
  • sudo mount --bind /proc /mnt/proc
  • sudo mount --bind /sys /mnt/sys

Ensuite pour démarrer chroot on utilise la commande suivante :

  • sudo chroot /mnt

Installation du noyau et configuration du système

En chroot on exécute les commandes suivantes :

  • dpkg-reconfigure keyboard-configuration (pour choisir la dispotision du clavier en mode console, dans mon cas comme l'écran de l'ordinateur ne fonctionne pas je l'ai utilisé en mode kvm)
  • /usr/share/locales/install-language-pack fr_FR
  • dpkg-reconfigure locales (pour choisir le fuseau horaire)
  • apt-get install vim (pour installer mon éditeur préféré)
  • apt-get install linux-image-generic (le noyau générique)

Installation de grub

On install grub en chroot. Avant d'installer grub il faut créer le fichier fstab avec les 2 partitions root et boot :

  • vi /etc/fstab
  • Dans ce fichier on ajoute les lignes suivantes :
    • /dev/sda2 / ext4 errors=remont-ro 0 1
    • /dev/sda1 /boot ext4 defaults 0 2

Pour l'installation du grub on exécute les commandes suivantes :

  • apt-get install grub-pc
  • grub-install /dev/sda
  • update-grub

Installation des paquets supplémentaires

J'ai aussi installé les paquets suivants :

  • man : Le manuel des commandes.
  • openssh-server : Pour se connecter à l'ordinateur de façon sécurisée en ligne de commande via le réseau.
  • tasksel : Pour installer un groupe de paquet server
  • pciutils lshw usbutils : Pour contrôler les périphériques connectés.
  • procinfo : La commande socklist permet de connaitre les serveurs réseau démarrés et autres connexions réseau.
  • network-manager : Pour démarrer le réseau. Voir s'il n'y a pas de paquet plus réduit pour un serveur car les interfaces réseau GNome et KDE sont installées avec ce paquet.
  • shorewall shorewall6 : Pour configurer le firewall.
  • usbmount : Montage automatique des disques usb. Avec la version Ubuntu 15.10 le montage automatique d'un disque ntfs ne semble pas fonctionner. J'ai opté pour un montage à la demande dans le script converné. Par contre le montage automatique fonctionne bien pour les disques ext4 et FAT32.
  • dvgrab : Pour transférer les cassettes vidéos DV.
  • ffmpeg : Pour créer un serveur vidéo à partir de la webcam.

Test avec kvm

Si le démarrage du PC ne fonctionne pas, depuis le live-CD il est possible d'installer kvm puis de démarrer la nouvelle installation d'Ubuntu dans une machine virtuelle. Ensuite on peut afficher la console de la machine virtuelle sur un PC distant afin de compléter et tester l'installation, par exemple pour mettre au point la configuration réseau qui ne fonctionne pas.

L'installation et l'utilisation de kvm se passe de la façon suivante :

  • Depuis le live-CD démonter les partitions utilisées en chroot pour l'installation : umount /mnt/dev/pts /mnt/dev /mnt/proc /mnt/sys /mnt/boot /mnt, puis installer les paquets nécessaires : apt-get install kvm libvirst-bin virtinst.
  • Créer la machine virtuelle : sudo virt-install --name linux-dd --connect qemu:///system -r 512 --import --disk /dev/sda --os-varian=ubuntutrusty --boot=hd --graphics=vnc
  • Démarrer la machine virtuelle : sudo virsh --connect qmeu:///system start linux-dd
  • Depuis un autre PC sur le réseau on peut prendre contrôle de la console de cette machine virtuelle avec la commande : virt-viewer --connect qemu+ssh://ubuntu@adresse_ip/system linux-dd, en remplaçant adresse_ip par l'adresse réseau à laquelle est démarrée le live-CD.