

Mise en situation
Le travail de ce TP se déroule seul.
Temps alloué : 4h
Le TP se fait sur PC, la distribution de Linux est Mandriva 2008 Spring
|
Objectif
C5.2 Créer et administrer un compte utilisateur et la sécurité attenante.
- gérer des périphériques dans un environnement Linux
- créer, visualiser, modifier, renommer des fichiers et répertoires
- obtenir de l’aide pour toute commande Linux
- gérer les droits et exploiter des fichiers issus de SE différents.
|
Pré requis
TP1 installation du SE Linux Mandriva
|
Travail demandé
Suivre le déroulement du TP et faire un résumé des commandes apprises
|
Critères d’évaluation
Travail individuel et autonomie.
|
Présentation
Travail demandé
1. Préparation du support
2. Créer un 2em compte
3. Mise en oeuvre de la commande man
4. Montage de périphériques de données
5. Mise en oeuvre des redirections
6. Etude de l’arborescence : chemin absolu/chemin relatif et affichage
7. Gestion des fichiers : création, visualisation, copie, changement et effacement
8. Notions de droits et de propriété
9. Alias
10. Variables d’environnement
11. Environnement de compilation gcc
12. Création d un petit script
Les commandes de base :
notion de fichiers et droits
Présentation
Ce deuxième TP vous permet d’écrire et d’exécuter vos premières commandes dans un terminal sous le système d’exploitation Linux. Ces commandes de base vont vous permettre d’assimiler la notion de fichiers et de parcourir l’arborescence classique du système. Cette notion très importante permet d’accéder à tout type de ressources (disques, réseau, ...). Etant un système multi-utilisateurs, nous introduisons tout de suite la notion de droits d’accès à une ressource (ici les fichiers ou répertoires).
Les commandes en mode terminal peuvent être simplifiées en utilisant l’interface graphique (poste de travail). Mais souvent, lors d’un problème, il est préférable de ne pas l’utiliser, soit qu’elle interfère sur le problème, soit qu’elle ne marche pas.
Travail demandé
1. Préparation du support
- Depuis le poste de travail (Windows), prenez votre clé USB.
- Créez un fichier texte, par binôme, avec un éditeur de texte simple (Notepad) contenant des données quelconques.
- Sauvegardez sur la clé ce fichier sous nom.txt ex: B3.txt
- Redémarrer votre ordinateur en ouvrant une session Linux.
2. Créer un 2em compte
- Se loguer en tant que root
- Créer un nouveau compte dans Menu : /Outils/Outils systèmes/Configurer votre ordinateur/Système et Gérer les utilisateurs du système

