Importer une machine virtuelle

VirtualBox permet la création d'une machine virtuelle (ce qui nécessite ensuite de faire l'installation complète du système d'exploitation), mais permet également de récupérer une machine virtuelle existante en réalisant une importation. C'est ce qui est décrit sur cette page.

Avantage :

  • on va disposer rapidement d'une machine fonctionnelle

Inconvénients :

  • elle est préparée comme l'a voulu le concepteur (attention aux versions anglophones)
  • cela n'apprend pas à installer un système d'exploitation

 

Importation

1- Télécharger une machine virtuelle :

On trouve sur le net des machines virtuelles prêtes à l'emploi avec différentes distributions. On propose ici de télécharger une machine virtuelle Debian construite pour un mooc sur les réseaux disponible sur Fun-mooc ( mooc : "Les réseaux locaux" univ-toulouse - 101008 )

Voici le lien de téléchargement : http://www.enseeiht.fr/~chaput/MOOC-LAN.ova

(prévoir un petit délai de téléchargement pour ce fichier qui 'pèse' 1,7 Go).

Cette machine est assez légère et rapide à démarrer (distribution Debian 32 bits avec un bureau Xfce) et elle est francisée dès le démarrage. Par ailleurs elle est configurée avec quelques applications spécifiques au réseau. Il faut néanmoins prévoir un espace disque d'environ 6 Go pour l'accueillir.

Remarque : le fichier téléchargé n'est plus indispensable après l'importation que l'on va réaliser et pourra être supprimé (ou mieux sauvegardé sur une clé USB ou un disque externe pour pouvoir reconstruire la machine si nécessaire).

2- Importation d'une machine virtuelle :

Elle ne pose aucune difficulté :

  • Lancer VirtualBox
  • Aller dans le menu 'Fichier'
  • Sélectionner 'Importer un appareil virtuel...' :

importation_machine.png

ce qui ouvre une boite de dialogue :

