SlideShare une entreprise Scribd logo
1  sur  52
SYSTÈME
D’EXPLOITATION
GNU/LINUX
Base du système GNU/Linux et
commandes Unix
1. histoire de Linux
Qu'est-ce qu'UNIX ?
UNIX est un système d'exploitation. Ce système est né,
en 1969, de la volonté de Ken Thompson et Dennis
Ritchie de faire un système d'exploitation à la fois
multitâches et multi-utilisateurs. Il était aussi question
de concevoir de petits programmes, ne faisant qu'un
nombre limité de tâches, mais pouvant interagir entre
eux. Depuis cette période, une grande quantité de
systèmes d'exploitations dérivés d'UNIX a vu le jour,
certains payants, d'autres gratuits.
Pourquoi UNIX ?
C'est avec l'idée de créer un système d'exploitation
répondant à de nouvelles attentes qu'UNIX a vu le
jour : être
disponible 24h/24 7j/7 était un défi à relever au niveau
de la gestion de la mémoire, des accès aux disques,
etc.
Mais là où les créateurs d'UNIX innoveront réellement,
c'est dans la réalisation du premier système
d'exploitation entièrement multi-tâches et multi-
utilisateurs, ouvrant la marche vers l'informatique
telle qu'on la
connait aujourd'hui.
Un ensemble de règles assurent le fonctionnement et le succès
d'UNIX, à commencer par le fameux paradigme « tout est
fichier ».
Toutes, ou presque toutes, les fonctionnalités du système
d'exploitation sont accessibles via de simples fichiers :
périphériques, processus, répertoires, les pipes, la mémoire, etc...
. Ainsi, pour qu'une application puisse communiquer avec le
système, il suffit qu'elle soit capable de lire et écrire dans un
fichier.
Mais c'est surtout au niveau des méthodes de programmation
qu'UNIX révolutionnera le mode de pensée de l'époque. Fini le
développement isolé d'une seule équipe de programmeurs, au
contraire les échanges de code source et la collaboration de
plusieurs équipes devient sont très courant . Ce monde de
fonctionnement évoluera peu à peu vers la notion de logiciel
libre.
Venons-en maintenant à Linux.
Philosophie UNIX
En 1991, un étudiant finlandais nommé Linus
Torvalds décide de créer un nouveau noyau
basé sur Minix (un dérivé d’UNIX) afin de
contourner ses limitations et celles de MS-
DOS. Ce nouveau noyau est distribué
gratuitement sur Internet en août 1991 sous le
nom : Linux. Le rôle du noyau dans un
système d'exploitation est de s'interfacer entre
les programmes utilisateurs et le matériel Il fait
donc partie du système d'exploitation mais ne
représente pas l'OS à lui tout seul. Linux, pris
de façon indépendante, ne sert donc à rien.
Naissance de GNU/Linux
Richard Stallman, fondateur du projet GNU,
persuade Linus Torvalds de passer Linux sous
licence GPL, ce qui permet d’utiliser ce noyau
pour le projet GNU. Un système d'exploitation
complet est alors formé : il est composé du
noyau Linux et des outils GNU. Le nom
complet de ce système est GNU/Linux
De part son esprit communautaire, Linux se décline en
plus d'une centaine de distributions. Toutes ces
distributions
possèdent un noyau Linux, mais différent dans la
composition des programmes qui l'entourent.
Chaque distribution possède :
-Un noyau Linux
-Des programmes, de préférence Libres
-Un système de packages
-Des programmes d'installation
Les distributions GNU/Linux
Les distributions les plus connues sont Debian,
Gentoo, RedHat, Slackware, Mandriva et
SUSE. Il existe aussi un nombre considérable
de « sur-distributions » comme par exemple
Ubuntu ou Fedora qui se basent sur
respectivement sur Debian et RedHat.
2. Les Licences
Logiciels open-sources et
propriétaires
Un logiciel peut être disponible sous différentes formes, la
première est la version source c'est à dire la version écrite
dans un langage de programmation et compréhensible
par l'homme. L'autre est la version compilée, c'est la
traduction de la version source en version
compréhensible par la machine, on parle aussi de version
binaire.
Ainsi on distinguera un logiciel open-source d'un logiciel
propriétaire : le logiciel open-source met à disposition
les sources du programme tandis que le logiciel
propriétaire se cantonne à distribuer la version compilée
Logiciel Libre et licences
En 1983, Richard Stallman est alors chercheur en intelligence
artificielle En tant que chercheur, il est habitué à échanger du
code source avec ses collègues. Rencontrant quelques
problèmes avec le pilote propriétaire de son imprimante, il
essaye d'en obtenir le code source afin de le modifier et de
l'améliorer mais reçoit un refus de la part de la société
distribuant le pilote. À la suite de cette mésaventure, il décide
donc de réécrire un pilote correspondant à ses attentes et
définit ainsi les bases de la philosophie du logiciel libre. Pour
cela il énonce les quatre libertés suivantes :
• liberté d'exécution
• liberté de modification
• liberté de redistribution
• liberté d'amélioration
3.Le système d’exploitation
Architecture UNIX
Linux est architecturé autour d'un noyau (kernel) chargé de prendre en charge le matériel
Le noyau Linux est un ensemble de petits
programmes qui permettent de gérer
l'exécution des autres applications qui tournent
sur la station.
Ces primitives gèrent l’accession à la mémoire
et, plus généralement , aux différentes
ressources de la machine .
Le noyau gère les taches de base du système :
 La gestion des processus système
 La gestion des processus utilisateurs
 La gestion du processeur et de la RAM
 La gestion des systèmes de fichiers
 L'interpréteur de commandes «shell». est