- Se déloguer : /Bureau/Log out
- Se connecter avec votre nouveau compte
3. Mise en oeuvre de la commande man
De nombreuses commandes sont détaillées dans les pages de manuel (pages man) disponibles par la commande man -nom de commande-.
On navigue dans le manuel à l’aide des flèches de déplacement, on quitte cette commande à l’aide de la touche Q.
- A partir d’une console (Menu/Outils/Konsole), consultez le manuel de la commande man
- Découvrer les commandes suivantes et leurs options:
- cd
- pwd
- mkdir
- mv
- rmdir et rm
- ls
- cat
- Créez votre guide en y écrivant les commandes (cd, pwd, mkdir, mv, rmdir, ls, rm, alias...) par redirection et vérifier leur option (cd .., ls –la, rm –i…)
- Vérifier les utilisations des astérixes * et ?
- A l’aide d’un éditeur de texte simple (kedit ou gedit par exemple) consultez votre guide
4. Montage de périphériques de données
Linux considère tout périphérique de données comme un répertoire ajouté à l’arborescence du système.
Pour accéder à un périphérique, il convient de le "monter" : le nom du périphérique est alors associé à un point "d’encrage" dans l’arborescence.
Il suffit ensuite de parcourir cette branche de l’arborescence pour lire, copier, déplacer, ... les données du périphérique.
IMPORTANT :
En fin d’utilisation, vous devez impérativement "démonter" les périphériques que vous avez "montés".
- A partir d’un terminal : Menu/Outils/Konsole
- Mettez vous en root : su
- Visualisez et notez la liste des périphériques (et leurs points d’encrage) accessibles ou disponibles dans le fichier /etc/fstab ou /etc/mtab, (en utilisant les commandes cd et cat). Pour avoir de l’aide sur une commande, taper : man cat (manuel de la commande cat)
- Mettre votre clé USB dans le port
- Constater la différence dans le fichier /etc/mtab
- Démonter votre clé en utilisant la commande umount (vous avez noté le périphérique de votre clé ex:/dev/sdb1)
- Aller dans le répertoire /mnt en utilisant la commande cd
- Visualiser le contenu du répertoire avec la commande ls –la
- Créer un répertoire nommé cleUSB: mkdir cleUSB
Pour récupérer les données du fichier qui se trouve sur la clé, il faut les transférer dans votre arborescence.
- Montez la clé à l’aide de la commande : mount /dev/sdb1 /mnt/cleUSB
- Copiez un fichier de la clé (formatée sous Windows) dans votre répertoire de login (/home/nom) en utilisant la commande cp
- Vérifier les volumes (disques de stockage) avec /Menu/Outils/Outils système/Configurer votre ordinateur/Disques locaux/Gérer les partitions
- Démontez la clé à l’aide de la commande : umount
5. Mise en oeuvre des redirections
Vous allez créer un guide de commandes unix (guide.cmd.unix) au fur et à mesure de l’utilisation des commandes au cours de ce TP. Cette liste sera un résumé des commandes apprises dans ce TP.
Pour cela vous utiliserez les redirections
exemple :
ls > toto.txt liste les répertoires dans le fichier toto.txt en écrasant le précédent
cd..
ls >> toto.txt rajoute au fichier toto.txt
- Testez la création de votre guide en le "remplissant" par le listage de votre répertoire courant.
- Visualisez son contenu à l’aide de la commande cat.
- Ajouter le résultat de l’exécution de la commande dir
- Ajouter le résultat de l’exécution de la commande ls –la
- Lire le fichier : cat guide.cmd.unix.
- Effacez ce guide rm
Remarque : la touche de tabulation permet de finir le début d’une commande ou d’un nom de fichier. Les touches « flèches » permettent de récupérer les anciennes commandes tapées.
6. Etude de l’arborescence : chemin absolu/chemin relatif et affichage
A l’aide des pages du manuel Linux,
- Etudiez les commandes cp et mv
- A l’aide des commandes de navigation et de création de répertoire dans l’arborescence de votre compte, créez l’arborescence suivante:

