Cours issu de : https://info.blaisepascal.fr/
Un système d’exploitation (ou OS pour Operating System) est un ensemble de programmes permettant de gérer l’ordinateur :
Le système d’exploitation est un intermédiaire entre les logiciels d’application et le matériel.
Il dirige l’utilisation des ressources d’un ordinateur par des logiciels applicatifs :
Il reçoit des demandes d’utilisation des ressources de l’ordinateur — ressources de stockage des mémoires (par exemple des accès à la mémoire vive, aux disques durs), ressources de calcul du processeur central, ressources de communication vers des périphériques (pour parfois demander des ressources de calcul au GPU par exemple ou tout autre carte d’extension) ou via le réseau — de la part des logiciels applicatifs.
Le système d’exploitation gère les demandes ainsi que les ressources nécessaires, évitant les interférences entre les logiciels.
Le système d’exploitation est un logiciel, le deuxième après le firmware et le principal programme exécuté lors de la mise en marche de l’ordinateur, le premier étant le programme d’amorçage (en anglais bootloader).
Un peu d'histoire ...
Le système UNIX est un système dit « propriétaire » (certaines personnes disent « privateur »), c’est-à-dire un système non libre.
Un peu d'histoire ...
Tux : la mascotte de Linux
En 1991, un étudiant finlandais, Linus Torvalds, décide de créer un clone libre d’UNIX en ne partant de rien (on dit « from scratch » en anglais) puisque le code source d’UNIX n’est pas public. Ce clone d’UNIX va s’appeler Linux (Linus+UNIX).
GNU/Linux est un système d’exploitation unix-like : il possède les mêmes fonctionnalités qu’Unix (selon la norme POSIX), mais implémentées différemment.
Il s’agit d’un OS libre : l’utilisation, l’étude et la modification sont autorisées techniquement et légalement.
Distribution = noyau Linux + utilitaires GNU
Exemples : Ubuntu, Red Hat, Fedora, Slackware, Debian, Gentoo, Mandriva, SUSE, ArchLinux, etc.
Dans la plupart des distributions, on trouve les utilitaires suivants :
Un peu d'histoire ...
Microsoft a été créée par Bill Gates et Paul Allen en 1975.
Microsoft est surtout connue pour son système d’exploitation Windows. Windows est un système d’exploitation « propriétaire », la première version de Windows date 1983, mais à cette date Windows n’est qu’un ajout sur un autre système d’exploitation nommé MS-DOS.
Aujourd’hui Windows reste le système d’exploitation le plus utilisé au monde sur les ordinateurs grand public, il faut dire que l’achat de Windows est quasiment imposé lorsque l’on achète un ordinateur dans le commerce, car oui, quand vous achetez un ordinateur neuf, une partie de la somme que vous versez termine dans les poches de Microsoft. Il est possible de se faire rembourser la licence Windows, mais cette opération est relativement complexe.
Terminal Windows, appelé Invite de commande (cmd.exe)
Avantages du shell :
Les ordinateurs sont très majoritairement vendus avec un système d’exploitation Windows (PC) ou Mac-OS (Mac).
Mais il est possible de choisir quel système on souhaite installer.
On peut notamment installer un système libre (open source) tel que GNU/Linux.
Et on peut également utiliser certains OS depuis une clé USB, sans avoir à l’installer sur le disque dur de l’ordinateur.
Sources : https://fr.wikipedia.org/wiki/Fichier_informatique
Un fichier est une collection de données numériques destinée à être stockée sur une mémoire de masse (disque dur, clef USB, mémoire interne de smartphone, …).
Techniquement un fichier est constitué d’une séquence d’octets. L’essence du fichier est l’ensemble des données qu’il contient, mais il comporte également un certain nombre de métadonnées fournissant des informations très diverses sur le fichier et son contenu :
Les fichiers permettent au système d’exploitation et aux applications (traitement de texte, lecteur multimédia, navigateurs web, …) d’avoir accès aux informations stockées sur mémoire de masse.
Un fichier possède un nom de fichier qui sert à désigner son contenu. Ce nom comprend souvent un préfixe et un suffixe appelé extension, qui renseigne sur la nature des informations qu’il contient et la convention selon laquelle ces informations (ainsi que les métadonnées) sont numérisées et séquencées dans le fichier. Selon la nature et le format du contenu, les fichiers peuvent être qualifiés d’exécutables, de compressés, de textes, de documents, d’images, d’audio ou de vidéos.
exemples de noms de fichier :
Les systèmes d’exploitation graphiques (MS Windows, Linux Ubuntu, Mac OSX, …) disposent de logiciel d’exploration des fichiers, et associent à chaque type de fichier un pictogramme appelé icône.
Les mémoires de masse contiennent des centaines de milliers de fichiers.
En vue de faciliter leur organisation, les fichiers sont gérés par des des systèmes de fichiers (il en existe plusieurs dizaines).
La plupart d’entre eux permet de placer les fichiers dans des emplacements appelés répertoire (directory) ou dossier (folder) eux-mêmes organisés selon le même principe (pouvant contenir des sous-répertoires et des fichiers) de manière à former une hiérarchie arborescente.
Un système de fichiers offre donc une façon d’organiser et de stocker une arborescence sur un support. Chaque OS propriétaire a développé sa propre organisation.
L’arborescence n’est pas physique, mais logique, c’est à dire qu’elle ne dépend pas de la nature de la mémoire de masse : le système de fichiers permet justement de faire le lien entre la structure arborescente (coté utilisateur) et l’emplacement physique des données (qui dépend fortement du média).
Sous Linux, tout est fichier. Ils sont organisés suivant une unique arborescence (dont la racine est nommée / et dont l’administrateur est root ) : l’arborescence peut donc être construite à partir de diverses partitions et différents médias (HDD, clef USB, DVD, …).
Par exemple, après l’insertion d’une clef USB, un nouveau dossier apparaitra dans le dossier /media/eleve/ .
Linux possède ses systèmes appelés ext2 , ext3 et ext4 (selon leur génération), mais peut en gérer d’autres.
Windows utilise principalement les systèmes de fichiers FAT32 et NTFS.
Dans le monde Windows, contrairement aux systèmes Linux, les partitions et périphériques de stockage possèdent leur propre arborescence, dont la racine porte un nom d’une seule lettre : A: C: D: …
L’arborescence n’est pas aussi stricte que sous Linux, mais on retrouve toutefois quelques dossiers incontournables :
Les systèmes d’exploitation possédant une interface graphique sont fournis avec des logiciels d’exploration évolués et intuitifs (Explorateur de fichiers sous Windows, Gestionnaire de fichiers sous Ubuntu, …). Ils permettent de :
Activité
Le système de fichiers linux contient :
Le Terminal Linux
Ouvrir un Terminal (ou une console) :
ou bien CTRL+ALT+T
Remarque : dans un terminal linux, la saisie du mot de passe ne provoque pas l’affichage de caractères •••• comme dans les fenêtres graphiques.
Une invite de login et password apparaît à l’écran :
par exemple eleve puis le mot de mot de passe associé.
CTRL+ALT+F1 à F6 (on peut ouvrir jusqu’à 6 terminaux)
CTRL+ALT+F7 pour revenir
En ouvrant le Terminal, apparaît un message de bienvenue, puis le prompt (ou l’invite) sous la forme :
utilisateur@nom_de_l_ordinateur:répertoire_courant$
Exemples :
Le ~ (tilde) est un raccourci pour désigner le répertoire « utilisateur ».
~ ⇔ /home/eleve
Le répertoire courant correspond au répertoire où se situe actuellement le Terminal : son chemin est visible dans le prompt.
syntaxe : cd chemin_du_dossier
Les chemins (path)
Un chemin est une chaîne de caractères permettant de désigner un Dossier ou un Fichier.
Un chemin peut être absolu ou relatif.
Absolu ( = relatif au dossier racine ) : /home/eleve/exos/info/
Relatif (au répertoire courant) : exos/info/
Attention : cd /exos/info/ renvoie un message d’erreur puisque le dossier exos/ n’est pas directement sous le répertoire racine / Exemple : si on est dans le répertoire eleve/ et qu’on veuille aller dans le répertoire info/ situé deux niveaux plus loin, on peut utiliser :
Si le chemin que l’on veut désigner se situe en dessous (hiérarchiquement) du dossier courant, on peut utiliser un chemin relatif.
On peut accéder au répertoire utilisateur par différents noms de chemin :
Le / à la fin des noms de dossier est facultatif, mais il permet de les distinguer des noms de fichier lors d’un affichage sans couleurs.
Les principales commandes
syntaxe : man nom_commande
syntaxe : ls [-options]
Activité
syntaxe : mkdir nom_dossier/
syntaxe : rmdir nom_dossier/
Activité
La liste des fichiers commence maintenant par ./ et ../ ;
Rappel de commandes
Lorsque l’on exécute régulièrement les mêmes commandes (typiquement, lorsqu’on programme, on passe son temps à compiler son programme et à l’exécuter) on n’a pas envie de retaper chaque commande en entier.
Les commandes précédentes sont accessibles en tapant une ou plusieurs fois sur les flèches du haut et du bas :
la flèche du haut permet de rappeler des commandes de plus en plus anciennes,
la flèche du bas fait l’inverse.
La touche tabulation permet de compléter automatiquement un nom de commande ou de fichier (on y fera référence par la suite par [TAB]). Pour cela vous tapez la première lettre d’une commande (ou les 2 ou 3 premières) puis appuyez sur la touche [TAB]. Le système complétera le nom de commande s’il est unique ou proposera une liste de choix possibles : il faut appuyer à nouveau sur [TAB] pour voir les différents choix.
Activité
Manipulation des fichiers
syntaxe : touch chemin_du_fichier
syntaxe : rmdir nom_dossier/
Activité
syntaxe : mv chemin_dossier_source chemin_dossier_destination
dossier_source , dossier_destination … désignent des chemins, relatifs ou absolus.
syntaxe : mv dossier_source dossier_destination
mv fichier_source fichier_destination
syntaxe : mv chemin_vers_fichier_source chemin_vers_fichier_destination
Activité
syntaxe : cp fichier chemin_dossier_destination
cp -r chemin_dossier chemin_dossier_destination
Activité
Droits des fichiers et dossiers
Chaque fichier et chaque dossier possède une liste de droits : c’est une liste qui indique qui a le droit de lire le fichier (read), de le modifier (write) et de l’exécuter (execute) ; on y a accès à l’aide de la commande ls -l
La première ligne commence par total qui indique le nombre de blocs de 512 octets occupés par des fichiers dans ce répertoire (0 s’il n’y a que des dossiers).
On obtient ensuite la liste des éléments que contient le répertoire. Chaque ligne mentionne, dans l’ordre :
syntaxe : chmod -r fichier_ou_dossier : retire ( - ) l’autorisation de lecture au propriétaire du fichier
chmod -w fichier : retire ( - ) le droit d’écriture ( w ) au propriétaire du fichier (et de facto à tout le monde)
chmod o+r-w fichier : donne ( + ) le droit de lire ( r ) et retire ( - ) le droit d’écriture ( w ) aux autres ( o = other)
chmod a+rw fichier : donne ( + ) à tout le monde ( a = all) les droits de lecture ( r ) et d’écriture ( w )
chmod -R a+rx dossier : donne ( + ) à tout le monde ( a ) les droits de lecture ( r ) et d’ouverture ( x ) de dossier et de tous ses sous dossiers (option -R )
etc…
syntaxe : se placer dans le répertoire ou l’on veut le lien puis
ln –s chemin_dossier_ou_fichier