l'interface entre l'utilisateur et le système
d'exploitation.
 Le shell est ainsi chargé de faire
l'intermédiaire entre le système d'exploitation
et l'utilisateur grâce aux lignes de commandes
saisies par ce dernier. Son rôle consiste ainsi à
lire la ligne de commande, interpréter sa
signification, exécuter la commande, puis
retourner le résultat sur les sorties.
 Le système de fichiers (file system) Un
système de fichiers est une façon d'organiser et
de stocker une arborescence sur un support
(disque, disquette, cd ...). Chaque OS a
développé sa propre organisation.
 Linux possède son système appelé ext2 mais
peut en gérer d'autres.
Caractéristiques de linux
Système d’exploitation multitâches. Les
systèmes Unix gèrent l’exécution de plusieurs
dizaines de programmes simultanément en
utilisant la technique du temps partagé.
 Système multiutilisateurs.
Plusieurs utilisateurs pourront travailler sur le même
système central.
 Système multiprocesseurs.
Les OS Unix peuvent gérer des systèmes électroniques
ayants plusieurs processeurs. Plusieurs processus
peuvent alors s’exécuter dans le même instant .
 Système multiplateformes.
Les systèmes Unix sont programmés (écris) en grande
partie en langage C. Le code source peut, avec peu de
modifications, être compilé pour des systèmes
équipés de processeurs de différentes architectures.
Le rôle de l’administrateur
 Créer, modifier, supprimer un utilisateur.
L’administrateur doit gérer les comptes des
utilisateurs. Outre la création et la suppression
des comptes qui s’effectuent avec des
commandes standard, il doit être capable de
modifier l’environnement de travail des
utilisateurs. Cette dernière opération recouvre
un large éventail d’actions : changement du
mot de passe, appropriation de fichiers,…
 Gérer les fichiers et les disques
La gestion des fichiers et des disques comprend
principalement les actions suivantes :
· Contrôler à l’intégrité des systèmes de fichiers.
· Organiser l’arborescence.
· Protéger l’arborescence en contrôlant les droits sur
les fichiers.
· Gérer les disques (initialisation,
partitionnement,...).
 Ajouter un périphérique
L’ajout d’un périphérique amène à savoir créer un
fichier spécial pour ce périphérique ,ajouter
éventuellement un pilote de périphérique au noyau
 Améliorer les performances du système
Le rôle de l’administrateur est aussi de surveiller et
d’améliorer les performances du système en sachant
paramétrer les ressources utilisées par le noyau pour
son propre fonctionnement ou les services offerts aux
processus.
 Veiller à la sécurité du système
L’administrateur doit veiller à la sécurité en utilisant les
moyens standard que lui fournit le système UNIX.
 Paramétrer le démarrage et l’arrêt du système
L’administrateur doit être capable de paramétrer l’arrêt
et le démarrage du système pour automatiser le
démarrage des nouveaux services et produits.
Terminaux et interpréteur de
commande
Cette ligne de commande est accessible via les
terminaux qui jouent le rôle d'interface entre
l’utilisateur et la machine. Dans ce terminal,
l’utilisateur interagit avec le système en
utilisant un interpréteur de commandes : le
shell.
4.Définition et rôle du shell bash
Qu’appelle t’on un shell ?
Un shell est la liaison la plus élémentaire entre
l’utilisateur et le système d’exploitation, c’est à dire
le programme de gestion de la ligne de commande.
Les commandes saisies sont interprétées par le shell
et transmises au système d’exploitation.
De nombreuses commandes du shell ressemblent aux
commandes MS−DOS : en utilisant la
terminologie Linux, nous pouvons considérer que le
programme command.com correspond au shell de
MS−DOS.
Shell est à rapprocher du mot kernel : le kernel,
signifiant noyau, est souvent entouré d’une
coquille dure (pensez à un noyau d’abricot ou
de pêche). shell signifiant coquille, c’est donc
ce qui « entoure » le noyau Linux : le moyen
de l’utiliser à l’aide de commandes. C’est donc
une interface fonctionnant en mode texte entre
le noyau Linux et les utilisateurs (avancés),
voire les applications.
 l existe plusieurs shells, chacun disposant de spécificités
propres. Le Bourne Shell (sh) est le shell le plus connu et le
plus courant sur les Unix. Le C-Shell (csh) reprend la
structure du langage C. Le Korn Shell (ksh) est une évolution
du Bourne Shell. Le Z-Shell (zsh) est lui-même une évolution
du Korn Shell. Le shell de référence sous Linux se nomme
le Boume Again Shell (bash). Voici une liste non exhaustive
d’interpréteurs de commandes que vous pouvez rencontrer
sous Linux :
 sh : Thompson Shell (n’existe plus) ;
 sh : Bourne Shell (a remplacé le précédent) ;
 bash : Bourne Again Shell ;
 ksh : Korn Shell ;
 csh : C Shell ;
 zsh : Z Shell ;
 tcsh : Tenex C Shell ;
 ash : A Shell ;
 dash : Debian Almquist Shell.
 La liste des shells actuellement présents sur
