La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

1 LINUX. 2 Présentation de Linux unité 1 3 Linux est un OS libre Linux est un système d’exploitation open source ie libre, c’est un programme dont on.

Présentations similaires


Présentation au sujet: "1 LINUX. 2 Présentation de Linux unité 1 3 Linux est un OS libre Linux est un système d’exploitation open source ie libre, c’est un programme dont on."— Transcription de la présentation:

1 1 LINUX

2 2 Présentation de Linux unité 1

3 3 Linux est un OS libre Linux est un système d’exploitation open source ie libre, c’est un programme dont on peut avoir le code source, c'est-à-dire la "recette de fabrication". A l’opposé de Windows par exemple qui est un système d’exploitation propriétaire, il est donc compilé, l’accès au code source est impossible.

4 4 Les distributions de Linux Une distribution c'est un peu l'emballage de Linux. Le coeur, lui, reste le même sur toutes les distributions. Ce qui peut différer d'une distribution à l'autre : L'installation (elle peut être très simplifiée comme très compliquée) La gestion de l'installation des programmes. Si elle est bien faite et centralisée, elle peut rendre l'installation de nouveaux logiciels plus simple que sous Windows comme nous le verrons plus loin ! Les programmes pré-installés sur l'ordinateur (par exemple Windows est livré avec Internet Explorer et Windows Media Player)

5 5 Les distributions de Linux Exemples de distributions Linux: Suse. Mandriva. Mandrake. Ubuntu. Red hat. Fedora. Centos….

6 6 Systèmes de fichiers Linux Ext2 : c'est le système de fichiers qui a longtemps été utilisé sous Linux. Il a été développé par un français (Rémy Card) et présente la particularité de ne pas se fragmenter. Ainsi, sous Linux et depuis longtemps, il n'y a pas besoin de faire de défragmentation. Ext3 : l'ext3 est très proche de l'ext2, à une différence majeure près, la journalisation. En effet, ext2 n'était pas journalisé, et en cas de crash disque on risquait plus facilement une perte de données. Ce n'est plus le cas avec l'ext3. A noter que l'ext2 et l'ext3 sont parfaitement compatibles entre eux, dans un sens comme dans l'autre.

7 7 A propos du nom des disques On va découvrir les noms des disques sous Linux avec un exemple : hda h : la première lettre indique si le disque est de type IDE ou SCSI (un type de connexion différent à la carte mère). Si c'est une IDE, la lettre est un h, si c'est un SCSI (ou un S-ATA), la lettre est un s. d : cette lettre ne change pas. a : c'est cette lettre qui indique les différents disques durs. hda représente le premier disque dur IDE, hdb le second, hdc le troisième etc. Lorsqu'on crée des partitions, on ajoute généralement un chiffre représentant le numéro de la partition. Ainsi, si on a 3 partitions sur notre disque hda, elles seront nommées hda1, hda2, hda3...

8 8 Installation de Fedora Les phases principales de l’installation d’une machines Gnu/Linux sont les suivantes : 1. Amorçage de l’installation 2. Partitionnement du disque dur 3. Installation du chargeur de boot 4. Configuration du réseau 5. Détermination du fuseau horaire 6. Initialisation du mot de passe root 7. Choix et installations des logiciels 8. Paramétrages post-installation

9 9 Installation de Fedora Amorçage du système 1. Vous commencez par insérer dans votre lecteur CD le premier CD de la série des CDs fournis avec la distribution (au cas où vous êtes munis du DVD insérer le) 2. Vérifier dans le BIOS de votre machine si le lecteur CD ou DVD est choisi comme premier périphériques de démarrage, sinon commencer par ajuster ce paramètre. 3. Allumer votre poste

10 10 Installation de Fedora 4. Une fois la machine allumée, le démarrage se fait depuis le CD ou DVD et affiche un écran de démarrage avec un prompt « boot : » 5. Dans cette première phase d’initiation on ne va pas développer toutes les options fournies à ce niveau, il suffit simplement de saisir la touche « Entrée » ou attendre un petit moment pour que l’installation démarre. Juste après une fenêtre apparaît vous offrant la possibilité de vérifier l’intégralité des supports physiques (CDs ou DVD) que vous utilisez. Si vous êtes sûr de vos supports vous pouvez sauter cette étape.

11 11 Installation de Fedora Vérification du disque

12 12 Installation de Fedora Choix du partitionnement L’assistant vous propose le choix entre un partitionnement automatique et un partitionnement manuel Le partitionnement par défaut va adopter la structure suivante :  /boot : partition sur laquelle sont installées les informations nécessaires au démarrage,  / : partition sur laquelle est installée le système,  SWAP : partition dont le système se sert pour décharger la mémoire (RAM) lorsqu'elle atteint un certain niveau.

