TP - Chaptitre 8 : Système d'exploitation Linux

N.B. Niveau : Première Générale, enseignement de spécialité NSI (Numérique et Sciences Informatiques)

 

D
É
C
O
N
N
E
C
T
É

Chapitre 8 - Système d'exploitation Linux

1 - Introduction aux sytèmes d'exploitation :

Un système d'exploitation, appelé OS en anglais (Opérating System), permet de faire fonctionner un microprocesseur en aluant de la mémoire et en donnant l'accès aux différentes ressources disponibles (fichiers, périphériques, ...).

Les plus connus sont MS-DOS, android, Windows, Unix, Linux, OS X et macOS.

Vous avez déjà pu tester les commandes MS-DOS pour créer des répertoires et des fichiers, dans l'environnement Windows, qui est un logiciel payant, sous licence.

Linux est un système d'exploitation libre qui ne contient pas de code Unix, mais qui s'en inspire. Un système d'exploitation est souvent écrit en langage C.

Avant d'intaller Linux, vous alez vous familiariser avec les commandes Linux de la console LXTerminalen cliquant sur le lien suivant : https://luffah.xyz/bidules/Terminus/

2 - Installation de Linux

On peut installer Linux de plusieurs manière. Si votre machine fonctionne déjà avec windows, vous pouvez :

    • Formater votre disque dur et réinstaller Linux en vous assurant que tous vos périphériques seront reconnus, mais vous perdrez toutes vos données...
    • Installer Linux en dual boot :  au démarrage de la machine cous pourrez choisir entre Windows et Linux
    • Exécuter Linux sur une machine virtuelle
C'est cette dernière méthode que nous allons tester sur les machines du lycée, en exécutant le programme VirtualBox qui permet d'installer de nombreux systèmes d'exploitation.

Il existe de nombreuses distributions Linux, dont la plus connue est Ubuntu.

distributions

Les ordinateurs du lycée ne possèdent que 4Go de mémoire RAM. Si on installe une distribution Linux sur une machine virtuelle, celle-ci de devra pas trop encombrer la mémoire, c'est pour cela que vous allez installer Lubuntu (Lite Ubuntu : version légère) qui utilisera moins d'1Go et peu d'espace sur le disque dur l'ordinateur du lycée.

  • Exécuter le raccourci vers VirtualBox, dans le lecteur réseau classe de votre classe, sujets NSI
raccourci
  • Cliquer sur importer puis recherchez le fichier lubuntu.ova qui se trouve dans votre lecteur réseau classe

  • Nomez votre machine lubuntu et décochez la carte son et la carte réseau. Cliquez sur importer

3 - Démarrage de Linux

  • Sélectionner la machine virtuelle lubuntu, puis cliquer sur démarrer.

  • Entrer le mot de passe 1234

  • Exécuter LxTerminal

  • Commande ls (list) et cd (change directory)

Nous voyons que l'utilisateur user qui utilise l'ordinateur ubuntu (user@ubuntu)

Structure de l'arborescence :


Quelle commande faut-il saisir pour accéder directement à la racine / :

user@ubuntu:~$

Quelle commande faut-il saisir pour accéder directement au dossier de l'utilisateur courrant :

user@ubuntu:~$

Quelle commande faut-il saisir pour accéder directement au répertoire précédent :

user@ubuntu:~$

Quelle commande faut-il saisir pour accéder au répertoire parent :

user@ubuntu:~$

Avec les commandes cd et mkdir, créer sur le bureau un dossier Test_NSI. On peut chainer les commandes en les séparant par un ;

Exemple :

user@ubuntu:~$ cd / ; ls

 Créer un fichier contenant le texte "Salut" avec la commande

user@ubuntu:~$ echo "Salut" > fich.txt

 

 Quelle commande faut-il saisir pour d'afficher le contenu du fichier "fich.txt" ?

user@ubuntu:~$

Linux est un système d'exploitation multi-utilisateurs et permet de gérer les accès au différents fichiers et répertoires du disque dur.