votre installation Linux est présente dans le
fichier /etc/shells
vous pouvez consulter cette liste en tapant la
commande suivante : more /etc/shells comme
l’illustre l’image ci-dessous:
zineb@ubuntu:~$ more /etc/shells
# /etc/shells: valid login shells
/bin/csh
/bin/sh
/usr/bin/es
/usr/bin/ksh
/bin/ksh
/usr/bin/rc
/usr/bin/tcsh
/bin/tcsh
/usr/bin/esh
/bin/dash
/bin/bash
/bin/rbash
/usr/bin/screen
Bash : le shell par défaut
Le bash n’est pas présent que sous Linux. Étant un
logiciel libre, il peut être compilé et exécuté sur de
nombreuses plates-formes. C’est le shell de référence
sur les systèmes MacOS et il existe aussi pour
Windows.
Le shell fonctionne au sein d’un terminal. Un
terminal est originellement une véritable machine ne
disposant que du nécessaire pour saisir des
instructions (le clavier) et visualiser les résultats (un
écran, voire il y a très longtemps une simple
imprimante à papier listing)
 Le shell fonctionne au sein d’un terminal. Il attend
des saisies au clavier dans la console ou la fenêtre, et
affiche ses résultats au même endroit. Tout utilisateur
avancé de Linux et d’Unix en général a au moins un
terminal ouvert en quasi-permanence. L’ouverture
d’un terminal (ou console, dans ce cas ces mots sont
synonymes) lance automatiquement le shell par
défaut.

L’invite de commande
Le shell attend des entrées au clavier sur une ligne
appelée l’invite de commande ou prompt. Un curseur,
qui peut être représenté par un rectangle fixe,
clignotant ou un caractère souligné, indique la
position actuelle de votre saisie.
L’invite (prompt) fournit des informations sur le
terminal et votre position dans le système de fichiers.
zineb@ubuntu:~$
Dans cette invite tout à fait classique, vous trouvez quatre
informations :
zineb : c’est le nom de connexion, ou login de l’utilisateur,
actuellement connecté au terminal ;
ubuntu : c’est le nom d’hôte (hostname), le nom logique de la
machine raccordée au terminal ;
~ :/home/public : c’est la position actuelle du shell dans le
système de fichiers ;
$ : c’est la terminaison standard du bash pour un utilisateur sans
pouvoirs.
Cette invite vous informe que c’est l’utilisateur sans pouvoirs
d’administration zineb qui utilise le terminal (est connecté) sur
la machine ubuntu et qu’il est actuellement positionné
dans /home/public.
 Le caractère de terminaison peut avoir d’autres
significations :
 un $ indique que l’utilisateur n’a pas de
pouvoirs particuliers.
 un # indique que l’utilisateur est
l’administrateur root qui a tous les pouvoirs.
Le chemin peut varier :
zineb@ubuntu:~ $ le caractère tilde ~ indique
que vous êtes dans votre répertoire personnel.
zineb@ubuntu:~/test $ : le ~ se rapportant à
votre répertoire personnel, vous êtes dans le
répertoire test au sein de celui-ci.
Dans la suite, l’invite de commande sera
généralement remplacé par un simple dollar, $,
ceci afin de gagner de la place sur la ligne de
commande.
Utiliser le shell
a. La saisie
Dans le terminal, le clavier s’utilise comme
d’habitude. Vous pouvez vous déplacer sur la
ligne avec les flèches de droite et de gauche du
clavier et effacer des caractères avec les
touches [Retour arrière] et [Suppr]. Vous
lancez l’exécution de la commande que vous
avez saisi en appuyant sur la touche [Entrée].
Il est temps de tester quelques commandes. La
commande date indique la date et l’heure
actuelles. Vous
n’obtiendrez évidemment pas le même résultat,
et pas toujours dans la même langue, selon
votre installation Linux.
Une commande pratique, pwd, permet de savoir
à quel endroit vous vous situez dans les
répertoires.
Le shell indique qu’il est actuellement positionné
dans le répertoire /home/zineb/Music/.
Syntaxe générale des commandes
 Les commandes ou instructions (les deux mots
sont synonymes dans ce cas) GNU ont très
souvent une syntaxe reprenant la même
structure :
Commande [paramètres] [arguments]
Une commande peut avoir ni paramètres, ni
arguments. Dans ce cas elle exécute l’action
par défaut pour laquelle elle est programmée,
ou affiche un message d’erreur si ceux-ci sont
nécessaires.
Un paramètre est une option de la commande. Les deux
mots sont ici synonymes. C’est souvent une simple
lettre ou un simple chiffre précédé d’un tiret : -1, -p, -
s, etc. Si la commande accepte plusieurs paramètres,
vous les saisissez les uns après les autres en les
séparant par des espaces : -1 -r -t, ou en écrivant
qu’un seul tiret puis tous les paramètres : -lrt. Les
deux syntaxes sont acceptées et produisent le même
résultat. La seconde est seulement plus courte.
Dans certains cas un paramètre nécessite un
argument, par exemple un nom de fichier.
Dans ce cas il est préférable de séparer ce
paramètre des autres : -lrt -f monfichier.
Les arguments sont les entités sur lesquelles la
commande doit exécuter son action. Leur type
dépend de la commande. Ce peut être un
fichier, du texte, des nombres, etc.
Premier exemple concret avec cal
Prenez l’exemple de la commande cal. Celle-ci
admet plusieurs paramètres et arguments.
Appelée seule, elle affiche le calendrier du
mois en cours et surligne le jour actuel.
La commande cal admet deux arguments optionnels. Si un seul
est précisé, il s’agit de l’année, et l’intégralité du calendrier de
cette année est affichée. Si deux arguments sont précisés, le
premier est le mois (par exemple 10), le second l’année (par
exemple 1958).
 Un second paramètre -3 permet d’afficher les mois précédant