13 13 Installation de Fedora Le partitionnement personnalisé, où vous pouvez choisir les partitions que vous souhaitez créer/formater/supprimer.  /boot partition sur laquelle va se lancer Fedora (pour une taille d'environs 100Mo)  / partition sur laquelle s'installe le système. Variez la taille de cette partition en fonction de votre disque dur mais sachez qu'une installation complète du DVD/CD prendra environ 9 Go,

14 14 Installation de Fedora  SWAP partition qui permettra d’alléger la mémoire vive son dimensionnement suit la règle 2n*RAM pour des machines à taille mémoire jusqu’à 3Go  /home Partition sur laquelle sont conservées les données de l'ensemble des utilisateurs.

15 15 Installation de Fedora Installation de GRUB GRUB est ce qu'on appelle un chargeur de démarrage, en d'autres termes un programme qui permet de choisir et de lancer un système d'exploitation. Si vous n'avez qu'un seul disque, a priori, les options par défauts conviennent. NB: pour d’autres distributions, le chargeur de boot est Lilo (LinuxLoader)

16 16 Installation de Fedora Configurer le réseau L’assistant d’installation détecte toutes les cartes réseau de la machine. Par défaut l’assistant propose une configuration par DHCP des interfaces Pour configurer manuellement une interface il suffit de la sélectionner et de cliquer sur le bouton « Editer ». Le nom de la machine est aussi configurable manuellement ainsi que la passerelle par défaut et les serveurs DNS

17 17 Installation de Fedora Configuration du fuseau horaire : Il suffit tout simplement de pointer sur votre zone géographique sur carte du globe présentée. Une fois pointée dessus Casablanca/Maroc est affiché sur le rectangle

18 18 Installation de Fedora Mot de passe root : L’étape suivante permet d’attribuer un mot de passe à l’utilisateur « root » de la machine d’au moins 6 caractères. Sachez bien que l’utilisateur « root » (est un « super utilisateur ») est le compte possédant tous les droits sur la machine d’où la nécessité de lui attribuer un mot de passe difficile à déchiffrer et à deviner.  utiliser des combinaisons de majuscules, miniscules, chiffres, caractères spéciaux  Ne pas utiliser pas des mots et des noms

19 19 Installation de Fedora Sélectionner les logiciels à installer la partie concernant la sélection des logiciels à installer. La sélection des logiciels à installer a nettement évolué, elle se présente sous forme de groupes de paquetages Pour Fedora elle propose par défaut une installation avec les outils de production standard et bureautique. Vous pouvez les 2 autres catégories avec l’option de « Personnaliser maintenant » pour avoir plus de choix de logiciels à intégrer lors de l’installation

20 20 Installation de Fedora Réaliser des opérations de Post-installation Après la fin de l’installation et du redémarrage de la machine un assistant De 1er démarrage apparaît pour ajuster certains paramètres Licence : Demande la confirmation d’acceptation des termes de licence du produit. Pare-feu : Permet au root d’activer le firewall sur certains services ( web, mail, ftp, nfs SELinux : Il s’agit de l’activation d’un mécanisme de renforcement de sécurité au niveau des accès aux programmes et applications Date et Heure : Permet de synchroniser votre machine avec un serveur de temps Ajouter un utilisateur : Jusqu’à présent le seul utilisateur déclaré au niveau De la machine est le « root », cette étape vous permet de rajouter d’autres utilisateurs. Carte son : Permet de configurer votre carte son

21 21 Connexion au système

22 22 Présentation de kde KDE ("Kool" ou "Kommon" Desktop Environment) est un bureau graphique basé sur X-Window. La 1ère version du KDE a été opérationnelle en juillet Il existe d'autres alternatives de bureaux graphiques comme GNOME (Gnu Network Object Model Environment) démarré en Les bureaux graphiques se sont largement inspiré de l'interface de Microsoft Windows.

23 23 Présentation de kde Le KDE propose: Un bureau (Desktop). Une barre de tâches (tableau de bord, commande"kicker"). Un gestionnaire de fichiers (commande "konqueror"). Un gestionnaire de configuration (commande "kcontrol"). konqueror permet une gestion de fichiers plus convivial que les lignes de commandes et peut être également utilisé comme navigateur internet.

24 24 Présentation de kde

25 25 L'invite de commandes Les commandes en ligne peuvent être tapées dans l’outil « terminal »(console sous KDE ou Terminal sous Gnome )

26 26 unité 2 Commandes de base

27 27 Commandes liées à l’arborescence La commande pwd Affiche le nom du répertoire courant La commande ls Affiche les fichiers et sous-répertoire d’un répertoire Syntaxe : ls [option] [nom_de_répertoire] Options utils F: ajout d’une indication de type l : affiche les principaux attributs des fichiers et répertoires Type droits liens propriétaire groupe taille date nom a : affiche les fichiers et répertoires dont le nom commence par un point. d : n’affiche pas le contenu du répertoire R : affichage récursif

28 28 Commandes liées à l’arborescence La commande cd (change directory) Permet un déplacement sous le répertoire passé en argument Syntaxe : cd [nom_répertoire] Exemple - cd ou cd ~ - cd.. - cd nom_répertoire - cd - - Dans le cas d’un chemin relatif, le répertoire est recherché à partir du répertoire courant ou en utilisant la variable CDPATH.

29 29 Commandes générales sur les fichiers Création d’un fichier vide touch nom_fichier > nom_fichier Affichage du contenu d’un fichier (texte) cat nom_fichier [nom_fichier, …] Copier un fichier cp fichier1 fichier2 cp fichier1 [fichier2 fichier3 …] répertoire cp –R répertoire1 répertoire2 Renommer ou déplacer un fichier mv fichier1 fichier2 mv fichier1 [fichier2 fichier3 …] répertoire

30 30 Commandes générales sur les fichiers Supprimer un fichier rm [options] fichier1 [fichier2 …] Options utils i : affiche une demande de confirmation de suppression r : suppression récursive (attention aucune demande de confirmation) f : devient importante lorsqu’on cherche à supprimer des fichiers appartenant à un autre propriétaire

31 31 Commandes générales sur les fichiers Affecter plusieurs noms à un fichier Liens ln fichier1 fichier2 Liens symboliques ln –s répertoire1 répertoire2

32 32 Gestion des répertoires Créer un répertoire mkdir nom_rép [nom_rép …] Remarque Le répertoire est non vide :. : référence au répertoire courant.. : référence au répertoire du niveau supérieur Suppression d’un répertoire vide rmdir nom_rép [nom_rép …] Il n’est pas possible de supprimer le répertoire courant Pour la suppression d’un répertoire non vide, la commande rm avec l’option –r est plus pratique

33 33 Redirection des entrées-sorties Redirection en sortie Récupération du résultat d’une commande ailleurs qu’à l’écran Commande > fichier Si le fichier existe déjà son contenu sera perdu Sinon il faut utiliser deux fois le caractère supérieur Commande >> fichier Si le fichier n’existe pas, il est créé automatiquement

34 34 Redirection des entrées-sorties Redirection de l’entrée Permet à une commande d’utiliser comme données, le contenu d’un fichier à la place d’une lecture clavier Commande < nom_fichier_de_redirection Canaux standard Stdin 0 Stdtout 1 Stderr 2 ( commande 2> /dev/null redirection des erreurs sur la poubelle) Réunion de canaux d’entrée-sortie … > fichier 2>&1

35 35 Les filtres Un filtre est une commande sachant écrire et lire des données par les canaux d’entrée et de sortie standard. Exemple wc (options l w c) sort grep More, pg

36 36 Les tubes Un tube (pipe) permet d’établir une liaison directe entre le canal de sortie standard d’une commande avec le canal d’entrée standard d’une autre Commande 1 | commande 2 | … |commande n Exemple ls | wc -w combien de fichiers sont contenus dans un répertoire

37 37 Critères de recherche de noms de fichiers Modèles de noms de fichier * : remplace une chaîne vide ou de longueur variable ? : remplace un caractère unique quelconque [] : représente une série ou une plage de caractère [!…] : inverse la recherche Exemples a* : les fichiers dont le nom commence par a a?? : fichiers en trois lettres, commençant par a [aA]* : fichiers dont le nom commence par un a minuscule ou majuscule. [a-m]* : fichiers dont le nom commence par une lettre de la plage a-m. Attention rm *

38 38 Verrouillage des caractères spéciaux Il est parfois utile de désactiver la signification spéciale des caractères *, ?, [] et ! Exemple rm a* : supprime tous les fichiers dont le nom commence par a Pour supprimer le fichier a*, il faut désactiver le *; Caractères spéciaux de désactivation Backslash (\) Guillemets (``…. ``) Apostrophes (‘…’)

39 39 Programmes utilitaires et filtres Recherches de lignes dans un fichier (grep) La commande grep permet d’extraire des lignes particulières d’un fichier ou d’un flux de données au sein d’un tube Syntaxe grep [option] modèle_de_critères [fichier1 …] Les cinq options du grep les plus utiles sont : i : pour ne pas tenir compte des majuscules/minuscules, v : toutes les lignes ne contenant pas le critère, n : pour avoir les numéros de ligne, E : pour les expressions régulières plus compliquées, l : pour lister seulement les fichiers et non pas les lignes contenant la chaîne recherchée, c : la commande ne retourne que le nombre de lignes trouvées

40 40 Programmes utilitaires et filtres (grep) Le modèle de critères peut contenir les caractères spéciaux suivants : […] : Plage de caractères permis à cet emplacement [^…] : Plage de caractères non permis à cet emplacement. : Un caractère quelconque (y compris un espace) * : Signe de répétition. Agit sur le caractère placé devant le * $ : Matérialise une fin de ligne | : ou ^ : début de ligne \{…\} : Caractère de répétition, entre les accolades \{nombre\} nombre exacte \{nombre,\} nombre minimum \{nombre1,nombre2\} de nombre1 à nombre2

41 41 Programmes utilitaires et filtres (grep) Rq: Ces caractères spéciaux doivent être interprétés par la commande grep et non pas par le shell Le modèle de critères doit être mis entre guillemets ou entre apostrophes Exemple grep ‘[A-Z][A-Z]*$’ timbres

42 42 Programmes utilitaires et filtres (grep) nombre de lignes commençant par ! Dans le fichier fichier1 : grep "^!" fichier1 | wc -l recherche de STOP avec le numéro de la ligne : grep -n -i stop fichier1 liste de tous les fichiers qui n'ont pas "image" ou "son" dans leur nom : ls | grep -vE "(image|son)" liste des lignes contenant "image" ou "son" dans tous les fichiers du répertoire courant grep -E "(image|son)" *

43 43 Programmes utilitaires et filtres commande cut Sélection de colonnes et de champs Syntaxe cut –csélection_de_colonne [fichier …] Sélection_de_colonne pourra représenter l’une des informations suivantes: Une colonne seule (par exemple -c5), Une plage de colonnes (par exemple -c3-10 ou - c8-), Une liste de nombres séparés par des virgules (par exemple -c3,7,9), Une combinaison des trois formes précédentes (par exemple -c1-3,7,20-).

44 44 Programmes utilitaires et filtres commande cut Sélection de champs Syntaxe cut [-dx] –fsélection_de_champ [fichier..] x désigne le caractère de séparation de champs Sélection_de_champ suit les mêmes règles que la sélection des colonnes

45 45 Programmes utilitaires et filtres Tri par lignes La commande sort effectue un tri par lignes en ordre croissant. Syntaxe sort [options] [+pos1] [-pos2] …] [fichier …] Par défaut le tri porte sur chaque ligne prise en intégralité Avec les options +pos1 et –pos2, vous sélectionnerez les champs à utiliser comme critères de tri.Sort numérote les champs en commençant par 0. Le second critère ne sera mis en œuvre que si le premier critère ne suffit pas à départager les lignes.

46 46 Programmes utilitaires et filtres sort Les options utils: d : tri ascii n : tri numérique b : ignore les espaces placés en début de champs f : aucune différence n’est faite entre majuscules et minuscules r : inverse l’ordre de tri, donc tri décroissant tc : le caractère « c » est défini comme caractère de séparation entre les champs d’une ligne

47 47 Programmes utilitaires et filtres commande tail La commande tail affiche la dernière partie d’un fichier. Syntaxe tail [- nombre] [fichier] Nombre : définit le nombre de lignes à afficher. Par défaut c’est 10 Un signe + à la place de – inverse l’effet de la commande. Exemple tail –5 timbre affiche les 5 dernieres lignes du fichier timbre tail +5 timbre affiche les 5 premieres lignes du fichier timbre

48 48 Programmes utilitaires et filtres commande tee Avec l’utilisation d’un tube, le résultat de la première commande n’est pas accessible. Pour avoir une copie, on peut utiliser la commande tee. Le résultat de la première commande est sauvegardé dans un fichier dont le nom est passé en argument. Exemple ls | tee espion | wc –l Le résultat de la commande ls est enregistré dans le fichier espion

49 49 Recherche de fichiers et de répertoires La commande find parcourt les répertoires et leurs sous-répertoires de manière récursive, à la recherche de fichiers. Syntaxe find répertoire(s) critère_de_sélection option(s) Répertoire : répertoire à partir duquel la recherche doit commencer critère_de_sélection : critères de recherche à mettre en œuvre Option : que doit-il se passer si un fichier répond à ce critère Lors de la recherche, un répertoire ne peut être parcouru que si l’utilisateur dispose des autorisations de lecture et d’exécution sur ce répertoire.

50 50 Recherche de fichiers et de répertoires Options des sélection des fichiers et répertoires name : recherche par nom de fichier type : recherche par type de fichier user : recherche par propriétaire group : recherche par l’appartenance à un groupe size : recherche par taille de fichier atime : recherche par date de dernier accès mtime : recherche par date de dernière modification ctime : recherche par date de création perm : recherche par autorisations d’accès links : recherche par nombre de références (links) aux fichiers

51 51 Recherche de fichiers et de répertoires Option de commande Les options de commande seront traitées pour chaque fichier trouvé. En dehors de l’option –print qui montre le chemin d’accès au fichier, on peut mettre en place l’option - exec Les commandes dont il est fait état derrière –exec seront exécutées sans aucune demande de confirmation L’option –ok demande à l’utilisateur si la commande doit effectivement être exécutée.

52 52 Recherche de fichiers et de répertoires Traitement sans confirmation avec –exec La spécification d’une commande derrière –exec est soumise à certaines règles: L’option –exec doit être la dernière de la commande find La commande placée derrière –exec doit être terminée par le paramètre ;. Comme c’est un caractère spécial, il doit être masqué par un \

53 53 Recherche de fichiers et de répertoires (suite) Pour accéder à un des fichiers trouvés, dans le cadre de la commande placée derrière –exec, utilisez le raccourci {} Exemple find. –user student –exec ls –l {}\; ( affiche le format long de la commande ls pour les fichiers trouvés) find. –type f –atime +13 –exec rm {} \; (supprime les fichiers auxquels vous n’avez plus accédé depuis plus de 2 semaines)

54 54 Recherche de fichiers et de répertoires Traitement après confirmation avec –ok Les mêmes explications s’appliquent également à l’option –ok, mais celle-ci, demande une confirmation d’exécution de la commande pour chaque fichier trouvé. Ce n’est qu’en cas de réponse affirmative (avec y), que la commande placée derrière –ok sera exécutée. Exemple : find. –ok rm {} \;

55 55 Recherche de fichiers et de répertoires Combinaison de critères pour recherches complexes Les critères de sélection peuvent être combinés. Un fichier valide doit répondre simultanément à l’ensemble des critères définis. La commande find permet également des combinaison logiques de ses options ! : négation logique des options a : liason par ET logique des options de recherche (end) o : liaison par OU logique des options de recherche (or)

56 56 Recherche de fichiers et de répertoires Combinaison de critères pour recherches complexes Si vous utilisez plusieurs opérateurs logiques pour combiner des options de sélection. Il faut tenir compte de l’ordre des signes !, -a, -o. ! > -a > -o Pour spécifier une combinaison d’options basée sur un lien ET ou OU, il faut placer l’ensemble de l’expression entre parenthèse. Les parenthèses doivent être verrouiller. Exemple find. \ ( -type d –o –name "*ham" \) -print

57 57 Compression avec Gzip et Zip Les fichiers comprimés utilisent moins d'espace disque. Vous pouvez comprimer les fichiers Linux à l'aide de l'instrument Gzip ou Zip. Par convention, les fichiers comprimés se voient attribuer l'extension.gz. Exemple gzip filename.ext gunzip filename.ext.gz

58 58 Compression avec Gzip et Zip Pour comprimer un fichier à l'aide de zip, entrez ceci : zip -r filename.zip files filename représente le fichier que vous créez, et files représente les fichiers que vous voulez placer dans le nouveau fichier Pour extraire le contenu d'un fichier zip, entrez : unzip filename.zip Vous pouvez compresser plusieurs fichiers en même temps avec zip ou gzip. gzip filename.gz file1 file2 file3

59 59 Archiver avec Tar Les fichiers tar placent plusieurs fichiers ou le contenu d'un répertoire ou de plusieurs répertoires dans un seul fichier. Généralement, les fichiers tar terminent par l'extension.tar. Pour créer un fichier tar, tapez : tar -cvf filename.tar files/directories

60 60 Archiver avec Tar Pour afficher la liste du contenu d'un fichier tar, entrez : tar -tvf foo.tar Pour extraire le contenu d'un fichier tar, entrez : tar -xvf foo.tar Cette commande n'élimine pas le fichier.tar, mais elle place des copies du contenu de.tar dans le répertoire dans lequel vous travaillez actuellement.

61 61 Archiver avec Tar La commande tar ne compresse pas automatiquement les fichiers. Vous pouvez compresser les fichiers tar avec : tar -czvf foo.tar Les fichiers tar compressés se voient attribuer l'extension.tgz et sont comprimés avec gzip. Pour décompresser un fichier tar, entrez : tar -xzvf foo.tgz

62 62 unité 2 Editeur vi

63 63 Edition de texte avec vi L'éditeur vi est disponible sur toutes les machines UNIX. Il utilise deux modes : un mode insertion et un mode de commandes. La syntaxe d'appel de l'éditeur est vi fich1

64 64 Edition de texte avec vi Le Mode Insertion a ("after") passe en mode insertion après la position courante du curseur i ("insert before") passe en mode insertion avant la position courante A ("append") passe en mode insertion à la fin de la ligne sur laquelle se trouve le curseur ; I ("insert") passe en mode insertion avant le premier caractère non blanc de la ligne sur laquelle se trouve le curseur ; o insertion d’une nouvelle ligne, sous la ligne courante; O insertion d’une nouvelle ligne, au dessus de la ligne courante; Lorsque l'insertion de texte est terminée, on quitte le mode insertion pour passer au mode commande en appuyant sur la touche.

65 65 Edition de texte avec vi Le Positionnement du Curseur l, ou -> déplacent le curseur vers la droite, d'un caractère (jusqu'en fin de ligne) ; h ou <- déplacent le curseur vers la gauche, d'un caractère (jusqu'en début de ligne) ; j ou [arrowdown] déplacent le curseur vers le bas, d'une ligne (jusqu'en fin de fichier) ; k ou [arrowup] déplacent le curseur vers le haut, d'une ligne (jusqu'en début de fichier) ;

