Ce TP sera noté sur un compte-rendu que vous devrez écrire pendant la séance. Ce compte rendu contiendra :
Ce compte rendu devra être rendu dans l'heure qui suit la fin du TP. Il n'est pas nécessaire de fournir des captures d'écran : le rapport final devra faire au plus 2 pages.
Pour tous ceux qui disposent d'un ordinateur portable avec (environ) 10Go de libre, il est conseillé de faire ce TP sur votre portable : la machine virtuelle que vous installerez pourra vous servir pour les TP suivants ou pour d'autres cours...
Pour ceux qui sont déjà familiers avec Linux, vous pouvez discuter avec votre encadrant de TP afin de trouver une alternative à Ubuntu...
L'objectif de ce TP est de se familiariser avec le concept de machine virtuelle et leurs utilisation. La partie importante du TP consiste à installer (depuis Windows) et configurer un système Linux (Ubuntu) sur une machine virtuelle.
Téléchargez l'image ISO lubuntu-16.04.1-desktop-i386.iso (858Mo). (lien externe, beaucoup plus lent) ou copiez la depuis une clé USB fournie.
Attention, si vous utilisez un ordinateur fixe de l'université, ce fichier est trop volumineux pour pouvoir être stocké dans votre répertoire personnel. Il faut donc impérativement le télécharger sur le disque local de la machine (disque D:\\
dans les salles Mauriennes).
Si le disque local contient déjà un fichier nommé lubuntu-16.04.1-desktop-i386.iso
, vous pouvez passer à la suite.
Pendant le téléchargement, lisez la suite du sujet...
Si vous souhaitez faire le TP sur votre portable, vérifiez :
Pour ceux qui utilisent les ordinateurs de l'université, il est impératif de télécharger Lubuntu en dehors de votre répertoire personnel : le "CD" d'installation est trop gros pour pouvoir être stocké avec vos fichiers personnels.
Suivant le modèle de votre ordinateur et la quantité de mémoire RAM disponible, l'installation et l'utilisation de la machine virtuelle peut être plus ou moins rapide. (Cette remarque est également valable pour les ordinateurs fixes des salles de TP de l'université...)
Windows est un système d'exploitation, distribué avec quelques utilitaires (dont un gestionnaire de fenêtres et un navigateur web).
Linux est uniquement un noyau.
Les systèmes Linux sont (presque) toujours installés à travers des distributions, c'est à dire des ensembles de logiciels autour du noyau Linux. Nous allons installer un système en utilisant une variante de la distribution Ubuntu. C'est l'une des distributions les plus utilisées par les utilisateurs débutants avec Linux.
Nous allons installer une variante "légère" pour ménager un peu les vieux ordinateurs : Lubuntu qui remplace certains composants graphiques par des variantes moins gourmandes en ressources.
Pour les étudiants qui maitrisent déjà Linux et qui possèdent déjà une machine virtuelle avec Ubuntu installée, vous pouvez choisir une autre distribution Linux (Debian, archlinux) ou une distribution BSD (freeBSD ou OpenBSD).
Avant de commencer ceci, il est impératif de vérifiez ce que votre encadrant en pense...
L'installation d'un système se fait habituellement à partir d'un CDROM ou d'une clé USB "bootable". Nous allons installer le système dans un ordinateur virtuel, qui possède donc un lecteur de CDROM virtuel ! Le contenu du CDROM ("l'image ISO") peut donc simplement être stockée dans un fichier et il n'est pas nécessaire de le graver...
Dans l'explorateur de fichiers, vérifiez que le fichier obtenu fait bien 899678308 octets.
Nous avons maintenant le CDROM virtuel et il est possible de créer un nouvel ordinateur virtuel avec VirtualBox.
Lancez le programme VirtualBox (Oracle VirtualBox dans la liste des programmes) et créez une nouvelle machine (bouton en haut à gauche, ou menu Machine, Nouvelle, ou raccourci "Control-n").
Vérifiez ensuite qu'il existe bien un répertoire Ubuntu-202
sur le disque local, et qu'il contient un fichier pour le disque dur virtuel (Ubuntu-202.vdi
).
Qu'elle est la taille (en octets) du fichier ? Qu'en pensez-vous ?
Vous devriez maintenant voir la machine virtuelle "Ubuntu-202" qui est Éteinte dans le paneau de gauche de VirtualBox.
Si VirtualBox ne vous demande pas de choisir un disque d'amorçage, il faudra le configurer explicitement : sélectionnez la machine Ubuntu-202 et cliquez sur le lien Stockage. Vous devriez obtenir une fenêtre ressemblant à
Cliquez sur le lecteur CD Vide dans l'arborescence Contrôleur : IDE, puis sélectionnez le fichier lubuntu-16.04.1-desktop-i386.iso
téléchargé précédemment en cliquant sur l'icone du CDROM à droite du menu déroulant Maître secondaire IDE.
En cliquant sur le lien Système de la machine Ubuntu-202, vérifiez que l'Ordre d'amorçage contient bien le lecteur Optique avant le Disque dur.
En cas d'erreur fatale de VirtualBox lors du démarrage de la machine virtuelle, vous pouvez vérifier la configuration du processeur : ongles Système, Processeur. L'option Activer PAE/NX doit être activée.
Si vous travaillez sur votre portable et que le démarrage provoque une erreur du style "kernel panic
", vous pouvez :
Démarrez maintenant la machine virtuelle. Si vous avez suivit les instructions, la séquence de boot se fait sur le CDROM.
Ubuntu-202.vdi
Normalement, le CDROM (Please remove the installation medium...) est
automatiquement éjecté. Si ce n'est pas le cas, il faudra retourner dans
la page principale de VirtualBox, lien Système pour supprimer le
fichier lubuntu-16.04.1-desktop-i386.iso
du lecteur CD virtuel.
Si, au début de l'installation, vous obtenez un écran ressemblant à
vous pouvez essayer de résoudre le problème en appuyant successivement sur
Comparez la taille (en octets) du fichier Ubuntu-202.vdi
avec sa taille notée précédemment. Expliquez ce que vous constatez...
Cette partie du TP se fait sous Windows, pendant que Ubuntu s'installe dans la machine virtuelle.
Le gestionnaire des tâches est un utilitaire qui permet d'obtenir la liste des processus en cours d'exécution, ainsi que leurs utilisation des ressources (CPU, RAM). Vous pouvez le lancer avec
Lancez le gestionnaire des tâches et configurez l'onglet Processus: dans le menu Affichage, sélectionnez des colonnes, cochez les choix suivants :
Répondez aux questions suivantes :
taskmgr.exe
?
N'arrêtez pas les processus liés à VirtualBox !
Après le redémarrage de la machine virtuelle, vous devriez obtenir un écran de connexion : vous pouvez choisir l'utilisateur administrateur avec le mot de passe "utnubu" choisi précédemment.
Vérifiez que vous avez accès au réseau en ouvrant le sujet du TP dans le navigateur web firefox.
Ubuntu dispose aussi d'un gestionnaire de taches : vous pouvez y accéder depuis le menu démarrer, Outils système, gestionnaire de tâches.
lxtask
. Quel est son numéro ? (Attention, il faut regarder la colonne PID et non pas la colonne PPID...)
Par défaut, il n'est pas possible de "casser" le système en supprimant des fichiers important.
/
".
/boot/
. Que constatez-vous ?
/test/
à la racine du système. Que constatez-vous ?
/tmp/
et affichez les fichiers cachés (menu Voir, afficher les fichiers cachés, ou raccourci Control-h). Supprimez le répertoire .X11-unix
. Que constatez-vous ?
.X11-unix
(clic droit, action propriétés), et en particulier les Droits d'accès. Quel est l'utilisateur propriétaire du répertoire ?
/sbin/ifup
? À votre avis, pouvez-vous supprimer ce fichier ?
Par défaut, l'utilisateur créé pendant l'installation peut accéder aux droits administrateurs en donnant son mot de passe. Il est également possible de créer des utilisateurs sans ces droits.
Cherchez l'utilitaire approprié dans les menus et ajoutez un utilisateur :
Seuls les utilisateurs appartenant au groupe "sudo" ("superuser do") peuvent obtenir les droits administrateur.
/home/etudiant/
)
/home/administrateur
. Modifiez les Propriétés de ce dossier pour mettre un contrôle d'accès (lecture, écriture et accès) à Propriétaire seulement.
Il est possible d'avoir plusieurs utilisateurs connectés en même temps, chacun sur sa propre session : c'est l'option "Changer d'utilisateur"...
Lancer l'application LXTerminal depuis le menu Outils systèmes. Vous obtiendrez une invite de commande (aussi appelée shell) qui sera développée au cours du TP2 :
Ceci vous permet de communiquer avec le système :
...$ ls
ls
: "list") des fichiers affichera donc une liste identique à celle donnée par le navigateur de fichiers :
...$ ls Bureau Documents Images Modèles Musique Public Téléchargements Vidéos
La commande cd /tmp
permet de se déplacer dans le répertoire /tmp/
. Comparez la liste des fichiers donnée par ls
avec la liste obtenu dans le gestionnaire de fichiers.
La commande ls
a de nombreuses options d'affichage, dont
ls -a
permet d'afficher les fichiers cachés (ceux dont le nom commence par un ".
"),
ls -l
affiche les propriétés des fichiers,
ls -al
ou ls -la
utilise les deux options à la fois.
Cherchez le propriétaire du répertoire .X11-unix
et vérifiez que vous obtenez le même résultat que précédemment.
Les distributions Linux ont toute un accès à un dépôt central de plusieurs milliers de logiciels. On parle de paquets. L'installation (et la désinstallation) d'un de ces paquets est donc très simple. Les logiciels installés de cette manière sont en général configurés automatiquement.
Lancez le Gestionnaire de paquets Synaptic. Pour passer en mode administrateur, le gestionnaire de paquets vous demandera alors votre mot de passe.
Faites une recherche sur la chaine "idle" et installez idle3 et vérifiez idle a bien été installé.
Il est également possible d'installer ces paquets en utilisant uniquement la ligne de commandes :
...$ apt-get install <nom-du-paquet>
Attention, il faut remplacer <nom-du-paquet>
par le nom exact du paquet à installer, sans les symboles "<
" et ">
"..
Pour que cette commande fonctionne, il ne faut pas oublier de quitter le programme Synaptic. Sans cela, vous aurez une erreur comme
E: Impossible d'obtenir le verrou /var/lib/dpkg/lock - open (11: Ressource temporairement non disponible) E: Impossible de verrouiller le répertoire d'administration (/var/lib/dpkg/). Il est possible qu'un autre processus l'utilise.
sl
(comme ls
, mais à l'envers). Que constatez vous ?
sudo
:
...$ sudo <commande>
sl
en ajoutant sudo
dans votre commande précédente.
Note : il est normal que la saisie du mot de passe dans le terminal n'affiche aucun caractère.
sl
est bien installée :
...$ sl
tetris
. Que constatez vous ?
...$ apt-cache search <chaine>
<chaine>
est remplacé par la chaine à chercher, sans les symboles "<
" et ">
".
Faite une recherche de la chaine "tetris" dans la liste des paquets. Combien y a t'il de résultats?
Installez, puis testez un des paquets correspondants.
Il y a plusieurs manières d'arrêter une machine virtuelle avec VirtualBox :
Après redémarrage de Ubuntu, utilisez l'utilisateur administrateur pour vous connecter à Ubuntu.
Testez les différentes manière d'éteindre la machine virtuelle et expliquez les différences entre
Il est pour le moment assez compliqué de transférer des fichiers entre la machine hôte (Windows) et la machine virtuelle (Ubuntu). Pour simplifier la tâche, nous allons configurer un dossier partagé entre les deux machines. Comme cette opération met en œuvre la machine hôte et la machine virtuelle, il faut configurer ce dossier partagé dans les deux machines.
Depuis Windows, dans le panneau de control VirtualBox concernant la machine virtuelle Ubuntu-202, choisissez la partie dossier partagés. Ajoutez un dossier permanent :
Share
dans le répertoire du disque local contenant la machine virtuelle et sélectionnez le,
Installez, avec la méthode de votre choix, le paquet virtualbox-guest-dkms
dans la machine virtuelle.
Si la commande précédente échoue, il faudra alors suivre la procédure suivante.
Depuis la machine virtuelle, cliquez sur le menu Périphériques de VirtualBox (tout en haut de la fenêtre), et choisissez insérer l'image CD des Addition invitées. Cette action, de VirtualBox insère un CDROM virtuel spécial dans le lecteur CD virtuel de la machine virtuelle. La machine virtuelle détectera ce CDROM et vous proposera de l'Ouvrir dans le gestionnaire de fichier. Acceptez cette action et vous devriez obtenir quelque chose comme
La suite des opérations va devoir se faire depuis l'invite de commandes :
make
gcc
linux-headers-$(uname -r)
(ce dernier n'est pas vraiment un nom de paquet, mais la commande devrait fonctionner)
...$ apt-get install <paquet_1> <paquet_2> ... <paquet_n>
...$ cd /media/administrateur/VBOXADDITIONS_5.1.8.111374
...$ ls <... des trucs ...> VBoxLinuxAdditions.run <... d'autres trucs ...>
...$ sudo ./VBoxLinuxAdditions.run
Après un redémarrage, vous devriez voir apparaitre un volume externe "sf_Share" sur le bureau. Malheureusement, vous n'aurez pas les droits d'accès à ce volume : les utilisateurs doivent être membre du groupe vboxsf.
Lancez l'utilitaire Utilisateurs et groupes du menu démarrer, Outils système. Choisissez le bouton Gérer les groupes et ajoutez les utilisateurs "administrateur" et "etudiant" au groupe "vboxsf" (voir question 15). Il faudra déconnecter et reconnecter l'utilisateur pour que les changement fassent effet.
Vous pouvez maintenant
Si vous avez besoin de faire du développement web en PHP (par exemple, pour les TP du cours "langages du web"), vous pouvez facilement installer un serveur web local :
lighttpd
(serveur web) et php-cgi
(PHP pour le serveur).
...$ lighttpd-enable-mod userdir fastcgi fastcgi-php
...$ service lighttpd reload
public_html
à la racine de votre dossier personnel. Si ce répertoire contient des pages web / PHP, vous pourrez y accéder depuis un navigateur en allant à l'adresse http://localhost/~login_utilisateur. (Par exemple, http://localhost/~etudiant). Testez en créant un fichier info.php
contenant
<?php phpinfo(); ?>
Attention, si vous avez changer le contrôle d'accès du répertoire de l'utilisateur "etudiant" (option Contrôle d'accès à Propriétaire seulement ou Propriétaire et groupe seulement), le répertoire /home/etudiant/public_html/
ne sera pas accessible pour le serveur web !
Vous pouvez maintenant installer les logiciels nécessaires pour d'autres TP :
Tous les système Linux ont une arborescence de fichiers standard. Cela permet à un utilisateur de n'importe lequel de ces systèmes, de savoir comment sont organisés les fichiers. Cette arborescence des fichiers s'appelle la "Filesystem Hierarchy Standard".
Pour chacun de ces répertoires, décrivez avec vos propres mots le contenu attendu du répertoire :
/bin/
/boot/
/etc/
/home/
/lib/
/sbin/
/tmp/
/usr/
/usr/bin/
(quelle différence avec le contenu de /bin/
?)
/usr/lib/
(quelle différence avec le contenu de /lib/
?)
/usr/sbin/
(quelle différence avec le contenu de /sbin/
?)
/usr/share/
/var/
Note : vous pouvez vous appuyer sur des documents glanés sur le net pour donner vos explications, mais vous devez les illustrer par des exemples pris sur la machine virtuelle que vous utilisez, et vous devez reformuler ce que vous trouvez.