A l’aide des commandes de navigation, de déplacement et de destruction de répertoire dans l’arborescence de votre compte,
- Contrôlez le travail réalisé à l’aide des outils graphiques konqueror et nautilus,
- Supprimez, avec ces mêmes outils graphiques, l’ancienne arborescence de votre compte.
7. Gestion des fichiers : création, visualisation, copie, changement et effacement
A l’aide des pages du manuel Linux,
- Etudiez les commandes touch, echo, et more.
- Etudiez les commandes cp, rm, rename. Les essayer en utilisant les astérix ( ? et *)
- que se passe-t-il lorsqu’une commande est suivi du caractère "et" commercial ?
8. Notions de droits et de propriété
Le système Linux est un système multi-utilisateurs. Certains utilisateurs ont des droits particuliers (ex: root). Les droits se décomposent en 3 catégories : lecture, écriture et exécution, pour trois types d’utilisateur : le propriétaire, le groupe, les autres. On peut vérifier avec ls-la
- La première case représente l’état du fichier : alias, d pour répertoire, - pour fichier…
- Les trois suivantes, les droits du propriétaire du fichier (r = read, w = writte, x = exécution)
- Les trois suivantes, les droits du groupe
- Les trois suivantes, les droits des autres.
Remarque : pour changer les droits des fichiers, il faut utiliser la commande chmod :
- chmod 777 toto donne tous les droits à tout le monde (chaque chiffre représente en binaire les autorisations pour les 3 « paquets » (propriétaire, groupe, autre)
- chmod w+a toto (donne le droit d’écriture à tout le monde ( a pour all))
En mode console :
- Positionnez les droits en lecture seule pour le propriétaire et lui seul sur le répertoire TP (chmod).
Que pouvez-vous (vous et votre binôme) faire du répertoire TP et des fichiers qu’il contient ?
Que devez-vous faire pour lister le contenu de TP ?
- Que devez-vous faire pour que votre binôme puisse lister le contenu de TP ?
- Copiez le fichier toto.txt dans TP.
- Créez un sous-répertoire Temp dans TP.
- Que devez-vous faire pour vérifier la présence du fichier copié et du répertoire créé?
- Que devez-vous faire pour que votre binôme puisse ajouter un fichier dans TP?
- Dans ce cas, peut-il supprimer le fichier qu il vient de copier ?
- Peut-il supprimer d’autres fichiers?
- Positionnez les droits en exécution seule pour le propriétaire et lui seul sur le répertoire TP.
- Que pouvez-vous (vous et votre binôme) faire du répertoire TP et des fichiers et répertoires qu’il contient?
- Copiez les fichiers présents dans votre répertoire de login vers TP/Temp.
- Vérifiez la présence des fichiers copiés.
Vous savez maintenant gérer vos droits sur un répertoire.
Créez le fichier cmd dans TP/Temp qui contient le texte : date
- Modifiez les droits de ce fichier du répertoire TP/Temp en lecture seule.
- testez les possibilités d’accès à ce fichier lecture et écriture seule
- testez les possibilités d’accès à ce fichier exécution
- testez les possibilités d’utilisation de ce fichier en le rendant exécutable (rem : il faut rajouter ./ devant la commande pour signifier que le fichier se trouve dans le répertoire courant)
Vous savez maintenant gérer les droits d’un fichier.
9. Alias
- Visualisez les alias prédéfinis à l’aide de la commande : alias
- Déterminez visuellement la commande passée la plus utilisée et créez un alias correspondant.
alias nom_alias=commande
ex : l pour remplacer la commande ls -la
10. Variables d’environnement :
Les variables d’environnement sont des variables transmises par le système d’exploitation à tous les processus. Chaque processus hérite des variables de son père. Ces variables peuvent être consultées ou modifiées. La valeur des variables d’environnement est de type chaîne de caractères.
Depuis le shell, on identifie les variables par leur nom précédé d un $. Les variables sont en majuscules.
Exemple :
- Affichage de la variable PATH : echo $PATH
- Création de la variable TRUC qui vaut hello : TRUC= hello
- Ajouter le répertoire courant au PATH : PATH= $PATH:.
La commande printenv affiche toutes les variables d’environnement
- Afficher la liste des variables d environnement
- Le shell recherche les commandes dans la liste des répertoires indiqués dans la variable PATH :
- Quelle est la valeur actuelle de PATH ?
- Créer dans votre répertoire de login, un répertoire bin
- Mettre un fichier exécutable affichant la date dans ce répertoire
- Ajouter le répertoire bin à votre PATH
- Vérifier que vous pouvez lancer votre exécutable dans n’importe quel répertoire courant.
11. Environnement de compilation gcc :
Comme linux est écrit en C, il existe un compilateur intégé : gcc
Par défaut, gcc n’est pas installé :
- Mise à jour des update : dans Menu/Installer desintaller les logicielles/ en root, choisir : Options/Gestionnaire de Média logiciels/Ajouter/Jeu complet des sources/Choisir un miroir, prendre ftp.u-strasbourg.fr
- Dans Développement/C sélectionner gcc et ses dépendances. Installer gcc.
- Ecrire un fichier bonjour.c en C qui permet d’afficher « bonjour le monde »
- Compiler le avec gcc : gcc toto.c -o toto
- Exécuter le fichier
12. Création d’un petit script
Linux possède un langage interprété par le shell permettant d’automatiser certaine tâche (sauvegarde journalière, nettoyage...)
Pour les plus rapides
- Créer un exécutable qui permette de copier tous les fichiers d un répertoire donné puis de les effacer sur le disque dur.
- Passer ce répertoire en paramètre
- Demander à l’utilisateur s’il est sûr de tout effacer (oui/non) si oui efface, sinon ne fait rien.
Pour vous aider :
Base des commandes d un script