66 66 Edition de texte avec vi Recherche d'une Chaîne de Caractères /exp recherche la première occurrence correspondant à l'expression rationnelle exp à partir de la position courante du curseur, en avançant dans le fichier (la recherche est circulaire) ; ?exp recherche la première occurrence correspondant à l'expression rationnelle exp à partir de la position courante du curseur, en parcourant le fichier en arrière (la recherche est circulaire) ; n (next) répète la dernière commande / ou ? ;

67 67 Edition de texte avec vi Ajuster l'Écran CTRL+F Remonter d’un l'écran ; CTRL +B descendre d’un écran; z réaffiche le texte, la ligne courante devenant la première ligne de l'écran ; z- réaffiche le texte, la ligne courante devenant la dernière ligne de l'écran ; z. réaffiche le texte avec la ligne courante au milieu de l'écran.

68 68 Edition de texte avec vi Manipulation de Fichiers :w ("write") enregistre le fichier ; :wq ("write and quit") ou ZZ enregistrent le fichier et quittent l'éditeur ; :q ("quit") quitte l'éditeur si le fichier a été enregistré ; :q! ("quit") quitte l'éditeur sans tenir compte des modifications effectuées ; Remarque : le caractère : utilisé dans ces commandes (et qui doit être tapé) s'affiche sur la dernière ligne de l'écran : la ligne de commandes.

