Informatique · Première · 5 min de lecture
Système d'exploitation, commandes et permissions
Fonctions d'un système d'exploitation : lancer et gérer les programmes, gérer la mémoire, les fichiers, les périphériques et les utilisateurs ; systèmes libres et propriétaires ; commandes de base en ligne de commande (se déplacer dans l'arborescence, lister, créer, copier, déplacer, supprimer des fichiers) ; droits et permissions d'accès aux fichiers (lecture, écriture, exécution, pour le propriétaire, le groupe et les autres).
Chapitre du programme : Numérique et sciences informatiques (spécialité)
Bloc 1 sur 7 · Comprendre
Comprendre : le chef d'orchestre de la machine
Le système d'exploitation est le logiciel qui fait le lien entre le matériel et les autres programmes. Il :
- lance et gère les programmes qui s'exécutent en même temps ;
- gère la mémoire attribuée à chacun ;
- gère les fichiers, rangés dans une arborescence de dossiers ;
- gère les périphériques (clavier, écran, disque, réseau) ;
- gère les utilisateurs et leurs droits.
Certains systèmes sont libres (leur code source peut être lu, modifié et redistribué, comme Linux), d'autres propriétaires (comme Windows).
La ligne de commande permet de piloter le système en tapant des commandes. Session réelle, dans un dossier vide :
mkdir nsi
cd nsi
touch notes.txt
cp notes.txt copie.txt
mkdir archives
mv copie.txt archives
ls
ls archivesAffichage des deux dernières commandes :
archives
notes.txt
copie.txtBloc 2 sur 7 · Approfondir
Approfondir : chemins et droits d'accès
Chemins. Un chemin absolu part de la racine / (par exemple /home/eleve/nsi/notes.txt) ; un chemin relatif part du répertoire courant (archives/copie.txt depuis le dossier nsi). La commande pwd affiche le répertoire courant, cd .. remonte au dossier parent.
Droits. Chaque fichier a trois droits possibles : r (lire), w (écrire, c'est-à-dire modifier), x (exécuter). Ils sont donnés à trois catégories d'utilisateurs, dans cet ordre : le propriétaire, le groupe, les autres. La commande ls -l les affiche en neuf lettres, après un premier caractère qui indique le type (« - » pour un fichier ordinaire) ; un tiret signifie que le droit est refusé.
Écriture octale pour chmod. Dans chaque groupe de trois lettres, r vaut 4, w vaut 2, x vaut 1, un tiret 0 ; on additionne. rwxr-x--- donne 4 + 2 + 1 = 7, 4 + 0 + 1 = 5, 0 : 750.
Le même calcul en Python : le dictionnaire poids donne la valeur de chaque lettre, la boucle les additionne, et p[0:3] désigne les caractères d'indices 0 à 2 de p (puis 3 à 5, puis 6 à 8).
def chiffre(groupe):
poids = {"r": 4, "w": 2, "x": 1, "-": 0}
total = 0
for c in groupe:
total = total + poids[c]
return total
p = "rwxr-x---"
print(chiffre(p[0:3]), chiffre(p[3:6]), chiffre(p[6:9]))7 5 0Vérification sur un vrai fichier : après chmod 750 notes.txt, puis chmod 644, puis chmod 640, la commande ls -l notes.txt affiche successivement des lignes qui commencent par (on n'a gardé que les dix premiers caractères ; la suite de la ligne donne le nombre de liens, le propriétaire, le groupe, la taille, la date et le nom du fichier) :
-rwxr-x---
-rw-r--r--
-rw-r-----Bloc 3 sur 7 · Exemple
Exemple guidé : de chmod 640 aux droits
Énoncé. On exécute chmod 640 sur un fichier. Parmi le propriétaire, le groupe et les autres, combien de catégories ont le droit de lire ce fichier ?
Méthode : décomposer chaque chiffre en 4 + 2 + 1.
- 6 (propriétaire) = 4 + 2 : lecture et écriture, rw-.
- 4 (groupe) = 4 : lecture seule, r--.
- 0 (autres) : aucun droit, ---.
- Le droit de lecture (valeur 4) figure dans le premier et le deuxième chiffre : 2 catégories.
Les permissions sont rw-r----- : c'est bien ce qu'affiche ls -l ci-dessus après chmod 640.
Bloc 4 sur 7 · Visualiser
Voir : commandes de base et lecture des droits
| Commande | Effet |
|---|---|
| pwd | affiche le répertoire courant |
| cd dossier | se déplace dans un dossier (cd .. : dossier parent) |
| ls | liste le contenu du dossier (ls -l : avec les droits) |
| mkdir dossier | crée un dossier |
| touch fichier | crée un fichier vide |
| cp source destination | copie |
| mv source destination | déplace ou renomme |
| rm fichier | supprime |
| chmod 750 fichier | fixe les droits |
| Catégorie | Propriétaire | Groupe | Autres |
|---|---|---|---|
| Lettres de rwxr-x--- | rwx | r-x | --- |
| Calcul | 4 + 2 + 1 | 4 + 0 + 1 | 0 |
| Chiffre octal | 7 | 5 | 0 |
Continuez sur votre lancée
Vous avez découvert l’essentiel et un exemple. Retrouvez la suite du cours et les points à retenir, puis passez à l’entraînement guidé dans votre compte.
- Les formules et les repères à retenir
- Les erreurs fréquentes expliquées
- Un exercice avec des aides et sa correction
L’accès gratuit comprend les cours et exercices de votre niveau choisi.
Sources
- BO spécial n°1 du 22 janvier 2019 — programme de spécialité numérique et sciences informatiques de première générale, annexe (https://cache.media.education.gouv.fr/file/SP1-MEN-22-1-2019/26/8/spe633_annexe_1063268.pdf) — rubrique « Architectures matérielles et systèmes d'exploitation », systèmes d'exploitation
- A. S. Tanenbaum, H. Bos, Systèmes d'exploitation, 4e édition, Pearson — chapitre 1 (rôle d'un système d'exploitation) et chapitre 10 (UNIX, Linux : commandes, protection des fichiers)
- Documentation officielle de Python 3, The Python Language Reference et The Python Standard Library (https://docs.python.org/3/) — The Python Tutorial, « Dictionaries » ; chaînes et tranches (« Strings »)
Vous pensez avoir trouvé une erreur dans cette leçon ? Signalez-la par e-mail.