Chapitre 1
INTRODUCTION A
GNU/LINUX
14/12/17 Massamba SECK 1
Origines du Logiciel Libre
• 1971 : Richard Stallman (chercheur au MIT, auteur de gcc,
Emacs ...) énonce clairement le concept de logiciel libre (« free »)
« ... un savoir scientifique doit être partagé en le distribuant, ...
les codes source doivent être libres d'accès ... »
• Démarre le projet GNU (1984). But : recréer un
système d'exploitation complet (Unix-like), composé uniquement de
logiciels libres.
• Créé la FSF (Free Software Fundation, 1985) pour
gérer le projet GNU.
Remarque : « Free » dans la culture hacker signifie
« libre », pas nécessairement « gratuit » ou « non commercial »
14/12/17 Massamba SECK 2
Le projet GNU
• Principe de base : le libre accès au code source accélère le progrès
en matière d'informatique car l'innovation dépend de la diffusion du
code source
• La liberté au sens GNU est définie selon quatre principes :
- liberté d'exécuter le programme, pour tous les usages
- liberté d'étudier le fonctionnement du programme, de
l'adapter à ses besoins
- liberté de redistribuer des copies
- liberté d'améliorer le programme et de publier ses améliorations,
pour en faire profiter toute la communauté
14/12/17 Massamba SECK 3
La licence GPL
• La licence GPL (General Public Licence)
[Link]
- Autorise l'utilisateur à copier et distribuer à volonté le logiciel
qu'elle protège, pourvu qu'il n'interdise pas à ses pairs de le faire
aussi
- Requiert aussi que tout dérivé d'un travail placé sous sa protection
soit lui aussi protégé par elle
- Quand la GPL évoque les logiciels libres, elle traite de liberté et
non de gratuité
- Un logiciel GPL peut être vendu !!!
14/12/17 Massamba SECK 4
Linux (GNU/Linux)
Linux est fondé sur le système d’exploitation UNIX.
Il Intègre :
- Le noyau Linux (clone du système Unix) écrit par l’étudiant Linus
Torvalds (1991) et toute une équipe de développeurs sur Internet
- Des composants logiciels libres issus du projet GNU
- Embarras du choix pour les logiciels avec Linux
( +sieurs shells, interfaces, …..)
- Les sources du noyau Linux sont disponibles sur
[Link]/
- C'est un logiciel libre distribué sous licence GPL
- Forte utilisation pour les serveurs
14/12/17 Massamba SECK 5
Distributions de Linux
• Distribution Linux = noyau Linux + collections (cohérentes) de
logiciels libres
– Plusieurs distributions existantes
– Chaque distribution a sa cible (
• Versions : Une distribution met en place des versions en fonction de
son évolution
14/12/17 Massamba SECK 6
Distributions de Linux
• Redhat : [Link]
Société américaine fondée en 1994.
célèbre pour avoir introduit le système Redhat Package
Manager (RPM), de gestion de paquets logiciels
• Fedora, anciennement Fedora Core, développée par le Projet
Fedora et soutenue par la société Red Hat. Fedora dérive de la
distribution Red Hat Linux, et est destinée à la remplacer pour les
utilisateurs finaux (utilisation non commerciale)
• Centos: distribution connue pour sa stabilité et ses mises à jours
plus régulières que Red Hat Enterprise Linux, dont elle est
basée. Distribution Linux utilisée sur des serveurs web
14/12/17 Massamba SECK 7
Quelques distributions de Linux
• Debian : [Link]
Distribution issue d'un effort communautaire, le « projet Debian », et
non d'une entreprise
Distribution très soignée et ingénieuse, austère à installer et à
administrer (déconseillée aux débutants ?)
Utilise le système de gestion de paquets Debian
• Ubuntu : [Link]
Distribution populaire à base Debian lancée en 2004.
Son nom provient d'un ancien mot bantou (langue d'Afrique),
Ubuntu, signifiant « Humanité aux autres», ou encore
« Je suis ce que je suis grâce à ce que nous sommes tous »
14/12/17 Massamba SECK 8
Quelques distributions de Linux
• Mandriva :
La distribution française par excellence
Très répandue dans le milieu éducatif, et en PME/PMI utilise le
système de gestion de paquets RPM
• Suse :
Société allemande fondée à Nuremberg en 1993 , rachetée en 2003
par l'éditeur de logiciels américain Novell
- utilise le système de gestion de paquets RPM
• TurboLinux :
Distribution japonaise se déclinant en une version serveur,
une version client et une version cluster
14/12/17 Massamba SECK 9
Composants d'une distribution GNU/Linux
(source Wikipédia)
14/12/17 Massamba SECK 10
Caractéristiques de linux
• Portabilité (écrit en C)
• Multi-Utilisateur
Plusieurs utilisateurs peuvent se connecter et travailler en même
temps. Chaque utilisateur a son environnement personnel.
• Multitâches
Un même utilisateur peut lancer plusieurs travaux simultanément.
• Interactif : Il est possible de dialoguer avec l'ordinateur.
Possibilité aussi de lancer des processus (tâches) en arrière plan et
en mode différé (batch).
14/12/17 Massamba SECK 11
Caractéristiques de linux
• Un système de fichiers hiérarchisé
(Organisation arborescente)
• Un mécanisme de protection
- identification des utilisateurs par mot de passe
- protection des fichiers
- Un super-utilisateur
• Une vision simplifiée par l'utilisateur des entrées-sorties
Les périphériques sont représentés par des noms de fichier, et
peuvent être utilisés comme des fichiers ordinaires
• Le choix d’un interpréteur de commandes : les shells
14/12/17 Massamba SECK 12
Structure du système linux
• Le noyau gère les tâches de base du système :
- L'initialisation du système
- La gestion des ressources
- La gestion des processus
- La gestion des fichiers
- La gestion des Entrées/Sorties
• L’utilisateur communique avec le noyau par l'intermédiaire d'un
SHELL.
• Les Shell sont aussi des langages de commandes et de
programmation.
14/12/17 Massamba SECK 13
Structure du système linux
• Le noyau gère les tâches de base du système :
- L'initialisation du système
- La gestion des ressources
- La gestion des processus
- La gestion des fichiers
- La gestion des Entrées/Sorties
• L’utilisateur communique avec le noyau par l'intermédiaire d'un
SHELL.
• Les Shell sont aussi des langages de commandes et de
programmation.
14/12/17 Massamba SECK 14
LES SHELLS
Les shells les plus connus sont :
– BOURNE SHELL : /bin/sh
– KORN-SHELL : /bin/ksh
– C-SHELL : /bin/csh
– TC-SHELL : /bin/tcsh
– Bash : /bin/bash
14/12/17 Massamba SECK 15
Les utilitaires
• Les utilitaires sont des outils d'interfaçage avec le Système, de
programmation et de communication
14/12/17 Massamba SECK 16