importation2.png

  • la première zone de texte (initialement vide doit contenir le chemin qui mène au fichier MOOC-LAN.ova. L'icône de dossier à droite de cette zone de texte permet d'utiliser l'explorateur de fichier pour aller pointer le fichier de la machine virtuelle
  • la zone centrale se remplit alors avec les paramètres de cette machine. Remarquer la taille mémoire réservée pour elle (1Go).
  • En dessous se trouve le chemin par défaut d'installation des machines virtuelles sur le PC hôte (ici /home/vincent/VirtualBox VMs). a priori on gardera ce chemin, mais si on manque de place, on peut envisager de faire l'installation sur un disque USB externe comme ceci.
  • L'importation démarre après avoir cliqué sur le bouton ... "Importer" :

importation6.png

A la fin de l'importation, on trouvera dans la fenêtre principale de VirtualBox, la machine MOOC-LAN dans la liste des machines installées. Bien sûr en mode "Eteinte", il ne restera plus qu'à cliquer sur l'icône "Démarrer"... mais avant de faire cela, on pensera à faire un instantané (onglet 'Compléments' de cette page en lien) de la machine juste après cette 'installation', ce qui permettra de la retrouver rapidement dans son état d'origine si nécessaire.

3- Démarrage de la machine MOOC-LAN  :

  • nom d'utilisateur : mooc
  • mot de passe : mooc

mooc.png

On n'a pas le mot de passe de l'administrateur ('root'), mais cet utilisateur 'mooc' fait partie du groupe sudo, ce qui permet des tâches d'administration avec son mot de passe ('mooc').

Personnalisation

La machine virtuelle importée nous permet d'avoir rapidement une machine fonctionnelle mais pas toujours exactement à notre goût.

Il va falloir alors faire un minimum d'administration pour pouvoir la personnaliser. Il faudra pouvoir disposer soit du mot de passe administrateur soit du mot de passe d'un utilisateur déclaré dans le groupe sudo pour pouvoir le faire.

A gauche la machine mooc importée, à droite la configuration de celles du lycée

caract_mooc.png Caract_VMDebian.png

Remarque : pour se garder la possibilité de suivre le mooc sur les réseaux, on gardera le nom de la machine 'debian' ainsi que l'utilisateur 'mooc' pré-existant et on viendra seulement ajouter nos utilisateurs (nsi1 tout d'abord puis nsi2, ... voir le cours sur le système de fichiers et l'utilisation de la ligne de commande) et on modifiera le mot de passe du 'root' :

On ne dispose pas du mot de passe administrateur, mais l'utilisateur 'mooc' est dans le groupe sudo, ce qui va nous permettre de faire les modifications souhaitées.

On va démarrer le Terminal : Menu Applications →Emulateur de Terminal, qui souvre alors sur le prompt :

prompt_mooc.png

mooc@debian signifie :  'mooc' at 'debian' = l'utilisateur 'mooc' est connecté sur la machine portant le nom 'debian'

L'instruction pwd (print working directory) puis ls (list) permettront de savoir à quel endroit du système de fichiers  on se trouve ( on est dans le répertoire personnel mooc, situé dans home) et d'en lister le contenu :

compte_mooc.png

 

1- Créer l'utilisateur nsi1 :

Pour créer un utilisateur nsi1 (commande adduser) il faut disposer des droits d'administration, ce que peut faire mooc qui est dans le groupe sudo (groupe des superutilisateurs).

mooc@debian:~$ sudo adduser nsi1

sudo_adduser.png

On entre le mot de passe de l'utilisateur mooc, c'est à dire 'mooc'

sudo_adduser2.png

L'utilisateur nsi1 est créé ; simultanément un groupe du même nom est créé (par défaut chaque utilisateur appartient à son propre groupe).

Remarque : le nom du nouvel utilisateur doit être donné en minuscules et sans accent.

Un répertoire nsi1 est créé dans le répertoire 'home'

On doit donner un mot de passe à l'utilisateur nsi1 .... on choisit 'nsi1' ...(pas sécurisé du tout mais facile à retenir pour cette machine virtuelle ), mot de passe que l'on doit réentrer :

sudo_adduser3.png

On entre alors le "Full Name" pour l'utilisateur nsi1 : ce nom "apparent" de l'utilisateur pourra contenir des lettres autres que minuscules. On passera sur les autres demandes et on validera par la lettre O majuscule.

Une exploration du système de fichiers avec la commande cd ('change directory) pour se déplacer et ls (list) pour lister le contenu d'un répertoire donne :

compte_nsi1.png

  • cd .. : permet de remonter d'un niveau dans l'arborescence (on passe de mooc à home)
  • ls : liste donc le répertoire home, qui contient maintenant deux sous-répertoires : celui de l'utilisateur mooc et celui de nsi1
  • cd nsi1 : permet de rentrer dans le répertoire nsi1 (situé un niveau en dessous de home dans lequel on est
  • ls : liste alors le répertoire dans lequel on est maintenant, c'est à dire nsi1. Le résultat de cette commande ne donne rien. En fait une série de sous-répertoires apparaîtront à la prochaine connexion de l'utilisateur nsi1 (Bureau, Documents ...)

 

2- Changer le mot de passe administrateur :

Nous n'avons pas le mot de passe administrateur de la machine, mais on peut le changer du fait que l'utilisateur mooc a les droits d'administration.

L'utilisateur mooc étant connecté, on passe en mode sudo et l'instruction qui permet le changement d'un mot de passe est passwd (abréviation de password = mot de passe). Cela donne pour changer le mot de passe du 'root' (rappel : le mot de passe que l'on a choisi pour le root des machines virtuelles du lycée est 'sudebian', mot de passe qu'il faudra taper deux fois) :

sudo_passwd_root.png

3- Mettre à jour la distribution :

La machine virtuelle installée est restée telle que définie par son propriétaire initial, et cela peut dater... Pour en savoir un peu plus sur la version installée :

lsb_release.png

et

uname_v.png

Ces deux commandes (lsb_release -a   et  uname -v) nous apprennent que la machine virtuelle est dotée d'une distribution Debian en version 9.3 ; la version du noyau (4.9.65) datant de 2017...

Une mise à jour s'impose !

La gestion des paquets peut se faire avec la commande apt-get :

  • apt-get update  :  permet de resynchroniser un fichier d'index répertoriant les paquets disponibles et sa source (le fichier /etc/apt/sources.list indique où seront récupérés les paquets). Autrement dit cette commande va chercher les mises à jour disponibles pour notre système. On doit exécuter cette commande update avant les commandes upgrade ou dist-upgrade...

apt_get_update.png

...

aot_get_update_fin.png

  • apt-get upgrade  :  permet de mettre à jour le système suite au résultat de la commande précédente :

apt_get_upgrade.png

...

apt_get_upgrade2.png

Après avoir validé (touche O (lettre)) la mise à jour se fait ... et peut prendre un peu de temps selon la rapidité de la connexion internet et la quantité de paquets à mettre à jour...

post_update.png

... Debian 9.3 passée ici en 9.12 ; version du noyau inchangée

  • apt-get dist-upgrade : va plus loin que apt-get upgrade, notamment en faisant les mises à jour du noyau ('kernel') Linux. Observer les changements (après redémarrage de la machine) :

post_distupgrade.png

4- Changer la version de la distriibution :

Les copies d'écran précédents montrent que la distribution Debian de la machine virtuelle est restée en version 9 (nom de code : 'stretch' ... revoir les fondamentaux : Toy Story !!!). Or la version Debian à la date de cet article est la version 10 (nom de code :  'buster' ).

Travailler dans une machine virtuelle peut-être l'occasion d'apprendre à passer d'une version de distribution à une autre... sauf que la machine virtuelle MOOC-LAN utilisée dans cet exemple a un disque virtuel de taille trop justa pour réussir cette opération.

Remarque : il est possible d'agrandir la taille du disque virtuel...mais dans cette initiation pour laquelle on a choisi pour des raisons de facilité l'importation d'une machine virtuelle, cette possibilité semble hors sujet.

Mais cest cependant l'occasion de montrer coment on peut passer d'une Debian 9 à une Debian 10.

Il y a un fichier important pour tout ce qui concerne la gestion des paquets de la distribution : c'est le 'sources.list' qui se trouve dans /etc/apt/.

C'est l'occasion de voir un éditeur de texte capable de s'ouvrir dans le terminal : nano.

Si on voulait modifier un fichier lié au système tel que /etc/apt/sources.list il faudrait disposer des droits d'administration :

nano-etc_apt.png

le fichier s'ouvre alors dans nano :

nano-stretch-buster.png

Dans ce fichier sources.list, ce qui suit le symbole # est considéré comme commentaire.

  • les deux premières lignes faisant référence au cdrom (utilisé lors de l'installation) ont été commentées pour que le système de mise à jour des paquets n'aille plus chercher sur le cdrom (ce qui génère une erreur si le cdrom en question n'est pas présent)
  • Les lignes suivantes indiquent au système de mise à jour des adresses sur le net pour aller chercher de quoi faire les mises à jours (serveurs debian).
  • Le nom de code de la distribution est indiqué en clair : ici stretch (= version 9 de Debian)
  • Pour passer à la version 10, il faut remplacer ce nm par le nom de code de la version 10 : buster.
  •