et suivant le mois précisé (faites l’exemple).
Chaîner les commandes
Vous pouvez exécuter plusieurs commandes sur
une seule ligne, les unes après les autres. Pour
cela il suffit de les séparer avec un point-
virgule.
$ cal;date;ls -l;pwd
Linux_Cours.ppt
Linux_Cours.ppt
Linux_Cours.ppt

Contenu connexe

Similaire à Linux_Cours.ppt

Le Système Linux (1992)
Le Système Linux (1992)Le Système Linux (1992)
Le Système Linux (1992)Julien SIMON
 
Chapitre i généralités et notions de base
Chapitre i généralités et notions de base Chapitre i généralités et notions de base
Chapitre i généralités et notions de base Wajdi Ben Helal
 
Administration linux
Administration linuxAdministration linux
Administration linuxLys Lopy
 
974267 ubuntu-documentation-installation-configuration
974267 ubuntu-documentation-installation-configuration974267 ubuntu-documentation-installation-configuration
974267 ubuntu-documentation-installation-configurationYounes Hajji
 
Mac os vs linux
Mac os vs linuxMac os vs linux
Mac os vs linuxomri hajer
 
Cours SE linux
Cours SE linuxCours SE linux
Cours SE linuxIdriss22
 
Install party
Install partyInstall party
Install partyhastu2
 
Admin linux
Admin linuxAdmin linux
Admin linuxbekhti
 
Couse SE Le système d’exploitation Linux - IPSET.pdf
Couse SE Le système d’exploitation Linux - IPSET.pdfCouse SE Le système d’exploitation Linux - IPSET.pdf
Couse SE Le système d’exploitation Linux - IPSET.pdfMedBechir
 
Programmation de systèmes embarqués : BeagleBone Black et Linux embarqué
Programmation de systèmes embarqués : BeagleBone Black et Linux embarquéProgrammation de systèmes embarqués : BeagleBone Black et Linux embarqué
Programmation de systèmes embarqués : BeagleBone Black et Linux embarquéECAM Brussels Engineering School
 
resume-theorique-m104-2203-6246fb9f3e558 (2).pdf
resume-theorique-m104-2203-6246fb9f3e558 (2).pdfresume-theorique-m104-2203-6246fb9f3e558 (2).pdf
resume-theorique-m104-2203-6246fb9f3e558 (2).pdfFootballLovers9
 
Présentation de la pile réseau sous gnu linux
Présentation de la pile réseau sous gnu linuxPrésentation de la pile réseau sous gnu linux
Présentation de la pile réseau sous gnu linuxThierry Gayet
 
UNIX_SE4_2023 (1).pdf
UNIX_SE4_2023 (1).pdfUNIX_SE4_2023 (1).pdf
UNIX_SE4_2023 (1).pdfYassineZouin
 

Similaire à Linux_Cours.ppt (20)

Le Système Linux (1992)
Le Système Linux (1992)Le Système Linux (1992)
Le Système Linux (1992)
 
Chapitre i généralités et notions de base
Chapitre i généralités et notions de base Chapitre i généralités et notions de base
Chapitre i généralités et notions de base
 
Administration linux
Administration linuxAdministration linux
Administration linux
 
Install party
Install partyInstall party
Install party
 
974267 ubuntu-documentation-installation-configuration
974267 ubuntu-documentation-installation-configuration974267 ubuntu-documentation-installation-configuration
974267 ubuntu-documentation-installation-configuration
 
Mac os vs linux
Mac os vs linuxMac os vs linux
Mac os vs linux
 
Cours SE linux
Cours SE linuxCours SE linux
Cours SE linux
 
Install party
Install partyInstall party
Install party
 
Admin linux
Admin linuxAdmin linux
Admin linux
 
Formation ubuntu
Formation ubuntuFormation ubuntu
Formation ubuntu
 
Sistema operativo frances
Sistema operativo francesSistema operativo frances
Sistema operativo frances
 
Couse SE Le système d’exploitation Linux - IPSET.pdf
Couse SE Le système d’exploitation Linux - IPSET.pdfCouse SE Le système d’exploitation Linux - IPSET.pdf
Couse SE Le système d’exploitation Linux - IPSET.pdf
 
Programmation de systèmes embarqués : BeagleBone Black et Linux embarqué
Programmation de systèmes embarqués : BeagleBone Black et Linux embarquéProgrammation de systèmes embarqués : BeagleBone Black et Linux embarqué
Programmation de systèmes embarqués : BeagleBone Black et Linux embarqué
 
