Présentation
Architecture, connexion et déconnexion
Une première commande
Quelques références Bibliographiques
LPS3652: Linux et programmation système
FOKO SINDJOUNG Miguel Landry, PhD
Université de Dschang
Institut Universitaire de Technologies FOTSO Victor de Bandjoun
Département de Génie Informatique
Décembre 2021
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 1 / 44
Présentation
Architecture, connexion et déconnexion
Une première commande
Quelques références Bibliographiques
Objectifs du chapitre
1 Présenter les principes généraux de la programmation sous Linux
2 Présenter les outils disponibles pour réaliser des applications sous
Linux
3 Présenter les utilitaires et des bibliothèques permettant d’étendre les
possibilités de la bibliothèque GlibC
4 Se connecter/déconnecter et pouvoir changer ses paramètres de
connexion
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 2 / 44
Présentation
Définition
Architecture, connexion et déconnexion
Historique
Une première commande
Généralités sur le développement sous Linux
Quelques références Bibliographiques
Qu’est-ce qu’un système d’exploitation ?
Programme ou ensemble de programmes assurant la gestion de
l’ordinateur et de ses périphériques
Programme ou ensemble de programmes et d’API servant d’interface
entre le matériel (hardware) et les applications (software)
Unix est un système d’exploitation multi-tâches et multi-utilisateurs.
Il est disponible du simple micro (PC, Mac, Atari, Amiga) jusqu’au
gros système (IBM Z séries) et même dans des PDA
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 3 / 44
Présentation
Définition
Architecture, connexion et déconnexion
Historique
Une première commande
Généralités sur le développement sous Linux
Quelques références Bibliographiques
Quelles sont les propriétés d’Unix ?
Portable : Écrit majoritairement en C, seules quelques parties sont en
assembleur
Multi-tâches : Le système peut exécuter plusieurs tâches en
même-temps, de manière préemptive( ?), sur un ou plusieurs
processeurs
Multi-utilisateurs : Plusieurs utilisateurs peuvent se connecter et
travailler en même temps sur une machine, soit directement sur
celle-ci (Linux, BSD, Sco) soit depuis un terminal distant
Stable : protection mémoire, les plantages du système par lui-même
sont très rares
Deux standards principaux : System V et BSD, qui tout en restant
compatibles diffèrent au niveau de certains appels systèmes, de la
hiérarchie du système de fichier, de la séquence de démarrage...
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 4 / 44
Présentation
Définition
Architecture, connexion et déconnexion
Historique
Une première commande
Généralités sur le développement sous Linux
Quelques références Bibliographiques
Les composants de base d’un système Unix sont le noyau (kernel) et
les outils (shell et commandes)
Les principales tâches du SE sont les suivantes :
1 Gestion de la mémoire
2 Accès aux périphériques
3 Accès disque / Système de fichiers
4 Gestion des programmes (processus)
5 Sécurité / Accès aux données
6 Collecte d’informations système : Statistiques
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 5 / 44
Présentation
Définition
Architecture, connexion et déconnexion
Historique
Une première commande
Généralités sur le développement sous Linux
Quelques références Bibliographiques
1969 : Ken Thompson décide de développer son propre OS, en
s’éloignant volontairement de tout existant et écrit UNICS (Unified
Information and Computing System) sur DEC PDP-7
1971 : Version 1 d’Unix sur PDP/11-20 avec un système de fichiers,
fork(), roff, ed, suite à la demande de AT&T qui avait besoin d’ un
système de traitement de textes pour l’ aide à l’écriture de ses brevets
1973 : La V2 intègre les tubes (pipes)
1978 : La V7 est annoncée, développée afin de pouvoir être portée
sur d’autres architectures matérielles
1986 : Première ébauche des normes POSIX sur la standardisation
des appels systèmes et des fonctions
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 6 / 44
Présentation
Définition
Architecture, connexion et déconnexion
Historique
Une première commande
Généralités sur le développement sous Linux
Quelques références Bibliographiques
1991 : OSF/1. Apparition des premiers clones Unix comme Linux et
FreeBSD
1992 : Sun sort Solaris (SunOS), dérivé de System V v4, avec la
gestion des threads. AT&T créée USL (Unix Software Laboratories) et
transfert toutes les licences à cettre société
1993 : Novell rachète USL, puis transfert les droits de licences à
X/Open
Depuis 1993 : S’il existe un grand nombre d’Unix propriétaires, la
plupart restent conformes aux normes et standards établis (X/Open,
Posix)
Les code source d’Unix appartient aujourd’hui à la société Caldera
issue de Novell, mais les droits et la force de proposition sont
transférés à l’Open Group
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 7 / 44
Présentation
Définition
Architecture, connexion et déconnexion
Historique
Une première commande
Généralités sur le développement sous Linux
Quelques références Bibliographiques
Dans une machine fonctionnant sous Linux, de nombreuses couches
logicielles sont empilées, chacune fournissant des services aux autres
Il est important de comprendre comment fonctionne ce modèle pour
savoir où une application viendra s’intégrer
La base du système est le noyau : le seul élément à porter
véritablement le nom Linux
Le noyau est souvent imaginé comme une sorte de logiciel mystérieux
fonctionnant en arrière-plan
Mais il s’agit avant tout d’un ensemble cohérent de routines
fournissant des services aux applications, en s’assurant de conserver
l’intégrité du système
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 8 / 44
Présentation
Définition
Architecture, connexion et déconnexion
Historique
Une première commande
Généralités sur le développement sous Linux
Quelques références Bibliographiques
Pour le développeur, le noyau est surtout une interface entre son
application, qui peut être exécutée par n’importe quel utilisateur, et la
machine physique dont la manipulation directe doit être supervisée
par un dispositif privilégié
Le noyau fournit donc des points d’entrée, qu’on nomme «
appels-système », et que le programmeur invoque comme des
sous-routines (sous-fonctions) offrant des services variés
Par exemple l’appel-système write( ) permet d’écrire des données
dans un fichier
L’application appelante n’a pas besoin de savoir sur quel type de
système de fichiers (ext2, msdos, vfat...) l’écriture se fera
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 9 / 44
Présentation
Définition
Architecture, connexion et déconnexion
Historique
Une première commande
Généralités sur le développement sous Linux
Quelques références Bibliographiques
L’envoi des données peut même avoir lieu de manière transparente
dans un tube de communication entre applications ou vers un client
distant connecté par réseau
Seul le noyau occupera de la basse besogne consistant à piloter les
contrôleurs de disque, gérer la mémoire ou coordonner le
fonctionnement des périphériques comme les cartes réseau
Il existe une petite centaine d’appels-système sous Linux
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 10 / 44
Présentation
Définition
Architecture, connexion et déconnexion
Historique
Une première commande
Généralités sur le développement sous Linux
Quelques références Bibliographiques
Les appels systèmes effectuent des tâches très variées
Allocation mémoire aux entrées-sorties directes sur un périphérique
Gestion du système de fichiers,
Lancement d’applications
La communication réseau
etc.
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 11 / 44
Présentation
Définition
Architecture, connexion et déconnexion
Historique
Une première commande
Généralités sur le développement sous Linux
Quelques références Bibliographiques
L’utilisation des appels-système est en principe suffisante pour écrire
n’importe quelle application sous Linux
Toutefois, ce genre de développement serait particulièrement
fastidieux, et la portabilité du logiciel résultant serait loin d’être
assurée
Les systèmes Unix compatibles avec la norme Posix.1 offrent
normalement un jeu d’appels-système commun
Il existe donc une couche supérieure avec des fonctions qui viennent
compléter les appels système
Cette couche supérieure est constituée par la bibliothèque C.
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 12 / 44
Présentation
Définition
Architecture, connexion et déconnexion
Historique
Une première commande
Généralités sur le développement sous Linux
Quelques références Bibliographiques
Cette bibliothèque regroupe des fonctionnalités complémentaires de
celles qui sont assurées par le noyau
La bibliothèque C permet aussi d’encapsuler les appels-système dans
des routines de plus haut niveau, qui sont donc plus aisément
portables dune machine à l’autre
Les routines proposées par la bibliothèque C sont aussi un moyen de
faciliter la tâche du programmeur en offrant une interface de haut
niveau pour des appels-système plus ardus, comme sbrk( )
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 13 / 44
Présentation
Définition
Architecture, connexion et déconnexion
Historique
Une première commande
Généralités sur le développement sous Linux
Quelques références Bibliographiques
Le programmeur retiendra donc que nous décrirons ici deux types de
fonctions
1 Les appels-système : implémentés par le noyau et offrant un accès
de bas niveau aux fonctionnalités du système
L’invocation d’un appel système est une opération assez coûteuse, car
il est nécessaire d’assurer une commutation du processus en mode
noyau avec toutes les manipulations que cela impose sur les registres
du processeur
2 Les routines de bibliothèques : qui peuvent compléter possibilités
du noyau, mais aussi l’encadrer pour le rendre plus simple et plus
portable
L’appel dune fonction de bibliothèque au contraire est un mécanisme
léger, équivalent à l’appel d’une sous-routine du programme
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 14 / 44
Présentation
Définition
Architecture, connexion et déconnexion
Historique
Une première commande
Généralités sur le développement sous Linux
Quelques références Bibliographiques
Outils de développement (1/2) : Cinq principaux types d’utilitaires
1 L’éditeur de texte : à l’origine de tout le processus de
développement applicatif.
2 Le compilateur : permet de passer d’un fichier source à un fichier
objet. Se fait en réalité en plusieurs étapes grâce à différents
composants (préprocesseur C. compilateur. assembleur).
3 L’éditeur de liens : assure le regroupement des fichiers objet
provenant des différents modules et les associe avec les bibliothèques
utilisées pour l’application.
4 Le débogueur : permet l’exécution pas à pas du code.
5 Utilitaires annexes : travaillant à partir du code source, comme le
vérificateur Lint, les enjoliveurs de code, les outils de documentation
automatique, etc.
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 15 / 44
Présentation
Définition
Architecture, connexion et déconnexion
Historique
Une première commande
Généralités sur le développement sous Linux
Quelques références Bibliographiques
Outils de développement (2/2)
Deux écoles de programmeurs coexistent sous Linux (et Unix en
général)
1 ceux qui préfèrent disposer d’un environnement intégrant tous les outils
de développement, depuis l’éditeur de texte jusqu’au débogueur
2 ceux qui utilisent plutôt les différents utilitaires de manière séparée,
configurant manuellement un fichier Makefile pour recompiler leur
application sur un terminal Xterm, tandis que leur éditeur préféré
s’exécute dans une autre fenêtre
Dans ce cours, nous considérerons la situation d’un développeur
préférant lancer lui-même ses outils en ligne de commande
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 16 / 44
Présentation
Définition
Architecture, connexion et déconnexion
Historique
Une première commande
Généralités sur le développement sous Linux
Quelques références Bibliographiques
Éditeurs de texte
L’éditeur de texte est probablement la fenêtre de l’écran que le
développeur regarde le plus
Il passe la majeure partie de son tempsà saisir, relire, modifier son
code, et il est essentiel de maîtriser parfaitement les commandes de
base pour le déplacement, les fonctions de copier-coller et le
basculement rapide entre plusieurs fichiers source
Chaque programmeur a généralement son éditeur fétiche, dont il
connaît les possibilités, et qu’il essaye au maximum d’adapter à ses
préférences
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 17 / 44
Présentation
Définition
Architecture, connexion et déconnexion
Historique
Une première commande
Généralités sur le développement sous Linux
Quelques références Bibliographiques
Compilateurs, éditeurs de liens (1/4)
Le compilateur C utilisé sous Linux est gcc (Gnu C Compiler)
On peut également l’invoquer sous le nom cc, comme c’est l’usage
sous Unix, ou g++ si on compile du code C++
La version la plus courante de gcc fournie avec les distributions
actuelles est nommée egcs
Le compilateur gcc utilise des conventions sur les suffixes des fichiers
pour savoir quel utilitaire invoquer lors des différentes phases de
compilation
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 18 / 44
Présentation
Définition
Architecture, connexion et déconnexion
Historique
Une première commande
Généralités sur le développement sous Linux
Quelques références Bibliographiques
Compilateurs, éditeurs de liens (2/4)
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 19 / 44
Présentation
Définition
Architecture, connexion et déconnexion
Historique
Une première commande
Généralités sur le développement sous Linux
Quelques références Bibliographiques
Compilateurs, éditeurs de liens (3/4)
L’invocation de gcc se fait donc avec les arguments suivants :
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 20 / 44
Présentation
Définition
Architecture, connexion et déconnexion
Historique
Une première commande
Généralités sur le développement sous Linux
Quelques références Bibliographiques
Compilateurs, éditeurs de liens (4/4)
Exemples :
gcc -Wall -pedantic -g fichier1.c -c
gcc -Wall -pedantic -g fichier2.c -c
gcc fichier1.o fichier2.o -o resultat
gcc -Wall -pedantic -g fichier1.c fichier2.c -o resultat
gcc -Wall -pedantic -g fichier1.c fichier2.c -o resultat
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 21 / 44
Présentation
Définition
Architecture, connexion et déconnexion
Historique
Une première commande
Généralités sur le développement sous Linux
Quelques références Bibliographiques
Débogueur, profileur (1/2)
Lorsqu’une application a été compilée avec l’option -g, il est possible
de l’exécuter sous le contrôle d’un débogueur
L’outil utilisé sous Linux est nommég db (Gnu Debugger)
Cet utilitaire fonctionne en ligne de commande, avec une interface
assez rébarbative
Le déboguage d’une application pas à pas est un processus important
lors de la mise au point d’un logiciel
Lorsqu’un processus exécute certaines opérations interdites (écriture
dans une zone non autorisée, tentative d’utilisation d’instruction
illégale...) le noyau lui envoie un signal pour le tuer
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 22 / 44
Présentation
Définition
Architecture, connexion et déconnexion
Historique
Une première commande
Généralités sur le développement sous Linux
Quelques références Bibliographiques
Débogueur, profileur (2/2)
Sous certaines conditions, l’arrêt de processus s’accompagne de la
création d’un fichier core1 sur le disque, représentant l’image de
l’espace mémoire du processus au moment de l’arrêt, y compris le
code exécutable
Le débogueur gdb est capable d’examiner ce fichier, afin de procéder
à l’autopsie du processus tué
Cette analyse post-mortem est particulièrement précieuse lors de la
mise au point d’un logiciel pour détecter où se produit un
dysfonctionnement apparemment intempestif
De plus gdb est également capable de déboguer un processus déjà en
cours de fonctionnement
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 23 / 44
Présentation
Définition
Architecture, connexion et déconnexion
Historique
Une première commande
Généralités sur le développement sous Linux
Quelques références Bibliographiques
Traitement du code source
Il existe toute une classe d’outils d’aide au développement qui
permettent des interventions sur le fichier source
Ces utilitaires sont aussi variés que l’analyseur de code :
Les outils de mise en forme ou de statistiques
Les applications de manipulation de fichiers de texte.
etc.
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 24 / 44
Présentation
Définition
Architecture, connexion et déconnexion
Historique
Une première commande
Généralités sur le développement sous Linux
Quelques références Bibliographiques
Vérificateur de code
L’outil Lint est un grand classique de la programmation sous Unix
Son implémentation sous Linux se nomme lclint
Le but de cet utilitaire est d’analyser un code source C qui se compile
correctement, pour rechercher d’éventuelles erreurs sémantiques dans
le programme
L’appel de lclint peut donc être vu comme une sorte d’extension aux
options –Wallet–pedantic degcc
L’invocation se fait tout simplement en appelant lclint suivi du
nom du fichier source
Cet outil est donc très utile pour rechercher tous les points litigieux
d’une application
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 25 / 44
Présentation
Définition
Architecture, connexion et déconnexion
Historique
Une première commande
Généralités sur le développement sous Linux
Quelques références Bibliographiques
Mise en forme
Il existe un outil Unix nommé indent, dont une version Gnu est
disponible sous Linux
Cet utilitaire est un enjoliveur de code
Ceci signifie qu’il est capable de prendre un fichier source C, et de le
remettre en forme automatiquement en fonction de certaines
conventions précisées par des options
On l’utilise souvent pour des projets développés en commun par
plusieurs équipes de programmeurs
Avant de valider les modifications apportées à un fichier, on invoque
indent pour le formater suivant les conventions adoptées par
l’ensemble des développeurs
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 26 / 44
Présentation
Définition
Architecture, connexion et déconnexion
Historique
Une première commande
Généralités sur le développement sous Linux
Quelques références Bibliographiques
Utilitaires divers
L’outil grep est essentiel pour un programmeur : permet de
rechercher une chaîne de caractères dans un ensemble de fichiers
Il est fréquent d’avoir à retrouver le fichier où une routine est définie,
ou l’emplacement de la déclaration d’une structure par exemple
De même on a souvent besoin de rechercher à quel endroit un
programme affiche un message d’erreur avant de s’arrêter
Pour toutes ces utilisations grep est parfaitement adapté
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 27 / 44
Présentation
Définition
Architecture, connexion et déconnexion
Historique
Une première commande
Généralités sur le développement sous Linux
Quelques références Bibliographiques
Construction d’application (1/2)
Dès qu’une application s’appuie sur plusieurs modules indépendants,
plusieurs fichiers source C, il est indispensable d’envisager d’utiliser les
mécanismes de compilation séparée
L’avantage de ce système réside dans le fait qu’une modification
apportée à un fichier source ne réclame plus qu’une seule compilation
et une édition des liens au lieu de nécessiter la compilation de tous les
modules du projet
Pour ne pas être obligé de recompiler un programme source non
modifié, on fait appel à l’utilitaire make
Celui-ci compare les dates de modification des fichiers source et cibles
pour évaluer les tâches à réaliser
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 28 / 44
Présentation
Définition
Architecture, connexion et déconnexion
Historique
Une première commande
Généralités sur le développement sous Linux
Quelques références Bibliographiques
Construction d’application (2/2)
Make est aidé en cela par un fichier de configuration nommé
Makefile (ou makefile, voire GNUmakefile)
Le Makefile est conservé dans le même répertoire que les fichiers
source
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 29 / 44
Présentation
Définition
Architecture, connexion et déconnexion
Historique
Une première commande
Généralités sur le développement sous Linux
Quelques références Bibliographiques
Distribution du logiciel (1/3)
La distribution d’un logiciel sous Linux peut se faire de plusieurs
manières
S’il s’agit d’un logiciel libre, le plus important est de fournir les
sources du programme ainsi que la documentation dans un format le
plus portable possible sur d’autres Unix
Le point le plus important ici sera de laisser l’entière liberté au
destinataire pour choisir l’endroit où il placera les fichiers sur son
système, l’emplacement des données de configuration. etc.
On pourra consulter le document Linux Software
Release-Practice-HOWTO, qui contient de nombreux conseils pour la
distribution de logiciels libres
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 30 / 44
Présentation
Définition
Architecture, connexion et déconnexion
Historique
Une première commande
Généralités sur le développement sous Linux
Quelques références Bibliographiques
Distribution du logiciel (2/3)
S’il s’agit de la distribution d’une application commerciale fournie
uniquement sous forme binaire
le souci majeur sera plutôt de simplifier l’installation du produit,
quitte à imposer certaines restrictions concernant les emplacements
de l’application et des fichiers de configuration
Pour simplifier l’installation du logiciel, il est possible de créer un
script qui se charge de toute la mise en place des fichiers
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 31 / 44
Présentation
Définition
Architecture, connexion et déconnexion
Historique
Une première commande
Généralités sur le développement sous Linux
Quelques références Bibliographiques
Distribution du logiciel (3/3)
Toutefois ce script devra être lancé depuis un support de distribution
(CD ou disquette), ce qui nécessite une intervention manuelle de
l’administrateur pour autoriser l’exécutiondes programmes sur un
support extractible ou une copie du script dans le répertoire de
l’utilisateur avant le lancement
Il est donc souvent plus simple de fournir une simple archive tar ou un
paquetage rpm. et de laisser l’utilisateur les décompacter lui-même
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 32 / 44
Présentation
Architecture, connexion et déconnexion Architecture
Une première commande Connexion et déconnexion
Quelques références Bibliographiques
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 33 / 44
Présentation
Architecture, connexion et déconnexion Architecture
Une première commande Connexion et déconnexion
Quelques références Bibliographiques
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 34 / 44
Présentation
Architecture, connexion et déconnexion Architecture
Une première commande Connexion et déconnexion
Quelques références Bibliographiques
Première connexion (1/3)
Pour pouvoir travailler sous Unix il faut ouvrir une session, à l’aide
d’un nom d’utilisateur et d’un mot de passe
On distingue les administrateurs des utilisateurs normaux
L’administrateur est appelé root ou utilisateur privilégié et dispose de
tous les pouvoirs sur la machine et le système Unix
L’utilisateur normal dispose de droits réduits et définis par
l’administrateur.
Pour se connecter, le mot de passe n’apparaît pas en clair et doit être
tapé en aveugle. En cas d’erreur, un message indiquera : Login
incorrect
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 35 / 44
Présentation
Architecture, connexion et déconnexion Architecture
Une première commande Connexion et déconnexion
Quelques références Bibliographiques
Première connexion (2/3)
Suivant la version d’Unix et la configuration, plusieurs lignes de
message peuvent apparaître, qu’il est possible d’ignorer
Puis le prompt du shell devrait apparaître, quelque chose du genre :
Pour interrompre une commande on peut utiliser la combinaison
Ctrl+C.
Pour lier les commandes, on sépare les commandes par le caractère « ;
». Exemple : who ; date
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 36 / 44
Présentation
Architecture, connexion et déconnexion Architecture
Une première commande Connexion et déconnexion
Quelques références Bibliographiques
Première connexion (3/3)
Pour se familiariser avec la saisie de commandes, nous pouvons tester
quelques programmes d’information :
1 date
2 who
3 cal
4 man
5 exit
Dire ce que fait chacune de ces commandes.
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 37 / 44
Présentation
Architecture, connexion et déconnexion Architecture
Une première commande Connexion et déconnexion
Quelques références Bibliographiques
Changer son mot de passe
On utilise la commande passwd pour modifier son mot de passe
Dans certains cas, il faudra utiliser la commande yppasswd (cas de
NIS)
Sur les Unix récents l’administrateur peut définir des règles de
sécurité comme le nombre minimum de caractères, contrôler le mot
de passe depuis un dictionnaire s’il est trop simple, lui donner une
date de péremption, ...
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 38 / 44
Présentation
Architecture, connexion et déconnexion Architecture
Une première commande Connexion et déconnexion
Quelques références Bibliographiques
Utilisateurs et groupes
On distingue sous Unix les utilisateurs et les groupes, notion que nous
verrons et détail lors de la gestion des droits
Un groupe définit un ensemble d’utilisateurs, un utilisateur fait
obligatoirement partie d’au moins un groupe, ou de plusieurs
Le groupe par défaut d’un utilisateur est « users »
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 39 / 44
Présentation
Architecture, connexion et déconnexion Architecture
Une première commande Connexion et déconnexion
Quelques références Bibliographiques
Prendre la place d’un autre
Le système permet dans certains cas à un utilisateur connecté de
changer de nom en cours de travail avec la commande su
Le mot de passe du nouvel utilisateur sera demandé (su [-]
utilisateur [-c commande]
USi – est précisé, l’environnement du nouvel utilisateur est chargé, et
si -c est précisé les commandes qui suivent sont exécutées
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 40 / 44
Présentation
Architecture, connexion et déconnexion Architecture
Une première commande Connexion et déconnexion
Quelques références Bibliographiques
Obtenir son nom de connexion
La commande logname affiche le nom de login de l’utilisateur, en
principe toujours le nom utilisé lors de la première connexion
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 41 / 44
Présentation
Architecture, connexion et déconnexion
Une première commande
Quelques références Bibliographiques
La commande echo (1/2)
En principe cette commande n’est pas utile tout de suite, mais la
première chose que l’on apprend généralement avec un shell ou un
langage quelconque est d’afficher un message du genre « Hello,
world ! »
La commande echo est une commande centrale du shell : elle
transmet tous ses paramètres sur écran (ou canal de sortie standard)
Le texte est quelconque mais peut aussi admettre quelques caractères
de formatage
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 42 / 44
Présentation
Architecture, connexion et déconnexion
Une première commande
Quelques références Bibliographiques
La commande echo (2/2)
Amusez vous avec cette commande
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 43 / 44
Présentation
Architecture, connexion et déconnexion
Une première commande
Quelques références Bibliographiques
1 Saïd Abdedaïm et Pascal Caron, Système, Département
d’Informatique de Rouen Université de Rouen, 76821 Mont-Saint
Aignan, Cédex
2 J. Gispert, J. Guizol, J.L. Massat, Support de cours système
d’exploitation, Département d’informatique, Faculté de Luminy, 163,
Avenue de Luminy, Case 901, 13288 Marseille, cedex 9, 23 février
2012
3 Sébastien ROHAUT, Cours Shell Unix Commandes &
Programmation, 31-08-2003
Dr FOKO S. Miguel L. (IUTFV) Introduction au système d’exploitation Linux 44 / 44