Installez une distribution GNU/Linux chez vous !
Installer une distribution GNU/Linux sur une machine, c'est bien. Mais comment faire selon vos besoins et possibilités ?
Tout d'abord, c'est quoi une distribution ? C'est un système d'exploitation (comme Windows ou MacOS, mais basé sur GNU/Linux) customisé pour répondre à des besoins plus ou moins
spécifiques. La distribution la plus répandue pour un usage personnel est Ubuntu.
On va donc présenter dans cette page comment l'installer, mais plusieurs stratégies sont possibles : avoir seulement la distribution sur la machine (au revoir Windows !), avoir les deux systèmes d'exploitation disponibles au démarrage de la machine (le dual-boot) ou lancer la distribution depuis un Windows/MacOS (machine virtuelle).
Pour toute remarque ou suggestion d'amélioration : dimitri.boudier@ensicaen.fr .
Solution 1 : Machine virtuelle
Le gestionnaire de machines virtuelles (Virtual Machines ou VM) est un logiciel installé sur votre système d'exploitation courant que l'on appelle host (hôte). Ce gestionnaire est capable de faire tourner plusieurs systèmes d'exploitation guests (invités).
L'avantage de cette solution est que vos deux systèmes d'exploitation (le host et le guest) tournent en parallèle (quand vous allumez la VM). Il est donc possible de faire un copié-collé du guest vers le host (ou l'inverse), de partager des fichiers, de faire tourner un logiciel sur Windows et un autre sur GNU/Linux en même temps ... Autre avantage : elle est assez sûre à mettre en place : vous ne risquez pas de faire planter Windows si vous faites une erreur de manipulation !
L'inconvénient de cette solution est le coût en ressources matérielles : cette solution n'est pas conseillée si vous avez peu de RAM ou un GPP peu performant, car vous faites fonctionner en même temps deux OS !
Solution 2 : Dual-boot
L'intérêt du dual-boot est que vos deux systèmes d'exploitation sont installés indépendamment sur votre machine (sur deux parties distinctes du disque dur). C'est au démarrage de votre machine que vous choisissez quel système d'exploitation vous souhaitez lancer. L'avantage : quel que soit votre système d'exploitation, il est le seul à tourner sur votre machine et cela ne nécessite pas plus de ressources mémoire ou processeur qu'un OS seul. Il est aussi possible de créer trois partitions sur vos disques durs (une pour Windows, une pour GNU/Linux, une pour vos données) de sorte à partager vos données entre vos deux OS.
Le principal inconvénient du dual-boot est qui si vous souhaitez utiliser vos deux OS en même temps, c'est impossible. Ouvrir un fichier qui n'est compatabile qu'avec l'autre OS ? Il faut redémarrer la machine ... Autre inconvénient : il faut être précautionneux pendant l'installation, sinon vous pouvez dire au revoir à ce qui était sur votre disque dur !
Solution 3 : GNU/Linux tout seul
La solution la plus libre, plus de Windows ou de MacOS ! Une distribution GNU/Linux seule, comme une grande ! Ici tous les avantages d'un OS seul en terme de besoins en ressources matérielles, mais prenez en compte vos enseignements qui ont besoin de logiciels ne tournant que sous Windows. Ou alors, solution royale, installez un gestionnaire de VM pour faire tourner Windows en guest sur votre distribution host GNU/Linux ! Solution approuvée par vos enseignants préférés !
En bref
Si vous pensez que votre machine ne tiendra pas deux OS en parallèle : optez pour un dual-boot.
Si vous avez peur de faire de la merde des bêtises avec votre machine : optez pour une machine virtuelle.
Si vous êtes dans les deux premiers cas : optez pour un dual-boot mais faites attention (de toutes façons, toutes vos données sont enregistrées sur plusieurs disques, dont un disque externe, on est d'accord ?!)
Si vous voulez passez sur du full-Linux, félicitations, vous gagnez +30 en réputation !
Pour les SATE, il faudra prévoir environ a minima 70 Go d'espace dédié à votre distribution.
Pour les IPC et GeNe, 20 Go devraient suffire, petits veinards !
====================================================================================================
Première étape : Choix de la distribution
La distribution conseillée est Ubuntu 20.04 LTS : téléchargeable <ici>. Allez-y, téléchargez-là ! Vous aurez le temps de lire la suite pendant le téléchargement ;)
Pourquoi Ubuntu ? Parce que c'est la distribution la plus répandue auprès du grand public. De plus Ubuntu est un fork de Debian, qui est sûrement la distribution la plus répandue en terme de serveurs. On vous assure donc une prise en main (voire une maîtrise selon vos envies) sur une distribution que vous risquez fortement de rencontrer dans votre vie future.
Pourquoi la version LTS ? Parce que c'est justement une LTS : Long Term Support, c'est-à-dire que cette version est maintenue (mise à jour de sécurité, correctifs) pendant 5 ans. En comparaison, une version d'Ubuntu sort environ tous les 6 mois, avec une durée de support de 9 mois. La version LTS nous permet donc d'assurer une cohérence entre les différentes machines d'élèves et de l'école pendant quelques années.
====================================================================================================
Deuxième étape : l'installation
Note : pour tous ces tutos, vos remarques et suggestions sont les bienvenues !
Solution 1 : Installation sur machine virtuelle
Étape 1
Dans cette solution, nous avons opté pour Virtual Box comme gestionnaire de VM (Virtual Machine) car il est cross-platform (fonctionne sous n'importe quel OS).
L'installation se fait en deux étapes : installation du gestionnaire de VM, puis installation de la distribution sur la VM. Suivez ce tuto vidéo pour Windows ou pour MacOS mais n'oubliez pas d'adapter la taille de votre disque dur virtuel à vos besoins (SATE > 70 Go, 20 Go sinon). Forcément, il sera plus performant d'installer la VM (et son disque virtuel) sur un SSD, mais si vous n'avez pas la place vous pouvez le faire sur un disque dur classique (HDD).
Pour MacOS : il faut compléter le tuto avec cette vidéo si VirtualBox vous donne une erreur au démarrage d'une machine.
Le premier tuto est assez bien puisqu'il indique aussi comment partager le presse-papier et le glisser-déposer entre le host et le guest, et comment maximiser l'écran de la VM (au passage, CtrlDroite+F permet de basculer la VM en plein écran). Mais il reste une autre fonctionnalité intéressante à ajouter ...
Étape 2
De base votre OS invité ne connait que son disque dur virtuel. Il ne connait donc pas les dossiers et fichiers de votre OS host, qui sont en dehors du disque dur virtuel. Pourtant il serait bien utile de partager des fichiers entre ces deux OS. Nous allons donc configurer le partage de dossier entre host et guest, qui permet de lier un dossier sur votre disque dur et un dossier sur votre disque dur virtuel.
Avec votre guest en fonctionnement, cliquez sur Devices / Périphériques dans la barre de menus de VirtualBox, puis cliquez sur Shared folders / Dossiers partagés et enfin sur Settings / Réglages. Vous verrez apparaître la fenêtre ci-dessous.
Cliquez sur l'icône Add a new shared folder (encadrée en rouge) puis remplissez les trois champs : le premier est le chemin vers le dossier présent sur le host, le deuxième est le nom de ce même dossier partagé sur le guest et le troisième est le chemin de création du dossier partagé sur le guest. Chez vous, remplacez le vm encadré en vert par votre nom d'utilisateur. Vous pouvez également changer le nom du répertoire enfant. Cochez les cases indiquées et vous aurez un dossier partagé entre votre host et votre guest, permanent et monté automatiquement dans votre répertoire home sous Ubuntu.
Remarque : si la manipulation suivante ne fonctionne pas (votre distribution ne vous donne pas les droits), il faut exécuter la commande suivante dans la console :
sudo adduser $USER vboxsf
Cette commande vous ajoutera au groupe vboxsf, qui détient les droits sur le dossier partagé.
Étape 3
Sur votre machine hôte, installez également le VirtualBox 6.1.18 Oracle VM VirtualBox Extension Pack disponible dans cette page. Pour l'installer, il suffit de télécharger et d'exécuter le fichier avec Virtual Box.
Cet Extension Pack sur la machine host permet d'activer le support USB, par exemple pour rediriger une clé ou caméra USB du host vers le guest.
Etape 3 bis (alternative)
To use your new VM properly, you may install the VirtualBox additions to
install appropriate drivers to the VM.
First, you will need to install some build dependencies:
sudo apt-get install build-essential
Now, under the VM’s Devices tab, click on Insert Guest Additions CD Image and follow the instructions on Ubuntu. Reboot your system after the installation.
You should now be able to enable the Auto-resize Guest Display option under the VM’s View tab.
Also configure the Shared Clipboard as Bidirectional under the VM’s Devices tab.
Étape finaleLa machine virtuelle est prête, la distribution installée et configurée. Vous pouvez désormais accéder à la troisième étape de cette page.
Solution 2 : Installation en dual-boot
/!\ Section en travaux /!\
Tutoriel d'installation en dual-boot.
Accédez ensuite à la troisième étape de cette page.
Solution 3 : Installation Linux tout seul
/!\ Section en travaux /!\
Pas de tutos ici, mais on est preneur si vous prenez cette voie ;)
====================================================================================================
Troisième étape : Configuration de la distribution pour vos enseignements
Et oui : l'objectif de tout c'est de vous faire bosser :)
Pour cela, vous allez devoir installer de nombreux packages. Les lignes à exécuter dans votre console sont juste en dessous de ce paragraphe. Mais avant quelques explications sur le concept des paquets (packages) sous GNU/Linux.
Les distributions GNU/Linux fonctionnent avec des packages qui sont ni plus ni moins des logiciels. Ces paquets sont en très grande majorité déposés sur un dépôt (repository), auquel on accède grâce à l'utilitaire Aptitude (apt en ligne de commande). C'est exactement comme ça que fonctionnent Android et iOS : une application Store (l'équivalent d'Aptitude) va chercher les applications qui sont déposées sur les serveurs Google et Apple (l'équivalent des repositories). Ce qui est présenté ci-dessous est la version console, mais il existe aussi un store graphique nommé Ubuntu Software.
La première ligne de commande (apt-get update) demande à Aptitude d'aller mettre à jour sa base de données, c'est à dire de comparer la version de vos paquets installés avec la version disponible en ligne sur le repository. Avec la deuxième ligne (apt-get upgrade), vous allez effectivement mettre à jour vos paquets si ceux du repository sont plus récents. Enfin, les autres lignes (apt-get install xxx yyy zzz) permettent d'installer les paquets à partir du repository.
Notons le sudo placé en début de commande : su est le diminutif de super-user (super-utilisateur) ; do est le diminutif de do (faire). Vous demandez au super-utilisateur (au compte root, ou à l'administrateur machine si vous préférez) de faire les commandes suivantes. Ces lignes sont donc exécutées avec les droits d'admin.
Tip : pour copier-coller dans une console, utilisez les raccourcis Ctrl+Shift+C et Ctrl+Shift+V.
Lignes à exécuter dans la console (ouverture avec Ctrl+Alt+T) pour installer les paquets (logiciels) nécessaires aux enseignements :
sudo apt-get update # Liste les mises à jour sur le repository
sudo apt-get upgrade # Applique les mises à jour sur la machine
sudo apt-get install make binutils flex lzma lzop gparted
sudo apt-get install build-essential gcc g++ bash patch gzip bzip2 perl tar cpio unzip
sudo apt-get install lib32z1 libncurses5 minicom tftp tftpd xinetd zlib1g:i386 wget
sudo apt-get install dosfstools initramfs-tools u-boot-tools git gitk git-gui subversion
sudo apt-get install libtbb2 libtbb-doc cmake libasound2-plugins:i386 ros-cmake-modules
sudo apt-get install gcc-multilib linux-tools-generic binutils libc6:i386 lib32ncurses5-dev
sudo apt-get install libxext6:i386 libx11-6:i386 libexpat1:i386 libstdc++6:i386 minicom
sudo apt-get install libgtk2.0-0:i386 libcanberra-gtk-module:i386 libatk-adaptor:i386