resume-theorique-m104-2203-6246fb9f3e558 (2).pdf
resume-theorique-m104-2203-6246fb9f3e558 (2).pdfresume-theorique-m104-2203-6246fb9f3e558 (2).pdf
resume-theorique-m104-2203-6246fb9f3e558 (2).pdf
 
Tp n 1 linux
Tp n 1 linuxTp n 1 linux
Tp n 1 linux
 
Cour1
Cour1Cour1
Cour1
 
Pourquoi linux
Pourquoi linuxPourquoi linux
Pourquoi linux
 
Présentation de la pile réseau sous gnu linux
Présentation de la pile réseau sous gnu linuxPrésentation de la pile réseau sous gnu linux
Présentation de la pile réseau sous gnu linux
 
UNIX_SE4_2023 (1).pdf
UNIX_SE4_2023 (1).pdfUNIX_SE4_2023 (1).pdf
UNIX_SE4_2023 (1).pdf
 
Systemes d'exploitation
Systemes  d'exploitationSystemes  d'exploitation
Systemes d'exploitation
 

Dernier

présentation sur la logistique (4).
présentation     sur la  logistique (4).présentation     sur la  logistique (4).
présentation sur la logistique (4).FatimaEzzahra753100
 
SciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdfSKennel
 
Câblage, installation et paramétrage d’un réseau informatique.pdf
Câblage, installation et paramétrage d’un réseau informatique.pdfCâblage, installation et paramétrage d’un réseau informatique.pdf
Câblage, installation et paramétrage d’un réseau informatique.pdfmia884611
 
Cours-de-Ponts Cours de Ponts Principes généraux - Conception Méthodes de con...
Cours-de-Ponts Cours de Ponts Principes généraux - Conception Méthodes de con...Cours-de-Ponts Cours de Ponts Principes généraux - Conception Méthodes de con...
Cours-de-Ponts Cours de Ponts Principes généraux - Conception Méthodes de con...maach1
 
CHAPITRE 2 VARIABLE ALEATOIRE probabilité.ppt
CHAPITRE 2 VARIABLE ALEATOIRE probabilité.pptCHAPITRE 2 VARIABLE ALEATOIRE probabilité.ppt
CHAPITRE 2 VARIABLE ALEATOIRE probabilité.pptbentaha1011
 
Actions du vent sur les bâtiments selon lEurocode 1 – Partie 1-4.pdf
Actions du vent sur les bâtiments selon lEurocode 1 – Partie 1-4.pdfActions du vent sur les bâtiments selon lEurocode 1 – Partie 1-4.pdf
Actions du vent sur les bâtiments selon lEurocode 1 – Partie 1-4.pdfalainfahed961
 

Dernier (8)

présentation sur la logistique (4).
présentation     sur la  logistique (4).présentation     sur la  logistique (4).
présentation sur la logistique (4).
 
SciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdf
 
Câblage, installation et paramétrage d’un réseau informatique.pdf
Câblage, installation et paramétrage d’un réseau informatique.pdfCâblage, installation et paramétrage d’un réseau informatique.pdf
Câblage, installation et paramétrage d’un réseau informatique.pdf
 
Cours-de-Ponts Cours de Ponts Principes généraux - Conception Méthodes de con...
Cours-de-Ponts Cours de Ponts Principes généraux - Conception Méthodes de con...Cours-de-Ponts Cours de Ponts Principes généraux - Conception Méthodes de con...
Cours-de-Ponts Cours de Ponts Principes généraux - Conception Méthodes de con...
 
CAP2ER_GC_Presentation_Outil_20240422.pptx
CAP2ER_GC_Presentation_Outil_20240422.pptxCAP2ER_GC_Presentation_Outil_20240422.pptx
CAP2ER_GC_Presentation_Outil_20240422.pptx
 
Note agro-climatique n°2 - 17 Avril 2024
Note agro-climatique n°2 - 17 Avril 2024Note agro-climatique n°2 - 17 Avril 2024
Note agro-climatique n°2 - 17 Avril 2024
 
CHAPITRE 2 VARIABLE ALEATOIRE probabilité.ppt
CHAPITRE 2 VARIABLE ALEATOIRE probabilité.pptCHAPITRE 2 VARIABLE ALEATOIRE probabilité.ppt
CHAPITRE 2 VARIABLE ALEATOIRE probabilité.ppt
 
Actions du vent sur les bâtiments selon lEurocode 1 – Partie 1-4.pdf
Actions du vent sur les bâtiments selon lEurocode 1 – Partie 1-4.pdfActions du vent sur les bâtiments selon lEurocode 1 – Partie 1-4.pdf
Actions du vent sur les bâtiments selon lEurocode 1 – Partie 1-4.pdf
 