ls -l permet de lister les détails des fichiers et répertoires ainsi que les droits (r : read, w : write, x : execution) pour 3 types d'utilisateurs :

  • le premier goupe de 3 lettres concerne le propriétaire (celui qui a crée le fichier) il est symbolisé par la lettre u (User)
  • le deuxième goupe de 3 lettres concerne le groupe à qui appartient l'utilisateur (profs, administrateurs ou élèves par exemple) il est symbolisé par la lettre g (Group)
  • le dernier goupe de 3 lettres concerne tous les autres utilisateurs, il est symbolisé par la lettre o (Other)

Pour voir les detail de l'utilisateur et l'appartenance aux diiférents groupes on utilise la commande id


cet utilisateur possède l'identifiant 1000 et fait parti de son groupe (1000) et entre autres le groupe "super utilisateur" (sudo)

Copier le fichier fich.txt dans un nouveau répertoire copie en utilisant la commande cp <source> <destination>. En cas d'erreur rm ou rmdir permettent de supprimer un fichier ou un répertoire.

Inscrire la commande ci-dessous :

user@ubuntu:~$

Créer un répertoire commun dans home

On remarque qu'on a pas les droits nécessaires pour créer un dossier à cet endroit. Le moyen pour élever ses droits est de faire précéder la ligne de commande par sudo et en saisissant le mot de passe. Sudo L'abréviation de substitute user do : « faire en se substituant à l'utilisateur ».

On retrouve bien les droits pour l'utilisateur courrant : on à deux répertoires (lettre d : directory).

Quels sont les droitssur le dossier commun pour :

  • le propriétaire (u) :
  • le groupe (g) :
  • les autres utilisateurs (o) :

Ajouter des groupes  et des utilisateurs :

  • Ajouter un groupe eleves et un groupe profs avec la commande addgroup <nom du groupe>
  • Ajouter les utilisateurs eleve1, eleve2 avec un mot de passe eleve, prof1 et prof2 avec le mot de passe prof en utilisant la commande adduser <nom d'utilisateur>
  • Créer deux dossiers "fichiers_eleves" et "fichiers_profs"
Résultat dans le dossier home :


  • Ajouter les utilisateurs eleve1, eleve2 dans le group des eleves et prof1 et prof2 dans le groupe des profs avec la commande
    adduser <nom d'utilisateur> <nom du groupe>

Vérification avec la commande getent group <gid>


  • Affecter encore à chaque dossiers le bon groupe avec la commande chgrp <groupe> <dossier>  

On remarque que le propriétaire du dossier eleve1 est le groupe eleve1 et ce dossier appartient au groupe des profs...

  • On désire maintenant interdire la lecture et l'exécution des répertoires profs1, profs2, eleves1 et eleves2 aux membres du groupe avec la commande chmod g-rx <dossier>
  • Interdire la lecture des dossiers prosf1 et profs2 au autres utilisateurs 
  • le dossier commun doit être accessible à tous en lecture et en ecriture (+wx permet d'ajouter l'écriture et l'exécution)

Pour gagner du temps on peut utiliser le codage octal pour changer les droits

Correspondances de représentation des droits
Droit Valeur alphanumérique Valeur octale Valeur binaire
aucun droit --- 0 000
exécution seulement --x 1 001
écriture seulement -w- 2 010
écriture et exécution -wx 3 011
lecture seulement r-- 4 100
lecture et exécution r-x 5 101
lecture et écriture rw- 6 110
tous les droits (lecture, écriture et exécution) rwx 7 111

Exemple

attributs du dossier commun avant la commande chmod : drwxr-xr-x

chmod 701 commun

attributs du dossier commun après la commande chmod :

remplace les commandes chmod commun ; chmod ; chmod commun pour obtenir le même résultat

  • faire en sorte que les fichiers_eleves soit accessibles au groupe des eleves et aux autres et que les fichier_profs ne soit accessible que par le groupe des profs

Résultat :


  • Tester l'accès aux dossiers, la création de fichiers en vous connectant comme eleve ou prof dans les différents dossiers, corriger les droits si nécessaire. Vous pouver utiliser l'explorateur de Lubuntu pour gagner du temps.


Fond : Texte : Tables :