69 69 Edition de texte avec vi Modification de Texte u annule la dernière opération effectuée ; U rétablit la ligne courante, même si plusieurs opérations ont été effectuées dessus ; J joint la ligne courante et la suivante ; rx remplace le caractère sur lequel le curseur est positionné par le caractère x ; w ("word)" avance d'un mot ; b ("back word") recule d'un mot ;

70 70 Edition de texte avec vi Copiage et Collage de Texte L'éditeur vi gère 9 tampons dans lesquels les derniers morceaux de texte effacés, coupés ou copiés sont placés. On peut aussi utiliser des tampons personnalisés nommés de a à z. numyy ou numY ("yank") copie num lignes à partir de la ligne courante comprise (une ligne par défaut) ; p ("put") colle ce qui a été copié ou effacé après la position courante ; P ("put") colle ce qui a été copié ou effacé avant la position courante ;

71 71 Unité 3 Administration des utilisateurs et des groupes

72 72 Utilisateurs Chaque utilisateur qui utilise le système doit être connu de celui-ci par un nom et, éventuellement, un mot de passe. Chaque utilisateur qui utilise le système doit être connu de celui-ci par un nom et, éventuellement, un mot de passe. Un utilisateur doit appartenir à un ou plusieurs groupes d'utilisateurs pour être autorisé à utiliser le système. Un utilisateur doit appartenir à un ou plusieurs groupes d'utilisateurs pour être autorisé à utiliser le système. Il existe plusieurs méthodes d'identification et de contrôle des utilisateurs, nous ne parlerons ici que de la méthode la plus simple mettant en oeuvre les fichiers /etc/passwd et /etc/group. Il existe plusieurs méthodes d'identification et de contrôle des utilisateurs, nous ne parlerons ici que de la méthode la plus simple mettant en oeuvre les fichiers /etc/passwd et /etc/group. Les utilisateurs et les groupes sont repérés dans le système par des numéros : uid pour le numéro d'utilisateur (User IDentifier) et gid pour le numéro de groupe (Group IDentifier). Les utilisateurs et les groupes sont repérés dans le système par des numéros : uid pour le numéro d'utilisateur (User IDentifier) et gid pour le numéro de groupe (Group IDentifier). Le numéro est unique pour un utilisateur ou un groupe donné. Le numéro est unique pour un utilisateur ou un groupe donné. L'identification d'un utilisateur s'effectue dans le fichier /etc/passwd. L'identification d'un utilisateur s'effectue dans le fichier /etc/passwd.

73 73 Hiérarchie de comptes Root Root super utilisateur super utilisateur les permissions d ’accès ne sont pas appliquées sur lui les permissions d ’accès ne sont pas appliquées sur lui il peut faire tous il peut faire tous compte pour l ’administrateur du système compte pour l ’administrateur du système bin, daemon, lp, sync, news, ftp … bin, daemon, lp, sync, news, ftp … comptes utilisateur utilisés par différentes applications et démons comptes utilisateur utilisés par différentes applications et démons ne peuvent pas être utiliser comme login ne peuvent pas être utiliser comme login comptes ordinaires comptes ordinaires

74 74 Enregistrer un utilisateur /etc/passwd Un utilisateur est caractérisé par une ligne dans le fichier /etc/password. Un utilisateur est caractérisé par une ligne dans le fichier /etc/password. Une ligne est formée par les champs suivants : Une ligne est formée par les champs suivants :login:passwd:uid:gid:comment:home:shell login : Il s'agit du nom de l'utilisateur. C'est un alphanumérique de 8 caractères maximum. login : Il s'agit du nom de l'utilisateur. C'est un alphanumérique de 8 caractères maximum. passwd : Il apparaît dans ce fichier sous forme codée. passwd : Il apparaît dans ce fichier sous forme codée. uid : Il s'agit d'un numéro unique de l'utilisateur. Compris entre 0 et Les 100 premiers nombres sont par convention réservés au système et ne correspondent pas à des utilisateurs normaux. uid : Il s'agit d'un numéro unique de l'utilisateur. Compris entre 0 et Les 100 premiers nombres sont par convention réservés au système et ne correspondent pas à des utilisateurs normaux. gid : Numéro de groupe. Chaque utilisateur appartient à un groupe principal. Il pourra également appartenir à des groupes secondaires. Cette notion de groupe interviendra au niveau des permissions sur les fichiers. gid : Numéro de groupe. Chaque utilisateur appartient à un groupe principal. Il pourra également appartenir à des groupes secondaires. Cette notion de groupe interviendra au niveau des permissions sur les fichiers. comment : Nom complet de l'utilisateur. comment : Nom complet de l'utilisateur. home : Chemin complet de la directory attribuée à l'utilisateur home : Chemin complet de la directory attribuée à l'utilisateur shell : Chemin complet du shell, le programme qui interagit avec l'utilisateur et qui permet de taper des commandes (csh, sh, bash, tcsh,...). shell : Chemin complet du shell, le programme qui interagit avec l'utilisateur et qui permet de taper des commandes (csh, sh, bash, tcsh,...).

75 75 Enregistrer un utilisateur /etc/passwd Exemple : root :x:0:0:root:/root:/bin/bash kmaster:x:500:500:kmaster:/home/kmaster:/bin/bash Nota le deuxième champ ( x ) spécifie q'il y a un mot de passe et que celui-ci est crypté (dans /etc/shadow ). L'UID est compris entre 0 (root) et la constante UID_MAX (définie dans le fichier /etc/login.defs ). ATTENTION : Si au sein de ce fichier, plusieurs lignes possèdent le même UID pour plusieurs noms de connexion différents, UN SEUL utilisateur est en fait défini ! Exemple : on peut ainsi définir un utilisateur stop, dont l'UID est 0 et qui exécute shutdown comme commande de connexion.

76 76 /etc/shadow Le fichier /etc/passwd est public (toute personne qui a un compte sur la machine peut le lire). Le fichier /etc/passwd est public (toute personne qui a un compte sur la machine peut le lire). Pour contrecarrer cette faille, certains systèmes ont introduit le fichier /etc/shadow Pour contrecarrer cette faille, certains systèmes ont introduit le fichier /etc/shadow lisible uniquement par root lisible uniquement par root contient les mots de passe des utilisateurs, qui disparaissent alors de /etc/passwd. contient les mots de passe des utilisateurs, qui disparaissent alors de /etc/passwd. Si on ajoute un utilisateur à la main, cela implique d'éditer les 2 fichiers. Si on ajoute un utilisateur à la main, cela implique d'éditer les 2 fichiers.

77 77 /etc/shadow Une ligne /etc/shadow est composée des champs suivants: Nom de login mot de passe crypté Nombre de jours écoulés depuis le 1er janvier 1970 jusqu'au dernier changement de mot de passe Nombre de jours durant lesquels le mot de passe est encore valide Nombre de jours après lesquels le mot de passe doit être changé Nombre de jours avant l'expiration du mot de passe impliquant l'avertissement de l'utilisateur Nombre de jours après l'expiration provoquant la desactivation du compte Numéro du jour depuis le 1er janvier 1970 à partir duquel le compte a été désactivé Champs réservé

78 78 /etc/shadow Exemple : kmaster:$1$zBvl.scX$hkqgDvBu40EqpAE wZfZZQ0:11493:0:99999:7::: le mot de passe en cours a été mis en place le 11493e jour après le 1/1/1970 (date de référence), il pourra à nouveau être changé 0 jour après cette date il devra obligatoirement être modifié avant le 99999e jour après la date de création (autant dire qu'il n'expire jamais...).

79 79 /etc/skel Après la création d’un compte utilisateur, tous les fichiers de /etc/skel sont copiés dans le répertoire personnel de cet utilisateur. Après la création d’un compte utilisateur, tous les fichiers de /etc/skel sont copiés dans le répertoire personnel de cet utilisateur. On place dans ce répertoire les fichiers dont tous le monde doit en avoir une copie On place dans ce répertoire les fichiers dont tous le monde doit en avoir une copie

80 80 La commande su La commande su permet de changer l’identité de l’utilisateur courant. La commande su permet de changer l’identité de l’utilisateur courant. Syntaxe su [[-] utilisateur] Syntaxe su [[-] utilisateur] Utilisateur est l’utilisateur dont on veut prendre l’identité Utilisateur est l’utilisateur dont on veut prendre l’identité Si aucun utilisateur n’est spécifié, le changement se fait vers l’utilisateur root Si aucun utilisateur n’est spécifié, le changement se fait vers l’utilisateur root La commande demande un mot de passe avant d’obtempérer. (sauf si root) La commande demande un mot de passe avant d’obtempérer. (sauf si root)

81 81 LE FICHIER /etc/group Le numéro de groupe (GID) La liste des utilisateurs - Définit les groupes d'utilisateurs - Chaque ligne définit un groupe - Permet de faire le lien entre : Le numéro de groupe (GID) La liste des utilisateurs de ce groupe - Une ligne contient quatre champs, séparés par deux points (:)

82 82 LE FICHIER /etc/group 1)Nom du groupe : 1)Nom du groupe : - Nombre maximum de caractères : 8. - Il est unique sinon conflit avec la commande newgrp. 2)2) Mot de passe : 2)2) Mot de passe : - Champ généralement vide. - Lorsqu ’il existe, il permet d'augmenter la sécurité du système. - Il est demandé lorsqu'un utilisateur essaie de changer de groupe.

