Système d'exploitation

Un programme particulier

Les objectifs :

  • Comprendre le rôle d'un OS
  • Connaître les commandes de base du bash Linux

Les systèmes d'exploitation

O.S



Rôle

Le système d'exploitation a les responsabilités suivantes:
  • Gérer le lancement des diverses applications et donner l'illusion que l'ordinateur est multitâche;
  • identifier les utilisateurs;
  • gérer l'organisation du disque dur et de ses fichiers;
  • contrôler l'accès aux données du disque dur et ressources de l'ordinateur.

Libre / Propriétaire

  • Windows est principalement utilisé sur les PC de bureau, c'est un système d'exploitation propriétaire tout comme MacOS.
  • Linux au contraire est un système d'exploitation libre, il est principalement utilisé dans les serveurs, téléphones portables via Android et les supercalculateurs. Son code source est accessible en ligne.

Linux

Navigation des les dossiers

Arborescence

/

Le répertoire racine, point de départ de toute l'arborescence d'un système de fichiers Linux. Tous les autres répertoires y sont montés en tant que sous-répertoires.

/bin

Contient les fichiers exécutables binaires essentiels au système, accessibles aux utilisateurs et nécessaires au démarrage ou à la maintenance du système.

/boot

Contient les fichiers nécessaires au démarrage du système, y compris le noyau et le chargeur de démarrage (comme GRUB).

/dev

Regroupe les fichiers spéciaux représentant les périphériques matériels et les pseudo-périphériques (comme les disques durs ou les terminaux) connectés au système.

/etc

Contient les fichiers de configuration de l'ensemble du système et des services, notamment ceux pour le réseau, les utilisateurs, et les applications installées.

/home

Répertoire où sont situés les dossiers personnels des utilisateurs, permettant de stocker les fichiers et les paramètres utilisateur.

/lib

Regroupe les bibliothèques partagées essentielles au système, nécessaires au fonctionnement des exécutables dans /bin et /sbin.

/usr

Répertoire de programmes et de données utilisateur, incluant les applications installées, les bibliothèques, et la documentation.

/var

Contient les fichiers variables, comme les journaux du système, les données des services en cours et les fichiers temporaires des applications.

  • Chemin absolu : Tout chemin qui commence par / est un chemin absolu. C’est à dire qu’on suit l’arborescence à partir de la dossier racine du système.
  • Chemin relatif : À l’inverse, les autres chemins sont relatifs. Un chemin relatif a comme point de départ le répertoire courant.

Exemple de chemin absolu

le chemin absolu vers le dossier Alice est

/home/Alice.

Exemple de chemin relatif

Depuis le dossier home le chemin relatif vers le dossier images est

Alice/images/ma_photo.jpg

Chemins spécifiques :

Chemin Description
. emplacement courant
.. dossier parent dans l'arborescence
~ dossier personnel de l'utilisateur

Exemple de chemin spécifique

Si l'utilisatrice est Alice, alors le chemin vers le dossier Documents est

~/Documents.

Exemple de chemin spécifique

Depuis le dossier document, le chemin vers le dossier Bernard est

../../Bernard.

Commandes de déplacement

  • pwd : print working directory
  • cd [nom_dossier] : change directory
  • ls : list

Manipulation des dossiers

  • cp chemin/fichier1 autre_chemin : copier le fichier1 dans le dossier autre_chemin
  • mv chemin/fichier1 autre_chemin : déplacer le fichier1 dans le dossier autre_chemin
  • rm chemin/fichier1 : supprimer le fichier1
  • touch chemin/fichier1 : créer le fichier1 dans le dossier chemin
  • mkdir dossier : créer un dossier

Exercice 1

On considère l'arborescence ci-dessous,ou l'on est positionné dans le dossier Alice
  • Quelle.s instruction.s permettent d'aller dans le dossier images d'Alice
  • Depuis le dossier personnel d'Alice, quelle instruction permet de créer un dossier nommé Mon_voyage dans le dossier Documents
  • Depuis le dossier personnel d'Alice, quelle instruction permet de déplacer le fichier photo1.jpg dans le répertoire Documents
  • Depuis le dossier personnel d'Alice, quelle instruction permet de supprimer le fichier photo3.jpg

Les droits utilisateurs

L’OS gère les droits d’accès en lecture (𝚛), en écriture (𝚠 ) et d’exécution (𝚡) de chacun des fichiers et répertoires suivant l’utilisateur.
Droits Valeur
--- 000 2 = 0
--x 001 2 = 1
-w- 010 2 = 2
-wx 011 2 = 3
r-- 100 2 = 4
r-x 101 2 = 5
rw- 110 2 = 6
rwx 111 2 = 7

Modifier les droits

  • ls -l : affiche le contenu du dossier en indiquant les droits de chaque élément
  • chmod [u g o a] [+ - =] [r w x] nom_du_fichier : affiche le contenu du fichier

Exemple

Gestion de droits

>>> alice:~$ ls -al

drwxrwxr-x  6 alice alice  4096 sept. 22  2023 .
drwxrwxr-x  6 alice alice  4096 sept. 22  2023 ..
drwxrwxr-x  6 alice alice  4096 nov.  15  2024 projet
drwxrwxr-x  2 alice alice  4096 août  24  2022 secrets
  • Qui peut lire le contenu du dossier secrets ?
  • Restreindre l'accès au fichier pour que seul le propriétaire puisse lire et écrire le fichier password.
  • Créer un fichier readme.md dans le dossier document
  • Modifier les permissions pour que tous les utilisateurs puissent lire le fichier mais seul le propriétaire puisse l'écrire.
  • Gestion des droits

    -rw-rw-r-- 1 user 0 Apr 15 09:35 toto
    1. Peut-il lire ce fichier ? le modifier ? l'exécuter ?
    2. Son amie Zoé qui n'est pas dans son groupe d'utilisateurs peut-elle lire ce fichier ? Modifier son contenu ?

    Gestion des droits

    -rw-rw-r-- 1 user 0 Apr 15 09:35 toto
    1. Eric veut exécuter toto, il tape ./toto et obtient ce message :
      -sh: ./toto: Permission denied
      • Eric n'a pas la permission de voir le fichier
      • Eric n'a pas la permission d'exécuter le fichier
      • Eric n'est pas utilisateur root
      • Le fichier toto n'existe pas
      • Personne ne peut lire le fichier toto
    2. Pour que toto devienne exécutable pour lui-même, quelle commande Eric doit-il utiliser ?

    Gestion des droits

    -rw-rw-r-- 1 user 0 Apr 15 09:35 toto
    1. S'il veut que lui, mais aussi tous les autres utilisateurs, puissent aussi l'exécuter quelle commande Eric doit-il utiliser ?
    2. Eric veut le rendre exécutable pour lui et pour les utilisateurs de son groupe, mais que les autres utilisateurs ne puissent ni le lire, ni l'exécuter. Quelle commande Eric doit-il utiliser ?

    Lire / Executer des fichier

    Lire / Executer des fichier

    • cat [fichier] : affiche le contenu du fichier
    • nano [fichier] : editeur permettant de modifier le contenu d'un fichier
    • ./[fichier] : execute le fichier

    Titre du popup

    Message du popup !