Linux_Cours.ppt

  • 3. Qu'est-ce qu'UNIX ? UNIX est un système d'exploitation. Ce système est né, en 1969, de la volonté de Ken Thompson et Dennis Ritchie de faire un système d'exploitation à la fois multitâches et multi-utilisateurs. Il était aussi question de concevoir de petits programmes, ne faisant qu'un nombre limité de tâches, mais pouvant interagir entre eux. Depuis cette période, une grande quantité de systèmes d'exploitations dérivés d'UNIX a vu le jour, certains payants, d'autres gratuits.
  • 4. Pourquoi UNIX ? C'est avec l'idée de créer un système d'exploitation répondant à de nouvelles attentes qu'UNIX a vu le jour : être disponible 24h/24 7j/7 était un défi à relever au niveau de la gestion de la mémoire, des accès aux disques, etc. Mais là où les créateurs d'UNIX innoveront réellement, c'est dans la réalisation du premier système d'exploitation entièrement multi-tâches et multi- utilisateurs, ouvrant la marche vers l'informatique telle qu'on la connait aujourd'hui.
  • 5. Un ensemble de règles assurent le fonctionnement et le succès d'UNIX, à commencer par le fameux paradigme « tout est fichier ». Toutes, ou presque toutes, les fonctionnalités du système d'exploitation sont accessibles via de simples fichiers : périphériques, processus, répertoires, les pipes, la mémoire, etc... . Ainsi, pour qu'une application puisse communiquer avec le système, il suffit qu'elle soit capable de lire et écrire dans un fichier. Mais c'est surtout au niveau des méthodes de programmation qu'UNIX révolutionnera le mode de pensée de l'époque. Fini le développement isolé d'une seule équipe de programmeurs, au contraire les échanges de code source et la collaboration de plusieurs équipes devient sont très courant . Ce monde de fonctionnement évoluera peu à peu vers la notion de logiciel libre. Venons-en maintenant à Linux. Philosophie UNIX
  • 6. En 1991, un étudiant finlandais nommé Linus Torvalds décide de créer un nouveau noyau basé sur Minix (un dérivé d’UNIX) afin de contourner ses limitations et celles de MS- DOS. Ce nouveau noyau est distribué gratuitement sur Internet en août 1991 sous le nom : Linux. Le rôle du noyau dans un système d'exploitation est de s'interfacer entre les programmes utilisateurs et le matériel Il fait donc partie du système d'exploitation mais ne représente pas l'OS à lui tout seul. Linux, pris de façon indépendante, ne sert donc à rien. Naissance de GNU/Linux
  • 7. Richard Stallman, fondateur du projet GNU, persuade Linus Torvalds de passer Linux sous licence GPL, ce qui permet d’utiliser ce noyau pour le projet GNU. Un système d'exploitation complet est alors formé : il est composé du noyau Linux et des outils GNU. Le nom complet de ce système est GNU/Linux
  • 8. De part son esprit communautaire, Linux se décline en plus d'une centaine de distributions. Toutes ces distributions possèdent un noyau Linux, mais différent dans la composition des programmes qui l'entourent. Chaque distribution possède : -Un noyau Linux -Des programmes, de préférence Libres -Un système de packages -Des programmes d'installation Les distributions GNU/Linux
  • 9. Les distributions les plus connues sont Debian, Gentoo, RedHat, Slackware, Mandriva et SUSE. Il existe aussi un nombre considérable de « sur-distributions » comme par exemple Ubuntu ou Fedora qui se basent sur respectivement sur Debian et RedHat.
  • 11. Logiciels open-sources et propriétaires Un logiciel peut être disponible sous différentes formes, la première est la version source c'est à dire la version écrite dans un langage de programmation et compréhensible par l'homme. L'autre est la version compilée, c'est la traduction de la version source en version compréhensible par la machine, on parle aussi de version binaire. Ainsi on distinguera un logiciel open-source d'un logiciel propriétaire : le logiciel open-source met à disposition les sources du programme tandis que le logiciel propriétaire se cantonne à distribuer la version compilée
  • 12. Logiciel Libre et licences En 1983, Richard Stallman est alors chercheur en intelligence artificielle En tant que chercheur, il est habitué à échanger du code source avec ses collègues. Rencontrant quelques problèmes avec le pilote propriétaire de son imprimante, il essaye d'en obtenir le code source afin de le modifier et de l'améliorer mais reçoit un refus de la part de la société distribuant le pilote. À la suite de cette mésaventure, il décide donc de réécrire un pilote correspondant à ses attentes et définit ainsi les bases de la philosophie du logiciel libre. Pour cela il énonce les quatre libertés suivantes : • liberté d'exécution • liberté de modification • liberté de redistribution • liberté d'amélioration
  • 13.
  • 15. Architecture UNIX Linux est architecturé autour d'un noyau (kernel) chargé de prendre en charge le matériel
  • 16. Le noyau Linux est un ensemble de petits programmes qui permettent de gérer l'exécution des autres applications qui tournent sur la station. Ces primitives gèrent l’accession à la mémoire et, plus généralement , aux différentes ressources de la machine .
  • 17. Le noyau gère les taches de base du système :  La gestion des processus système  La gestion des processus utilisateurs  La gestion du processeur et de la RAM  La gestion des systèmes de fichiers
  • 18.  L'interpréteur de commandes «shell». est l'interface entre l'utilisateur et le système d'exploitation.  Le shell est ainsi chargé de faire l'intermédiaire entre le système d'exploitation et l'utilisateur grâce aux lignes de commandes saisies par ce dernier. Son rôle consiste ainsi à lire la ligne de commande, interpréter sa signification, exécuter la commande, puis retourner le résultat sur les sorties.
  • 19.  Le système de fichiers (file system) Un système de fichiers est une façon d'organiser et de stocker une arborescence sur un support (disque, disquette, cd ...). Chaque OS a développé sa propre organisation.  Linux possède son système appelé ext2 mais peut en gérer d'autres.
  • 20. Caractéristiques de linux Système d’exploitation multitâches. Les systèmes Unix gèrent l’exécution de plusieurs dizaines de programmes simultanément en utilisant la technique du temps partagé.
  • 21.  Système multiutilisateurs. Plusieurs utilisateurs pourront travailler sur le même système central.  Système multiprocesseurs. Les OS Unix peuvent gérer des systèmes électroniques ayants plusieurs processeurs. Plusieurs processus peuvent alors s’exécuter dans le même instant .  Système multiplateformes. Les systèmes Unix sont programmés (écris) en grande partie en langage C. Le code source peut, avec peu de modifications, être compilé pour des systèmes équipés de processeurs de différentes architectures.
  • 22. Le rôle de l’administrateur  Créer, modifier, supprimer un utilisateur. L’administrateur doit gérer les comptes des utilisateurs. Outre la création et la suppression des comptes qui s’effectuent avec des commandes standard, il doit être capable de modifier l’environnement de travail des utilisateurs. Cette dernière opération recouvre un large éventail d’actions : changement du mot de passe, appropriation de fichiers,…
  • 23.  Gérer les fichiers et les disques La gestion des fichiers et des disques comprend principalement les actions suivantes : · Contrôler à l’intégrité des systèmes de fichiers. · Organiser l’arborescence. · Protéger l’arborescence en contrôlant les droits sur les fichiers. · Gérer les disques (initialisation, partitionnement,...).
  • 24.  Ajouter un périphérique L’ajout d’un périphérique amène à savoir créer un fichier spécial pour ce périphérique ,ajouter éventuellement un pilote de périphérique au noyau  Améliorer les performances du système Le rôle de l’administrateur est aussi de surveiller et d’améliorer les performances du système en sachant paramétrer les ressources utilisées par le noyau pour son propre fonctionnement ou les services offerts aux processus.
  • 25.  Veiller à la sécurité du système L’administrateur doit veiller à la sécurité en utilisant les moyens standard que lui fournit le système UNIX.  Paramétrer le démarrage et l’arrêt du système L’administrateur doit être capable de paramétrer l’arrêt et le démarrage du système pour automatiser le démarrage des nouveaux services et produits.
  • 27. Cette ligne de commande est accessible via les terminaux qui jouent le rôle d'interface entre l’utilisateur et la machine. Dans ce terminal, l’utilisateur interagit avec le système en utilisant un interpréteur de commandes : le shell.
  • 28. 4.Définition et rôle du shell bash
  • 29. Qu’appelle t’on un shell ? Un shell est la liaison la plus élémentaire entre l’utilisateur et le système d’exploitation, c’est à dire le programme de gestion de la ligne de commande. Les commandes saisies sont interprétées par le shell et transmises au système d’exploitation. De nombreuses commandes du shell ressemblent aux commandes MS−DOS : en utilisant la terminologie Linux, nous pouvons considérer que le programme command.com correspond au shell de MS−DOS.
  • 30. Shell est à rapprocher du mot kernel : le kernel, signifiant noyau, est souvent entouré d’une coquille dure (pensez à un noyau d’abricot ou de pêche). shell signifiant coquille, c’est donc ce qui « entoure » le noyau Linux : le moyen de l’utiliser à l’aide de commandes. C’est donc une interface fonctionnant en mode texte entre le noyau Linux et les utilisateurs (avancés), voire les applications.
  • 31.  l existe plusieurs shells, chacun disposant de spécificités propres. Le Bourne Shell (sh) est le shell le plus connu et le plus courant sur les Unix. Le C-Shell (csh) reprend la structure du langage C. Le Korn Shell (ksh) est une évolution du Bourne Shell. Le Z-Shell (zsh) est lui-même une évolution du Korn Shell. Le shell de référence sous Linux se nomme le Boume Again Shell (bash). Voici une liste non exhaustive d’interpréteurs de commandes que vous pouvez rencontrer sous Linux :  sh : Thompson Shell (n’existe plus) ;  sh : Bourne Shell (a remplacé le précédent) ;  bash : Bourne Again Shell ;  ksh : Korn Shell ;  csh : C Shell ;  zsh : Z Shell ;  tcsh : Tenex C Shell ;  ash : A Shell ;  dash : Debian Almquist Shell.
  • 32.  La liste des shells actuellement présents sur votre installation Linux est présente dans le fichier /etc/shells vous pouvez consulter cette liste en tapant la commande suivante : more /etc/shells comme l’illustre l’image ci-dessous:
  • 33. zineb@ubuntu:~$ more /etc/shells # /etc/shells: valid login shells /bin/csh /bin/sh /usr/bin/es /usr/bin/ksh /bin/ksh /usr/bin/rc /usr/bin/tcsh /bin/tcsh /usr/bin/esh /bin/dash /bin/bash /bin/rbash /usr/bin/screen
  • 34. Bash : le shell par défaut Le bash n’est pas présent que sous Linux. Étant un logiciel libre, il peut être compilé et exécuté sur de nombreuses plates-formes. C’est le shell de référence sur les systèmes MacOS et il existe aussi pour Windows. Le shell fonctionne au sein d’un terminal. Un terminal est originellement une véritable machine ne disposant que du nécessaire pour saisir des instructions (le clavier) et visualiser les résultats (un écran, voire il y a très longtemps une simple imprimante à papier listing)
  • 35.  Le shell fonctionne au sein d’un terminal. Il attend des saisies au clavier dans la console ou la fenêtre, et affiche ses résultats au même endroit. Tout utilisateur avancé de Linux et d’Unix en général a au moins un terminal ouvert en quasi-permanence. L’ouverture d’un terminal (ou console, dans ce cas ces mots sont synonymes) lance automatiquement le shell par défaut. 
  • 36. L’invite de commande Le shell attend des entrées au clavier sur une ligne appelée l’invite de commande ou prompt. Un curseur, qui peut être représenté par un rectangle fixe, clignotant ou un caractère souligné, indique la position actuelle de votre saisie. L’invite (prompt) fournit des informations sur le terminal et votre position dans le système de fichiers. zineb@ubuntu:~$
  • 37. Dans cette invite tout à fait classique, vous trouvez quatre informations : zineb : c’est le nom de connexion, ou login de l’utilisateur, actuellement connecté au terminal ; ubuntu : c’est le nom d’hôte (hostname), le nom logique de la machine raccordée au terminal ; ~ :/home/public : c’est la position actuelle du shell dans le système de fichiers ; $ : c’est la terminaison standard du bash pour un utilisateur sans pouvoirs. Cette invite vous informe que c’est l’utilisateur sans pouvoirs d’administration zineb qui utilise le terminal (est connecté) sur la machine ubuntu et qu’il est actuellement positionné dans /home/public.
  • 38.  Le caractère de terminaison peut avoir d’autres significations :  un $ indique que l’utilisateur n’a pas de pouvoirs particuliers.  un # indique que l’utilisateur est l’administrateur root qui a tous les pouvoirs. Le chemin peut varier :
  • 39. zineb@ubuntu:~ $ le caractère tilde ~ indique que vous êtes dans votre répertoire personnel. zineb@ubuntu:~/test $ : le ~ se rapportant à votre répertoire personnel, vous êtes dans le répertoire test au sein de celui-ci. Dans la suite, l’invite de commande sera généralement remplacé par un simple dollar, $, ceci afin de gagner de la place sur la ligne de commande.
  • 40. Utiliser le shell a. La saisie Dans le terminal, le clavier s’utilise comme d’habitude. Vous pouvez vous déplacer sur la ligne avec les flèches de droite et de gauche du clavier et effacer des caractères avec les touches [Retour arrière] et [Suppr]. Vous lancez l’exécution de la commande que vous avez saisi en appuyant sur la touche [Entrée].
  • 41. Il est temps de tester quelques commandes. La commande date indique la date et l’heure actuelles. Vous n’obtiendrez évidemment pas le même résultat, et pas toujours dans la même langue, selon votre installation Linux.
  • 42. Une commande pratique, pwd, permet de savoir à quel endroit vous vous situez dans les répertoires. Le shell indique qu’il est actuellement positionné dans le répertoire /home/zineb/Music/.
  • 43. Syntaxe générale des commandes  Les commandes ou instructions (les deux mots sont synonymes dans ce cas) GNU ont très souvent une syntaxe reprenant la même structure : Commande [paramètres] [arguments]
  • 44. Une commande peut avoir ni paramètres, ni arguments. Dans ce cas elle exécute l’action par défaut pour laquelle elle est programmée, ou affiche un message d’erreur si ceux-ci sont nécessaires.
  • 45. Un paramètre est une option de la commande. Les deux mots sont ici synonymes. C’est souvent une simple lettre ou un simple chiffre précédé d’un tiret : -1, -p, - s, etc. Si la commande accepte plusieurs paramètres, vous les saisissez les uns après les autres en les séparant par des espaces : -1 -r -t, ou en écrivant qu’un seul tiret puis tous les paramètres : -lrt. Les deux syntaxes sont acceptées et produisent le même résultat. La seconde est seulement plus courte.
  • 46. Dans certains cas un paramètre nécessite un argument, par exemple un nom de fichier. Dans ce cas il est préférable de séparer ce paramètre des autres : -lrt -f monfichier. Les arguments sont les entités sur lesquelles la commande doit exécuter son action. Leur type dépend de la commande. Ce peut être un fichier, du texte, des nombres, etc.
  • 47. Premier exemple concret avec cal Prenez l’exemple de la commande cal. Celle-ci admet plusieurs paramètres et arguments. Appelée seule, elle affiche le calendrier du mois en cours et surligne le jour actuel.
  • 48. La commande cal admet deux arguments optionnels. Si un seul est précisé, il s’agit de l’année, et l’intégralité du calendrier de cette année est affichée. Si deux arguments sont précisés, le premier est le mois (par exemple 10), le second l’année (par exemple 1958).  Un second paramètre -3 permet d’afficher les mois précédant et suivant le mois précisé (faites l’exemple).
  • 49. Chaîner les commandes Vous pouvez exécuter plusieurs commandes sur une seule ligne, les unes après les autres. Pour cela il suffit de les séparer avec un point- virgule. $ cal;date;ls -l;pwd