83 83 LE FICHIER /etc/group 3) Numéro du groupe (GID) 3) Numéro du groupe (GID) : - Lien entre les fichiers /etc/group et /etc/passwd. - Il est appelé numéro de groupe primaire (NGP) dans le fichier /etc/passwd,. - Chaque NGP possède une entrée dans le fichier /etc/group - C ’est cet identifiant qui est connu du système, et non le nom du groupe, qui n'est utilisé que pour l'affichage.

84 84 LE FICHIER /etc/group 4) Les membres 4) Les membres - Chaque groupe comprend une liste des membres, séparés chacun par une virgule. - La commande newgrp permet à chaque membre de changer de groupe Intérêts Intérêts - Accès à des fichiers communs à un autre groupe. - Un utilisateur peut appartenir à plusieurs groupes (groupes secondaires) (secondary group set).

85 85 Gestion des comptes Créer un compte pour un nouvel utilisateur Créer un compte pour un nouvel utilisateur Commande useradd Commande useradd Syntaxe : useradd [options] nom_login Syntaxe : useradd [options] nom_login Options : Options : -u uidpour fixer l'identifiant uid -g groupe-primaire -G listefixe l'appartenance de l'utilisateur à une liste de groupes secondaires (séparateur, sans espace) -s shellpar défaut, attribution du shell par défaut bash -c commentaire -d rep. Personnelpar défaut dans le répertoire /home -e date-expirationfixe la date d'expiration du compte (format MM/JJ/AA) -mpour créer le répertoire personnel -k rep-skelrecopie le contenu de rep-skel dans le rép. personnel, par défaut /etc/skel # Useradd –c « compte de test » -m –d /home/toto –G test –k /etc/skel toto

86 86 Gestion des comptes commande useradd Pour examiner les valeurs par défaut appliquées par useradd : Pour examiner les valeurs par défaut appliquées par useradd : commande useradd -D ou commande useradd -D ou éditer /etc/default/useradd éditer /etc/default/useradd GROUP=100 identifiant du groupe primaire HOME=/home racine des rép. personnels INACTIVE=-1 (nb de jours avant destruction du compte) GROUP=100 identifiant du groupe primaire HOME=/home racine des rép. personnels INACTIVE=-1 (nb de jours avant destruction du compte) EXPIRE= nb de jours avant expiration du mot de passe SHELL=/bin/bash shell de connexion attribué au compte SKEL=/etc/skel fichiers recopiés par défaut dans chaque rép. personnel

87 87 Gestion des comptes La commande passwd La commande passwd Syntaxe : passwd [options ] nom_login Syntaxe : passwd [options ] nom_login Options Options -d l'utilisateur pourra se connecter sans mot de passe ! -l pour verrouiller le compte et empêcher sa connexion. -u pour déverrouiller.

88 88 Gestion des comptes Connaître l' uid et le gid de l'utilisateur courant Connaître l' uid et le gid de l'utilisateur courant Commandes ( id, whoami, who am i ) Commandes ( id, whoami, who am i ) bash:> id uid=501(stage1) gid=501(stage1) groups=501(stage1), 504(stagiaire) Pour décrire un utilisateur Pour décrire un utilisateur Commande chfn Cette commande permet d'indiquer dans le champ numéro 5 du fichier /etc/passwd différentes informations sur un utilisateur Commande chfn Cette commande permet d'indiquer dans le champ numéro 5 du fichier /etc/passwd différentes informations sur un utilisateur

89 89 Gestion des comptes  Supprimer le compte d'un utilisateur (non connecté)  La commande userdel  Syntaxe : userdel [-r] nom_login  L'option -r supprime aussi le rép. personnel de l'utilisateur  La commande supprime toute trace de l'utilisateur dans le fichier de configuration : /etc/passwd y compris dans les groupes d'utilisateurs.

90 90 Gestion des comptes Modifier le compte d’un utilisateur Modifier le compte d’un utilisateur La commande usermod La commande usermod Syntaxe : usermod [options] nom_login Les options sont les mêmes que useradd Syntaxe : usermod [options] nom_login Les options sont les mêmes que useraddles mêmesles mêmes Exemple Exemple usermod -G stagiaire,prof stagex ajoute stagex dans les 2 groupes stagiaire et profs (qui doivent exister)

91 91 Les groupes Un groupe est un ensemble d'utilisateurs. Un groupe est un ensemble d'utilisateurs. Chaque utilisateur doit faire partie au moins d'un groupe. Chaque utilisateur doit faire partie au moins d'un groupe. Dans /etc/passwd chaque utilisateur possède un groupe par défaut, précisé par son identifiant gid dans ce fichier. Dans /etc/passwd chaque utilisateur possède un groupe par défaut, précisé par son identifiant gid dans ce fichier. L'appartenance au groupe primaire n'étant pas exclusive, tout utilisateur peut faire partie de plusieurs autres groupes. L'appartenance au groupe primaire n'étant pas exclusive, tout utilisateur peut faire partie de plusieurs autres groupes. La liste des groupes est donnée par le fichier /etc/group La liste des groupes est donnée par le fichier /etc/group

92 92 Le fichier /etc/group Le fichier de déclaration des groupes /etc/group contient une ligne par groupe dans un format similaire au fichier /etc/passwd. Le fichier de déclaration des groupes /etc/group contient une ligne par groupe dans un format similaire au fichier /etc/passwd. Une ligne de ce fichier comporte les champs suivants, séparés par des caractères `:' : Une ligne de ce fichier comporte les champs suivants, séparés par des caractères `:' : nom du groupe nom du groupe mot de passe du groupe mot de passe du groupe numéro du groupe (gid) numéro du groupe (gid) liste des utilisateurs appartenant au groupe séparés par des virgules liste des utilisateurs appartenant au groupe séparés par des virgules Par exemple : Par exemple : actrices:*:400:sandra,meg,michelle

