Université Grenoble Alpes 1 Le système Unix Aspects utilisateur Jean-Michel Ada
Université Grenoble Alpes 1 Le système Unix Aspects utilisateur Jean-Michel Adam Damien Genthial UFR SHS IUT de Valence Le système Unix Aspects utilisateur 2 Introduction (1) Un peu d'histoire Conçu pour des mini-ordinateurs au début des années 70 chez Bell Conçu par des informaticiens, pour des informaticiens Conçu pour être évolutif et ouvert Grande diffusion : moyens et gros systèmes mais aussi petits systèmes : Linux, MacOS, Android) Les différentes versions Versions constructeurs (IBM-AIX, HPUX, Ultrix, …) BSD et dérivées (SunOS) Linux Norme POSIX pour l'interface de programmation Le système Unix Aspects utilisateur 3 Introduction (2) Objectif du cours Pratique d'Unix du point de vue utilisateur Pratique de la programmation du langage de commande (shell) Bibliographie UNIX et Linux - Utilisation et administration Jean-Michel Léry - Pearson Education – 3ème édition 2011 Unix - Les bases indispensables Michel Dutreix – ENI – 3ème édition 2015 Unix: Programmation et communication Rifflet J.M. et J.B. Yunès, Dunod 2003 Le système Unix Aspects utilisateur 4 Architecture générale d'Unix Multi-tâches (multi- processus) et multi- utilisateurs Très grande facilité d'intégration en réseau Interface texte ou graphique Système de gestion de fichiers (SGF) Outils de développement Gestion du système : resources, utilisateurs Communi- cations Noyau (kernel) Interpréteur du l a n g a g e de commandes S H E L L Le système Unix Aspects utilisateur 5 Plan du cours Le SGF : système de gestion de fichiers Structure arborescente Utilisateur et protections Commandes de base Les processus Principe, initialisation du système Le langage de commande Généralités Environnement et variables Composition des commandes Écriture de scripts : paramètres, structures de contrôle Fonctions et procédures Le système Unix Aspects utilisateur 6 SGF : Structure arborescente unique bin etc lib include usr bin lib man X11 / local users isi gtr casir 1a 2a lucien ls cp rm passwd groups libc.a libm.a stdio.h stdlib.h mail find man1 man3 ls.1 cp.1 strings.3 fopen.3 InfoIndus TP-C .profile Tp1.c Makefile Float.s Float.x public Fichiers (files) Dossiers ou répertoires (directory) Le système Unix Aspects utilisateur 7 SGF : Structure unique Vue logique indépendante de la réalité physique / bin etc lib include users profs 1a 2a usr bin lib local man lucien public Le système Unix Aspects utilisateur 8 Nom = chemin d'accès (PATH) / bin lib include users profs 1a 2a lucien TP-C Info-Indus ls cp rm libc.a libm.a stdio.h stdlib.h tp1.c a.out tp2.c tp3.c float.s float.x float.l public entete coureurs.dat .profile /bin/ls /users/1a /users/2a/public/entete /users/2a/lucien/.profile Le système Unix Aspects utilisateur 9 L'utilisateur dans l'arborescence Connexion Nom d'utilisateur (identifiant ou login) + mot de passe Bases de données des utilisateurs : /etc/passwd et /etc/groups mdupont:x:1001:22:Marie Dupont Mass3:/users/mass3/mdupont:/bin/ksh pdurand:x:2010:21:Pierre Durand:/users/staff/pdurand:/bin/ksh HOME SWEET HOME Répertoire de travail (working directory) Répertoire de travail par défaut (home directory) Noms absolus /bin/ls /users/mass3/mdupont/.profile Le système Unix Aspects utilisateur 10 Noms relatifs Noms relatifs : ne commencent pas par / Relatifs au répertoire courant (répertoire de travail) /users/isi/2a . .. tp1.c a.out . .. float.s . .. entete coureurs.dat .profile . . . . float.s <=> ./float.s ../TP-C/tp1.c <=> /users/isi/2a/lucien/TP-C/tp1.c ../../public/entete <=> /users/isi/2a/public/entete Répertoire courant Répertoire père Le système Unix Aspects utilisateur 11 SGF : caractères spéciaux Commencent par un point Répertoire courant ( . ), répertoire père ( .. ) Fichiers de paramètres ou de configuration (répertoires) .profile .bashrc .netscape .kde Ne sont pas affichés par défaut Utiliser ls -a Jokers (wildcard characters) * Remplace n'importe quelle suite de caractères ? Remplace exactement 1 caractère [c1...cn] Remplace exactement 1 des caractères c1...cn [!c1...cn] Remplace exactement 1 caractère sauf c1...cn Le système Unix Aspects utilisateur 12 SGF : commandes usuelles (1) Aide en ligne man <commande> Ex : man ls affiche le manuel de ls. man man affiche le manuel de la commande man. Fichiers cat <fic> affiche le contenu du fichier <fic> more <fic> ... RC affiche la ligne suivante, SPACE affiche la page suivante, b affiche la page précédente, /<chaîne> recherche de <chaîne> h permet d'obtenir de l'aide, q ou Ctrl-C permet d'abandonner l'affichage. Le système Unix Aspects utilisateur 13 SGF : commandes usuelles (2) Fichiers (suite) lp <fic> ... (line printer) cp <fic1> <fic2> (copy) cp <fic> ... <rép> mv <fic1> <fic2> (move) mv <fic> ... <rép> rm <fic> ... (remove) ATTENTION, pas de récupération possible. Répertoires ls [ options ] <rép> ... (list) Options intéressantes : -l format long -a tous les fichiers, y compris les cachés (all) -R liste récursivement les sous-répertoires. Démo Le système Unix Aspects utilisateur 14 SGF : commandes usuelles (3) Répertoires (suite) pwd (print working directory) cd rép (change directory) mkdir rép ... (make directory) rmdir rép ... (remove directory) rm -r rép ... ATTENTION, destruction récursive. Divers clear, who, date, passwd (ou yppasswd) mail -s <sujet du message> Destinataire@iut-valence.fr <Texte du message (éventuellement sur plusieurs lignes) . (seul sur la ligne, ou Ctrl-D) Le système Unix Aspects utilisateur 15 SGF : droits d'accès (1) Trois niveaux de protection : UGO ls -l => -rw-r--r-- 1 lucien dciss 2566 oct 13 16:52 tp1.c -rw-r--r-- 1 lucien dciss 223 oct 13 16:52 tp1.o -rwxr-xr-x 1 lucien dciss 130 oct 13 16:49 tp1 -rwxr-xr-x Droits de l'utilisateur (user) Droits du groupe (group) Droits du reste du monde (others) Type du fichier : - normal l lien d répertoire c pilote car b pilote bloc p tube nommé Le système Unix Aspects utilisateur 16 SGF : droits d'accès (2) Trois modes d'accès : RWX R : lecture (read), voir le contenu W : écrire (write), modifier le contenu X : exécuter (pour un fichier) ou traverser (pour un répertoire) Modification des droits chown <propriétaire> <fic> ... (change owner) chgrp <groupe> <fic> … (change group) chmod <mode> <fic> ... (change mode) <mode> = 3 chiffres octaux (changement absolu) chmod 755 monRep <mode> = [ugo][+-][rwx] (changement relatif) chmod go-w monRep Démo Le système Unix Aspects utilisateur 17 Plan du cours Le SGF : système de gestion de fichiers Structure arborescente Utilisateur et protections Commandes de base Les processus Principe, initialisation du système Le langage de commande Généralités Environnement et variables Composition des commandes Écriture de scripts : paramètres, structures de contrôle Fonctions et procédures Le système Unix Aspects utilisateur 18 Processus : principe Unix est multitâches et multi-utilisateurs Tâche Unix = processus Processus = programme en cours d'exécution Aspects dynamiques : évolution temporelle, état Plusieurs processus peuvent exécuter le même programme (typiquement un éditeur de textes) Une application peut être composée de plusieurs processus Exécution simultanée de plusieurs processus Pb : avec un seul processeur ? Utilisation du temps partagé Le système Unix Aspects utilisateur 19 A B C Processeur t A B C Processeur q q q t Processus : temps partagé Machine multiprocesseurs Monoprocesseur, monotâche Monoprocesseur, multitâches Processeur. 1 A B C Processeur. 2 Processeur. 3 t Le système Unix Aspects utilisateur 20 Processus : cas d'Unix Tout processus est créé par un autre processus Démarrage (bootstrap) Création des processus de base swap PID 0 init PID 1 Démons système sh xdm getty Xlogin login bash init /etc/passwd /etc/inittab .xinitrc /etc/rc Processus utilisateurs Processus utilisateurs sh .profile Le système Unix Aspects utilisateur 21 Processus : création Shell : père des processus utilisateur Environnement d'exécution Commande = processus fils du shell sh env stdin stdout stderr ls env sh env stdin stdout stderr Le système Unix Aspects utilisateur 22 Processus : manipulation Création : toute commande Liste des processus en cours ps (process status) ps -U <utilisateur> Autres options : voir manuel Lancement en arrière-plan nedit tp1.c & Arrêt d'un processus kill -KILL <N1> <N2> … Plus généralement, kill permet d'envoyer un signal à un processus kill -SIG <N1> <N2> … kill -INT 3425 (équivalent de Ctrl-C) Placé derrière une commande, le caractère & indique au shell de lancer le processus mais de ne pas attendre la fin => le shell rend la main immédiatement à l'utilisateur. Démo Le système Unix Aspects utilisateur 23 Plan du cours Le SGF : système de gestion de fichiers Structure arborescente Utilisateur et protections Commandes de base Les processus Principe, intialisation du système Le langage de commande Généralités Environnement et variables Composition des commandes Écriture de scripts : paramètres, structures de contrôle Fonctions et procédures Le système Unix Aspects utilisateur 24 Le shell bash (Bourne again shell) Compatible avec le standard sh Peut exécuter des scripts sh, mais l'inverse n'est pas vrai C'est le shell de la Free Software Foundation, utilisé sur Linux Extensions utiles Édition des commandes précédentes Définition de synonymes (alias) Syntaxe commode pour désigner le répertoire de travail par défaut (~ et ~utilisateur) Le système Unix Aspects utilisateur 25 Bash : environnement Environnement : ensemble de variables $ env Variables publiques _=/usr/bin/env PATH=/usr/bin:/usr/local/bin:/users/profs/pdupont/bin:. EDITOR=/bin/vi LOGNAME=pdupont MAIL=/var/mail/pdupont SHELL=/bin/bash HOME=/users/profs/pdupont TERM=vt100 PWD=/users/profs/pdupont $ set Variables publiques et privées Le système Unix Aspects utilisateur 26 Bash : variables (1) Utilisation $nom ou ${nom} $((nom*5)) ou $nom*5 Définition NOM=valeur Let "nom=$nom+2" Exemple PS1="Ok." EDITOR=/bin/emacs Effacement (rarement utilisé) unset nom Le système Unix Aspects utilisateur 27 Bash : variables (2) Environnement initial Valeurs liées à l'utilisateur : HOME, MAIL, SHELL, … Valeurs par défaut uploads/Industriel/ e-unix.pdf
Documents similaires










-
29
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Mai 27, 2022
- Catégorie Industry / Industr...
- Langue French
- Taille du fichier 0.3414MB