93 93 Commandes utiles Pour lister tous les groupes d'un utilisateur : groups nom_login Pour lister tous les groupes d'un utilisateur : groups nom_login Pour créer un nouveau groupe groupadd nom_groupe Pour créer un nouveau groupe groupadd nom_groupe Supprimer un groupe : groupdel nom_groupe Le groupe est supprimé du fichier /etc/group. Supprimer un groupe : groupdel nom_groupe Le groupe est supprimé du fichier /etc/group. modifier un groupe modifier un groupe groupmod -n nouveau_nom nom_groupe groupmod -n nouveau_nom nom_groupe Pour ajouter un utilisateur à un groupe Le plus simple est d'éditer le fichier /etc/group et d'ajouter une liste d'utilisateurs (séparés par des virgules) sur la ligne du groupe. Pour ajouter un utilisateur à un groupe Le plus simple est d'éditer le fichier /etc/group et d'ajouter une liste d'utilisateurs (séparés par des virgules) sur la ligne du groupe.

94 94 Administrer un groupe L’administration consiste à ajouter ou supprimer des utilisateurs dans un groupe. L’administrateur root peut déléguer ce pouvoir à un autre utilisateur grâce à la commande gpasswd.

95 95 Administrer un groupe Les options de gpasswd gpasswd stagiaire : pour donner un mot de passe au groupe stagiaire gpasswd –a aziz stagiaire : pour ajouter l’utilisateur aziz dans le groupe stagiaire. gpasswd –d aziz stagiaire : pour supprimer aziz du groupe stagiaire gpasswd -A ali stagiaire : pour nommer ali administrateur du groupe stagiaire.

96 96 Processus d ’initialisation utilisateur /etc/profile /etc/profile $HOME/.bash_profile $HOME/.bash_profile $HOME/.bashrc $HOME/.bashrc /etc/bashrc /etc/bashrc $HOME/.bash_logout $HOME/.bash_logout pwd]$Bourne Again Shell

97 97 newgroup La commande newgrp permet à un utilisateur de changer son groupe courant. La commande newgrp permet à un utilisateur de changer son groupe courant. Par exemple : Par exemple : bash$ newgrp actrices bash$ id uid=500 (sandra) gid=400 (actrices) groups=500(sandra),100(users), 400(actrices) uid=500 (sandra) gid=400 (actrices) groups=500(sandra),100(users), 400(actrices)

98 98 Unité 4 Les droits d’accès

99 99 Gestion des droits d’accès Tout utilisateur possède un numéro d'utilisateur et le numéro du groupe auquel il appartient. On distingue trois types d'utilisateurs potentiels : le propriétaire du fichier ("user", u); les utilisateurs appartenant au même groupe ("group", g); les autres utilisateurs ("other", o). Trois types d'opérations sur les fichiers sont possibles la lecture ("read", r); l'écriture ("write", w); l'exécution ("execute", x). Il y a donc 9 combinaisons possibles utilisateur- opération. C'est pourquoi les protections sont codées sur 9 bits.

100 100 Gestion des droits d’accès si vous essayez de copier un fichier dans un sous-répertoire (cp fic1 rep2/rep3/fic1), il faut que vous puissiez : 1. lire le fichier fic1 : droit en lecture sur le fichier 2. traverser les sous-répertoires rep2 et rep3 : droit x au moins pour vous, 3. écrire dans rep3 : droit W

101 101 Modification des droits d’accès chmod modification_des_droits fichier1 [fichier2 …] Vous pouvez utiliser des +, - ou = pour ajouter, supprimer ou fixer des droits à l'une ou l'autre des catégories u, g, o ou a tous (a) en précisant le type de droit d'accès, r, w ou x. chmod g+w fic1 chmod o-x rep chmod u+rx,g-w fic2 chmod u=rwx,g=rx,o=- fic chmod a+r fic

102 102 Modification des droits d’accès Si le changement de droits s'applique à un répertoire, vous pouvez changer tous les droits des fichiers et répertoires inclus dans ce répertoire via l'option -R.

103 103 Modification des droits d’accès chmod nombre_en_base_8 fichier1 [fichier2 …] chmod utilise le codage binaire, fondé sur l'association de valeurs numériques aux différentes permissions : lecture : 4, écriture : 2, exécution : 1, pas de permission : 0.

104 104 Modification des droits d’accès Chaque triplet se code par l'addition de 4, 2, 1, ou 0. Pour un rwx il faudra ajouter 4+2+1=7, pour r-x 4+0+1=5 etc. La commande chmod permettant de positionner rwxr-x--- sur fic1 à la syntaxe suivante : chmod 750 fic1

105 105 Valeur par défaut des droits d’accès umask nombre_en_base_8 Par défaut unix affecte les droits max sur les fichiers normaux et les répertoires : Rép 777 (rwxrwxrwx) Fichier normal 666 (rw-rw-rw-) Les droits effectifs sont obtenus par : droits_max - masque Exemple Si on souhaite un accès en lecture/écriture pour le propriétaire et en lecture seule pour le groupe et le reste de monde, on utilise 022 comme masque

106 106 Changement de propriétaire et de groupe Sans les uid et les gid les droits d’accès n’auraient aucun sens. La commande chown permet de changer le propriétaire chown utilisateur fichier1 [fichier2 …] La commande chgrp permet de changer le groupe chgrp groupe fichier1 [[fichier2 …]

107 107 Droits d’accès étendus Set User ID et Set Group ID bit Si le SUID est placé sur un programme, celui-ci se voit affecté, le temps de son traitement, le numéro d’utilisateur du propriétaire du fichier programme, avec tous les droits d’accès correspondants. De la même façon, si le SGID est positionné, le numéro de groupe normale est remplacé par le numéro de groupe du propriétaire du fichier programme.

108 108 Droits d’accès étendus Définition du SUID et du SGID bit Chmod u+s fichier_programme Chmod g+s fichier_programme Ou Chmod 4755 fichier Chmod 2755 fichier

109 109 Numéros d’identification réel et effectif Les numéros d’utilisateur ou de groupe d’un processus sont hérités du parent (numéros réels). Si vous utilisez un SUID ou un SGID bit, les numéros d’utilisateur et de groupe s’en trouvent modifiés (numéros effectifs).

110 110 Droits d’accès étendus pour les répertoires : Sticky bit Un utilisateur qui a le droit d’écrire dans un répertoire peut supprimer tous les fichiers de ce répertoire. Si le Sticky bit est positionné, seul le propriétaire pourra supprimer un fichier du répertoire. chmod u+t rep chmod 1777 rep

111 111 Unité 5 Les packages

112 112 Gestion de packages Combinaison dans un même fichier (rpm) Combinaison dans un même fichier (rpm) informations sur le programme informations sur le programme les fichiers exécutables, librairies, documentation les fichiers exécutables, librairies, documentation les scripts d ’installation et de désinstallation les scripts d ’installation et de désinstallation les fichiers de configuration les fichiers de configuration les informations de dépendance les informations de dépendance Le nom d’un rpm respecte un format précis de type nom-version.arch.rpm où : Le nom d’un rpm respecte un format précis de type nom-version.arch.rpm où : nom = nom du package/prog nom = nom du package/prog version = version du package/prog version = version du package/prog arch = architecture pour lequel est fait le prog/package. arch = architecture pour lequel est fait le prog/package.

113 113 Red Hat Package Manager (RPM) on peut installer et désinstaller des programmes par une seule commande : rpm on peut installer et désinstaller des programmes par une seule commande : rpm /var/lib/rpm, contient une BDD des RPMs installés /var/lib/rpm, contient une BDD des RPMs installés

114 114 Installation des RPMs Syntaxe de base Syntaxe de base rpm -i nom_package.rpm( installation) rpm -i nom_package.rpm( installation) rpm -F nom_package.rpm(Freshening) rpm -F nom_package.rpm(Freshening) installation si une version ancienne de ce package est déjà installée installation si une version ancienne de ce package est déjà installée rpm -U nom_package.rpm (Upgrading) rpm -U nom_package.rpm (Upgrading) installe et désinstalle l’ancienne version qui est enregistrée avec l ’extension.rpmsave installe et désinstalle l’ancienne version qui est enregistrée avec l ’extension.rpmsave options options v : mode bavard v : mode bavard h : affiche 50 marques (hash marks) h : affiche 50 marques (hash marks) --nodeps : sans tenir compte des dépendances --nodeps : sans tenir compte des dépendances

115 115 Désinstallation de RPM Pour désinstaller un RPM, on utilise la commande Pour désinstaller un RPM, on utilise la commande rpm -e nom_package rpm -e nom_package options: options: --nodeps : ignore les dépendances --nodeps : ignore les dépendances

116 116 RPM querying Pour connaître le contenu d’un RPM installé Pour connaître le contenu d’un RPM installé syntaxe de base syntaxe de base rpm -q [ nom_package ] rpm -q [ nom_package ] options : options : a : chercher tous les RPM installés a : chercher tous les RPM installés f : chercher le RPM d ’où provient le fichier file f : chercher le RPM d ’où provient le fichier file p : affiche les fichiers de ce package (non encore installé) p : affiche les fichiers de ce package (non encore installé) i : affiche les informations du package i : affiche les informations du package l : affiche la liste des fichiers du package l : affiche la liste des fichiers du package s : affiche l’état de tous les fichiers s : affiche l’état de tous les fichiers d : affiche les fichiers de documentation d : affiche les fichiers de documentation c : affiche les fichiers de configuration c : affiche les fichiers de configuration

117 117 Vérification des RPMs Vérifie les fichiers actuelles avec le RPM original Vérifie les fichiers actuelles avec le RPM original taille taille checksum MD5 checksum MD5 Permissions, type Permissions, type propriétaire propriétaire groupe groupe syntaxe de base syntaxe de base rpm -V nom_package rpm -V nom_package options options f vérifie le fichier file f vérifie le fichier file avérifie tous les packages avérifie tous les packages p vérifie par rapport au RPM original p vérifie par rapport au RPM original

118 118 Outils graphiques kpackage kpackage Il fonctionne dans l'environnement Kde, Il fonctionne dans l'environnement Kde, Il n ’est pas fourni en standard dans les distributions RedHat. Il n ’est pas fourni en standard dans les distributions RedHat. gnorpm gnorpm C ’est un logiciel fourni avec l'environnement graphique gnome. C ’est un logiciel fourni avec l'environnement graphique gnome. up2date up2date est un outil standard de la distribution RedHat (version 6.1 et supérieure) est un outil standard de la distribution RedHat (version 6.1 et supérieure) il permet la mise à jour de la distribution. il permet la mise à jour de la distribution. Il cherche sur le serveur ftp de redhat les packages mis à jour pour la distribution. Il cherche sur le serveur ftp de redhat les packages mis à jour pour la distribution. Il présente ensuite une page web permettant de sélectionner les packages à mettre à jour. Il présente ensuite une page web permettant de sélectionner les packages à mettre à jour.

119 119 Unité 6 Scheduling

120 120 Scheduling Automatiser les taches de routine Automatiser les taches de routine lancement automatique des taches à des moments spécifiques lancement automatique des taches à des moments spécifiques le démon crond fait le scheduling pour les fichiers conrontab le démon crond fait le scheduling pour les fichiers conrontab la commande anacron exécute les jobs anacron la commande anacron exécute les jobs anacron le démon atd est responsable d ’exécuter les jobs soumets par les commandes at ou batch le démon atd est responsable d ’exécuter les jobs soumets par les commandes at ou batch

121 121 cron Les jobs sont configurés dans des fichiers crontab Les jobs sont configurés dans des fichiers crontab Syntaxe d’une ligne Syntaxe d’une ligne[minute][heur][jour-du-moi][moi][jour-de-semaine][job] chaque minute, crond cherche dans les fichiers crontab s’il y a un job à lancer chaque minute, crond cherche dans les fichiers crontab s’il y a un job à lancer Les fichiers crontabs des utilisateurs sont enregistrés dans /var/spool/cron/username Les fichiers crontabs des utilisateurs sont enregistrés dans /var/spool/cron/username le fichier crontab système est /etc/crontab le fichier crontab système est /etc/crontab tous les fichiers de /etc/cron.d sont considérés comme des fichiers crontab tous les fichiers de /etc/cron.d sont considérés comme des fichiers crontab

122 122 Exemple d ’un fichier crontab utilisateur 08***cmd1 0,309***cmd2 0,308-18***cmd3 */5****cmd **cmd *cmd6 015**1cmd cmd8

123 123 Commandes crontab Un utilisateur peut modifier son crontab, mais il ne peut pas signaler à crond ce changement Un utilisateur peut modifier son crontab, mais il ne peut pas signaler à crond ce changement avec la commande crontab (SUID root) c ’est possible avec la commande crontab (SUID root) c ’est possible syntaxe syntaxe crontab -l affiche crontab de l’utilisateur courant crontab -l affiche crontab de l’utilisateur courant crontab -r supprime crontab de l’utilisateur courant crontab -r supprime crontab de l’utilisateur courant crontab -e édit crontab de l’utilisateur courant crontab -e édit crontab de l’utilisateur courant NB root peut utiliser -u username pour spécifier un utilisateur autre que root.

124 124 Crontab système Le fichier crontab du système est /etc/crontab Le fichier crontab du système est /etc/crontab le répertoire cronatb système est /etc/cron.d le répertoire cronatb système est /etc/cron.d tous les fichiers de ce répertoire sont lu par crond tous les fichiers de ce répertoire sont lu par crond syntaxe syntaxe on peut définir des variables d ’environnement on peut définir des variables d ’environnement spécifier l’uid sous lequel la commande va être exécuter spécifier l’uid sous lequel la commande va être exécuter SHELL=/bin/bashPATH=/sbin:/bin:/usr/sbin:/usr/binMAILTO=rootHOME=/ 01 * * * * root run-parts /etc/cron.hourly 02 4 * * * root run-parts /etc/cron.daily 22 4 * * * root run-parts /etc/cron.weekly * * root run-parts /etc/cron.monthly

125 125 at La commande at exécute une commande à un moment donnée. La commande at exécute une commande à un moment donnée. # at 4am ps aux ^d # at -f bshfile 16: days

126 126 Contrôle des jobs at Liste des jobs Liste des jobs $at -l $atq annuler un job annuler un job $at -d job $atrm job permission d ’utilisation de at permission d ’utilisation de at /etc/at.allow /etc/at.allow /etc/at.deny /etc/at.deny

127 127 batch Exécute une commande quand le système et moins chargé Exécute une commande quand le système et moins chargé$batch echo la charge est minime ^d

128 128 Unité 7 RESEAUX

129 129 Configuration La configuration du réseau sous Linux peut être effectuée lors de l'installation ou a posteriori en modifiant les fichiers concernés. La configuration du réseau sous Linux peut être effectuée lors de l'installation ou a posteriori en modifiant les fichiers concernés. Le fichier /etc/sysconfig/network contient les variables : Le fichier /etc/sysconfig/network contient les variables : NETWORKING : initialisée à "yes" pour valider l'utilisation du réseau NETWORKING : initialisée à "yes" pour valider l'utilisation du réseau FORWARD_IPV4 : initialisée à "no" pour empêcher le transfert automatique des paquets FORWARD_IPV4 : initialisée à "no" pour empêcher le transfert automatique des paquets HOSTNAME : contient le nom complet de la machine HOSTNAME : contient le nom complet de la machine GATEWAYDEV : interface d'accès à la passerelle GATEWAYDEV : interface d'accès à la passerelle GATEWAY : adresse IP de la passerelle GATEWAY : adresse IP de la passerelle Ce fichier est utilisé dans les scripts d'initialisation du réseau pour positionner les variables d'environnement. Ce fichier est utilisé dans les scripts d'initialisation du réseau pour positionner les variables d'environnement.

130 130 Configuration Pour chaque interface, il faut construire, dans le répertoire network- scripts un fichier ifcfg- où nom est remplacé par le nom de l'interface utilisée : Pour chaque interface, il faut construire, dans le répertoire network- scripts un fichier ifcfg- où nom est remplacé par le nom de l'interface utilisée : ethN pour la Nième interface réseau ethN pour la Nième interface réseau Ce fichier contient les variables suivantes : Ce fichier contient les variables suivantes : DEVICE : nom du périphérique DEVICE : nom du périphérique ONBOOT : initialisée à "yes" pour valider l'interface au démarrage ONBOOT : initialisée à "yes" pour valider l'interface au démarrage BROADCAST : contient l'adresse IP de diffusion BROADCAST : contient l'adresse IP de diffusion NETWORK : contient l'adresse IP du réseau NETWORK : contient l'adresse IP du réseau NETMASK : contient le masque du réseau NETMASK : contient le masque du réseau IPADDR : contient l'adresse IP de l'interface IPADDR : contient l'adresse IP de l'interface Ce fichier est utilisé en paramètre des scripts ifup et ifdown d'initialisation de l'interface. L'initialisation du réseau au démarrage du système est effectuée par le script /etc/rc.d/init.d/network. Ce fichier est utilisé en paramètre des scripts ifup et ifdown d'initialisation de l'interface. L'initialisation du réseau au démarrage du système est effectuée par le script /etc/rc.d/init.d/network.

131 131 Les commandes La commande hostname permet d'afficher le nom de la machine ainsi que le nom de domaine. La commande hostname permet d'afficher le nom de la machine ainsi que le nom de domaine. La commande ifconfig permet de visualiser ou de configurer les interfaces. Lorsqu'elle est exécutée sans argument, elle affiche la configuration actuelle avec, pour chaque interface, les informations suivantes : La commande ifconfig permet de visualiser ou de configurer les interfaces. Lorsqu'elle est exécutée sans argument, elle affiche la configuration actuelle avec, pour chaque interface, les informations suivantes : adresse Ethernet adresse Ethernet adresse IP adresse IP adresse de diffusion adresse de diffusion masque de réseau masque de réseau le nombre de paquets reçus et transmis le nombre de paquets reçus et transmis La commande netstat permet d'afficher : La commande netstat permet d'afficher : les connexions réseau actives et en attente les connexions réseau actives et en attente les tables de routage les tables de routage des statistiques sur l'interface des statistiques sur l'interface les tables de translation d'adresse les tables de translation d'adresse La commande arp permet de visualiser et d'agir sur la table de résolution d'adresses Ethernet. La commande arp permet de visualiser et d'agir sur la table de résolution d'adresses Ethernet. La commande route permet de visualiser et de modifier la table de routage de la machine. La commande route permet de visualiser et de modifier la table de routage de la machine. Les commandes ping et traceroute permettent de valider le chemin réseau jusqu'à un hôte donné. La commande traceroute donne la liste des routeurs par où a transité la demande. Les commandes ping et traceroute permettent de valider le chemin réseau jusqu'à un hôte donné. La commande traceroute donne la liste des routeurs par où a transité la demande.

132 132 Les fichiers Le fichier /etc/hosts contient une liste d'adresses IP associées aux noms des machines. C'est le moyen le plus simple d'effectuer la résolution de noms pour un petit réseau. Le fichier /etc/hosts contient une liste d'adresses IP associées aux noms des machines. C'est le moyen le plus simple d'effectuer la résolution de noms pour un petit réseau. Le fichier /etc/host.conf spécifie le mode de résolution des noms de machines. Il contient les lignes suivantes : Le fichier /etc/host.conf spécifie le mode de résolution des noms de machines. Il contient les lignes suivantes : OptionDescription OptionDescription spécifie l'ordre d'utilisation des différents moyens de résolution de noms : spécifie l'ordre d'utilisation des différents moyens de résolution de noms : order- hosts : fichier /etc/hosts - bind : serveur de noms DNS - nis : Network Information Service nospoofvalidé par la valeur on, cela permet de détecter les tentatives d'usurpation d'adresse IP. Alertvalidé par la valeur on, cela permet d'enregistrer, via syslog, les tentatives d'usurpation d'adresse IP. Multivalidé par la valeur on, cela permet d'affecter plusieurs adresses IP au même hôte dans le fichier /etc/hosts Trimpermet d'enlever le nom de domaine en argument avant d'effectuer une recherche dans le fichier /etc/hosts

133 133 La commande ftp Maintenant, il ne reste plus qu'à transférer le fichier "tar" sur la station du destinataire via ftp pour cela vous devez juste, soit connaître son login/passwd (pas recommandé), soit avoir votre propre login sur cette machine. La commande s'utilise ainsi : ftp autre_machine elle vous invite à rentrer le login et le passwd du compte distant, puis tapez : put mon_boulot.tar.gz Le fichier sera alors placé dans le HOME du login distant. Remarque : si vous avez plusieurs fichiers à transférer, vous pouvez utiliser "mput *.gz". Il est possible de s'affranchir des YES (return) pour chaque transfert en désactivant le prompt via la commande prompt avant le mput ou mget.

134 134 Sous ftp, les commandes ls, pwd et cd peuvent être utilisées pour lister et changer de répertoire sur la machine distante, et !ls, !pwd et !cd pour faire de même sur la machine locale. Dans le cas où vous avez laissé le fichier chez vous, et avez simplement dit à votre collègue de venir le prendre via un get sous un ftp, pensez à mettre les droits de lecture sur ce fichier et lui laisser la possibilité de traverser votre HOME. Reste ensuite au login distant à décompresser (on l'a vu !) et à détarer via : tar -xvf mon_boulot.tarmettre les droits de lecture Pour sortir de la commande ftp, tapez quit.

135 135 Les Rcommandes Comme nous en sommes aux interactions entre deux machines, détaillons un peu les Rcommandes. Il s'agit des rsh, rcp, rlogin... Toutes ces commandes seraient déjà connues si elles n'avaient pas de r ( login, cp...). Le r (pour remote) précise que la commande va s'exécuter sur une autre machine. Pour que ces commandes fonctionnent, il est impératif d'avoir son fichier.rhosts à jour. Ce fichier permet de s'affranchir du mot de passe normalement nécessaire lors d'une connexion sur une autre machine. Voici un exemple de fichier.rhosts existant sur le HOME de la machine_A pour le compte login_A. machine_B login_B eclipse observateur Ici, sur la machine_A peuvent se connecter sans taper de mot de passe, login_B depuis machine_B et observateur depuis eclipse.

136 136 rcp [-r] copie d'une machine sur une autre, loginX et machineX peuvent être omis. L'option -r permet de traiter une copie récursive pour recopier les répertoires. rsh machineB commande exécute commande sur la machineB rlogin machineB [-l login] établit une connexion sur la machineB sous le login indiqué Attention il est parfois nécessaire de préciser le path de la commande distante.

137 137 Aide en Ligne (man) man [section] titre affiche page à page le chapitre correspondant au titre donné dans le manuel standard d'Unix. Certains titres se trouvent dans plusieurs sections. Les commandes externes sont en section 1, les appels système en section 2 et les fonctions des bibliothèques standard en section 3. man com permet d'obtenir de la documentation sur la commande com. man -k sujet permet d'obtenir de la documentation sur le sujet, si il y en a La touche h ("help"), on obtient un aide pour l'affichage page à page.

138 138 Les scripts

139 139 Introduction Le bash est le programme qui gère l'invite de commande de la console sous Linux. C'est aussi un langage de programmation. On parle de "shell". D'autres shells existent, tels sh, ksh, zsh... Bash sera utilisé dans ce cours car c'est le shell par défaut sous la plupart des distributions Linux. Toutes les commandes que vous avez appris à taper dans la console depuis le début du cours peuvent être utilisées pour réaliser des scripts shell : grep, cut, ls, pwd... Les scripts shell ne sont donc qu'un assemblage de ces commandes !

140 140 La première ligne de tous nos scripts doit indiquer quel shell est utilisé, comme nous l'avons appris tout à l'heure. Commencez donc par écrire : Code : Bash1#!/bin/bash Cela indique que nous allons programmer en bash. Maintenant, définissons une variable. Toute variable a un nom et une valeur : Code : Bash1message='Bonjour tout le monde' Dans le cas présent : La variable a pour nom message... et pour valeur 'Bonjour tout le monde'

141 141 Ne mettez pas d'espaces autour du symbole égal "=" ! Le bash est très pointilleux sur de nombreux points, donc évitez de le vexer. Je vous signalerai systématiquement les pièges à éviter, car il y en a un certain nombre ! Si vous voulez insérer une apostrophe dans la valeur de la variable, il faut la faire précéder d'un antislash \. En effet, comme les apostrophes servent à délimiter le contenu, on est obligé d'utiliser un caractère d'échappement (comme on les appelle) pour pouvoir vraiment insérer une apostrophe : message='Bonjour c\'est moi'

142 142

143 143

144 144

145


Télécharger ppt "1 LINUX. 2 Présentation de Linux unité 1 3 Linux est un OS libre Linux est un système d’exploitation open source ie libre, c’est un programme dont on."

Présentations similaires


Annonces Google