0% ont trouvé ce document utile (0 vote)
27 vues129 pages

Admin Unix Linux 2023 Final

Transféré par

mhmdcode498
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
27 vues129 pages

Admin Unix Linux 2023 Final

Transféré par

mhmdcode498
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Administration

Unix/Linux
Enseignant : téegwendé zougmoré
Objectif cours
● Effectuer quelques tâches d'un administrateur
système
– Installation et mise à jour de logiciel
– Gestion des utilisateurs
– Gestion de disques
– Gestion des processus
– Sauvegarde et restauration
– scripts

2
Plan du cours
● Rappel notion Unix/Linux et commandes
● Quelques caractères spéciaux
● Variables d'environnement
● Installation et mise à jour de logiciel
● Gestion des utilisateurs
● Gestion disque
● Gestion des processus
● Sauvegarde et restauration
● Écriture de scripts 3
Notion UNIX/Linux
● Unix : écrit en 1969 par Ken Thompson dans les
laboratoires de Bell, en s’inspirant du système MULT ICS
MUTICS:Multiplexed Information and Computing Service devait répondre à
de nouveaux besoins:
Utilisable par plusieurs personnes à la fois
Multi-tâches
sécurisé

Multics était développé sur un gros système GE-645 de General Electric,


équipé de deux processeurs sachant traiter chacun 435 000 instructions par
● seconde, trois unités de mémoire de 1 Mo chacune et 136 Mo de stockage

● Réécrit en langage C en 1973 : innovation qui permettait


de le porter sur une grande variété de machines 4
Notion Unix/Linux

● À la fin des années 70: 2 familles d'UNIX


– UNIX BSD: version developpée par l'université de
Berkeley
– System V: version développée par AT&T
● D'autres versions dérivant de ces deux familles
– AIX de IBM dérivé de BSD
– HP/UX de Hp dérivé de System V
– Solaris de Sun Microsystem dérivé du system V
5
Notion Unix/Linux
● Quelques incompatibilités entre ces versions
● Proposition d'un standard POSIX pour y
rémédier
– POSIX: Portable Operating System Interface. Le
X pour référence au travail fait sur UNIX
– Définit ce que doit contenir un système UNIX:
commandes de base, interpréteur de
commandes, interfaces utilisateur, fonctions de
programmation, etc.

6
UNIX/Linux
● Linux: abus de langage sinon GNU/Linux
– Un ensemble de logiciels libres: GNU (GNU is Not Unix)
Projet de Richard Stallman fondateur de la FSF (Free Software
Foundation) en 1985
But: écriture d'un OS libre d'accès mais débute par les
applications
– de base nécessaire (editeur Emacs, compilateur Gcc,
etc)

– Un noyau: linux
● Oeuvre d'un Jeune étudiant finlandais à l’université de Helsinki
âgé de 21 ans en 1991
● Motivation: apprentissage du fonctionnenement du 386 via un
projet simple (écriture d'un émulateur)
● Ambition plus grande: amélioration du projet (pilote de disque,
passage au langage c, etc) 7


UNIX/Linux
● Le logiciel libre
– Différent de logiciel propriétaire (copyright): protection des
auteurs
– Copyleft:protection des utilisateurs en garantissant:
● la liberté d’utiliser un logiciel pour n'importe quel usage
● la liberté d’étudier le fonctionnement du programme et de
l’adapter à ses besoins, implique l'accès aux codes sources;
● la liberté de redistribuer des copies
● la liberté d’améliorer le programme et de diffuser les
améliorations au public à fin d’en faire bénéficier l’ensemble
de la communauté.
– Plusieurs licences: GPL, LGPL, BSD, etc
8
Rappel commandes

● shell
● Invite de commande ou prompt
● Historique: history, fc -l
● Aide : man, help, whatis
● ls, cd, mkdir, cp, mv, find,locate, more, less,
tar, cat, cut, du, df, etc
● at
● crontab 9
● Quelques caractères spéciaux

10
Caractères spéciaux
● Caractère ayant une signification autre que sa
signification littérale
● Le #: sert à mettre une ligne en commentaire
– Ex :$ # c'est un commentaire : rien ne s'affiche
– Ex :$ echo “voici un” #un commentaire: affiche
“voici un”
– # s'affiche si précédé de \ ou entre “” ou ''
● Le “: les guillemets: permettent d'utiliser des
caractères spéciaux
– Ex:$ touch “c'est mon fichier” crée un fichier
11
– Ex:$ mkdir “répertoire de tc2” crée un répertoire
Caractères spéciaux

● Le \: échappement: empêche l'interprétation d'un


caractère spécial
– Ex:$ echo aujourd\'hui affiche aujourd'hui
– Ex:$ echo “\\” affiche \
● Le .: plusieurs significations
– Répertoire courant
– Fichier caché : .monfichier
– Exécution de programme: ex:$ . script1
12
Caractères spéciaux

● Les `: substitution de commandes


– Ex: wc -l `ls -F | grep -v “/”`: compte le nombre de
lignes de chaque fichier du répertoire courant
● Le {aa,bb,cc,..}:expansion d'accolades
– Ex:$ cat {fic1,fic2,fic3} >fictout: crée un fichier avec
le contenu des 3 entre accolades
● Le $:contenu d'une variable
– Exh:nom=tc2;echo $nom affiche tc2
13
● Variables d'environnement

14
Variables d'environnement

● Entités contenant une information utilisable


par un grand nombre de programmes
● Consitutées de noms auxquels des valeurs
sont assignées.
● Assignation de valeur aux variables
– NOM_VARIABLE=valeur
● Lecture de la valeur d'une variable
– $NOM_VARIABLE
15
Variables d'environnement
● Visibles via la commande env ou printenv
● Variables liées aux emplacements
– PATH:contient la liste des répertoires à parcourir
pour retrouver une commande saisie
– HOME: contient le chemin du répertoire personnel
de l'utilisateur connecté
– PWD: contient le chemin du répertoire courant
– OLDPWD: contient le chemin du répertoire
accédé précédemment

16
Variables d'environnement
● Variables liées aux paramètres régionaux
– LANGUAGE: détermine la langue d'affichage des
messages
– LC_TIME: format de la date et de l'heure
– $ locale pour voir le reste
valeurs possibles de ces variables: fr_FR.UTF-8
(français), en_US.UTF-8 (anglais). Voir
/etc/[Link]

17
Variables d'environnement
● Autres variables
– USER: nom de l'utilisateur sous lequel on est
connecté via le shell
– USERNAME: nom de l'utilisateur sous lequel on
est connecté via le gestionnaire d'affichage
– SHELL: l'interpréteur de commandes utilisé

18
Variables d'environnement
● Spécifiques à un shell
● Pour les rendre persistantes: il faut les placer
– Dans ~/.bashrc: pour un utilisateur concerné
– Dans /etc/[Link] pour tous les utilisateurs
● Dynamiques
– Modification de PATH
● $ export PATH=$PATH:/cheminajouter
– Modification de LANGUAGE
● $ export LANGUAGE=fr_FR.UTF8
– Effacement : unset NOM_VARIABLE 19
● Installation de paquets et mise à jour

20
Définition paquet(package en anglais)
● Une archive (fichier représentant le contenu d'un
dossier, souvent compressé)
● Dans le paquet peut se trouver des
– Des binaires
– Des fichiers d'aide
– Des fichiers de configurations (procédures relatives
à l'installation sur un système d'exploitation)
– etc
● Un paquet peut dépendre d'un ou plusieurs autres
● But: rendre fonctionnel un programme (logiciel) 21
Gestionnaire de paquets
● Logiciel automatisant les processus d'installation,
de désinstallation, et de mise à jour de paquets.
● Il en existe 2 grands types
– DPKG (Debian Package Manager)
● pour les distributions debian et dérivées
● Gestion des paquets .deb
– RPM (Red Hat Package Manager)
● Crée par red hat mais utilisé par d'autres
distributions (centos, fedora,mandriva,etc)
● Gestion des paquets .rpm
22
Gestionnaire de paquets
● D'autres gestionnaires évolués se basant sur ces
deux avec comme particularité la résolution
automatique de dépendances
– Apt : Advanced Package Tool pour la gestion des
paquets .deb
●Apt-get : installer, désinstaller, supprimer
● Apt-cache: fournir des informations sur les

paquets
– Yum : Yellow dog Updater Modified pour la gestion
des paquets .rpm
● Encore d'autres: aptitude, urpmi, synaptic, etc 23
Notion de dépôts

● Serveur de données centralisé permettant aux


utilisateurs de télécharger et mettre à jour des
paquets compatibles

● Adresse du serveur inscrite dans un fichier


– /etc/apt/[Link] pour la majorité des
distributions dont le gestionnaire de paquets est
dpkg
– /etc/[Link].d/nom_depot.repo pour la majorité
des distributions dont le gestionnaire des 24

paquets est rpm


Contenu [Link]
● La syntaxe d'une ligne est :
● deb/deb-src uri distribution composant1 composant2 …
● deb/deb-src: le type de fichier (binaire ou sources)
● uri : chemin vers la racine du ou des dépots
● distribution : le nom ou classe de la distribution
● Composants: noms des dépots pour la distribution donnée
– main : pour les paquets principaux de la distribution
– contrib: pour les paquets supplémentaires supposés marchés
avec la distribution
– non-free: pour les paquets supplémentaires aussi mais qui ne
sont pas conformes à la DFSG
● Ex: deb [Link] jessie main contrib non-free
25

Contenu [Link]
● [nomdepot]: nom du dépot
● Name= nom long du dépôt, détaillé
● Baseurl= url de dépôt
● Mirrorlist:URL vers un fichier contenant une liste
de « baseurl »
● gpgcheck : 1 ou 0. Indiquer à yum de vérifier la
signature GPG des paquetages récupérés dans
ce dépôt
● enabled : si absent ou à 1, le dépôt est actif.
26
● gpgkey : chemin de la clé publique GPG.
Gestionnaire de paquets/dpkg

Action commandes
Installer ou Mettre à jour dpkg –i nom_du_pauet.deb. Si le paquet n'existe
pas il sera installé sinon il est mis à jour
Vérifier état du paquet dpkg –l nom_du_pauet
Si le résultat renvoi une ligne avec comme
caractères de début « ii » cela signifie que le
paquet a déjà été installé
désinstaller dpkg -r nom_du_paquet
Lister les paquets installés ou dpkg -l ou dpkg - -get-selections
pas
Avoir des infos générales sur dpkg -s nom_paquet ou dpkg -p nom_paquet
un paquet
Retrouver le(s) paquet(s) dpkg -S nom_du_fichier
contenant un fichier

Lien pour des paquets .deb : 27


[Link]
Gestionnaire de paquets/RPM
Action Commandes
Installer rpm -i nom_paquet.rpm
rpm -U nom_paquet.rpm
rpm -F nom_paquet.rpm
Mettre à jour Avec le paramètre U si le paquet n’était pas installé, il le sera. S’il l’était
ses anciens fichiers seront sauvegardés et remplacés par des
nouveaux.
Avec le paramètre F, il faut que le paquet soit installé sinon la mise à
jour ne s’effectuera pas
Désinstaller rpm –e nom_du_paquet // attention, c’est seulement le nom
sans l’extension .rpm
Lister des paquets rpm -qa
installés
Avoir des infos rpm -qi nom_paquet
générales(résumé) du
paquet

28
Lien pour des paquets rpm:
[Link]
Gestionnaire de paquets/APT
Action commande
installer apt-get install nom_paquet
Mise à jour de la liste des apt-get update
paquets
Mise à jour de la apt-get dist-upgrade
distribution(MAJ de tous les
paquets instalés)
Désinstaller apt-get remove nom_paquet
Vérifier la présence d'un apt-cache search nom_paquet
paquet
Avoir les informations sur un apt-cache policy nom_paquet
paquet

29
Gestionnaire de paquet/yum

Action commande
installer yum install nom_paquet
Mise à jour d'un paquet yum update nom_paquet
Mise à jour liste des paquets yum check-update
Mise à jour globale yum update
Désinstaller yum remove nom_paquet
Rechercher un paquet yum search nom_paquet
Avoir des informations sur un paquet yum info nom_paquet

30
Installation depuis les sources
● Un logiciel peut ne pas exister sous forme de paquet pour
sa distribution
● Il faudrait compiler et installer soi-même le logiciel depuis
les sources
● Les sources sont des archvies au format gz, bz2, zip
● Le contenu est entre autres
– le code source sous forme de fichiers .c, .h, .cpp,
etc., selon le langage
– parfois un fichier makefile permettant d’automatiser la
compilation du produit
– souvent un fichier .configure qui analyse l'OS pour
voir si tous les outils nécessaires sont présents 31
Installation depuis les sources/étapes
● Télécharger le code source du programme
● Décompresser l'archive
● Exécuter ./configure
./configure:fournit les dépendances manquantes et leur
version disponible
● Exécuter make pour compiler
● Exécuter make install pour installer le
programme.

32
Installation depuis les sources

● Désinstallation
● make uninstall
NB: il faut être dans le répertoire où le logiciel
a été compilé

33
Téléchargement de fichiers
● La commande wget permet cela
● Syntaxe:
– wget url
– Wget -c url: reprise d'un téléchargement stoppé
– Url: adresse de la ressource
● Parmètres d'exécution du téléchargement
– 1 Une barre de progression qui se met à jour
– 2 Le nombre d'octets téléchargés
– 3 La vitesse de téléchargement
– 4 Le temps restant estimé (eta) 34
● Ex:wget [Link]
Gestion des utilisateurs

35
Gestion des utilisateurs
● Linux est un OS multi-utilisateurs
● Un utilisateur est l'association d'un nom de
connexion (le login) à un UID et au moins à un
GID
– UID :User ID, chiffre qui identifie l'utilisateur
– GID: Group ID, chiffre qui identifie un groupe d'utilisateurs
● Trois types d'utilisateurs
– Super utilisateur (root): uid=0
signe distinctif : # La valeur UID_MIN est
– Système: UID < UID_MIN vérifiable dans le fichier
/etc/[Link]
– Réels :UID >=UID_MIN 36
signe distinctif : $
Gestion des utilisateurs
● Pour voir les informations d'un compte
– id simplement pour le compte courant
– id nom_user pour le compte de nom_user
● Pour basculer en superutilisateur (root)
– sudo su
– su //Mot de passe de l'utilisateur root exigé
● Pour exécuter une commande en tant que root
– sudo commande
– su -c “commande”

37
Gestion des utilisateurs
● useradd permet aussi l'ajout d'un utilisateur.
– Syntaxe:#useradd nom_utilisateur
– Résultat:ajout seulement d'une entrée dans le
fichier /etc/passwd
Fichier contenant des informations sur les différents utilisateurs du système. Chaque ligne
répresente un [Link] informations sont représentées par 6 champs sépareés par
deux points

1er champ: nom d'utilisateur


2ème champ:x pour indiquer la présence d'un mot de passe
3ème champ: l'uid i-e numéro d'utilisateur
4ème champ: le gid i-e le numéro du groupe de l'utilisateur
5ème champ: commentaire sur le compte de l'utilisateur
6ème champ:répertoire personnel de l'utilisateur
7ème champ: le shell à utiliser par défaut

– pour une création personnalisée, utiliser des 38

options de la commande.
Gestion des utilisateurs
Option
● Rôle
-m Pour signifier de créer le répertoire personnel de l'utilisateur
-u pour préciser un uid pour l'utilisateur
-g Pour préciser le gid ou le nom du groupe principal
-G Pour préciser des groupes secondaires de l'utilisateur
-d Pour sépcifier le chemin du répertoire personnel
-c Pour ajouter un commentaire
-s Pour préciser le shell
-p Pour spéciifer un mot de passe mais il doit être crypté sinon utiliser passwd
après la commande useradd

● Pour se connecter à utilisateur crée:$ su nom_utilisateur


● Pour se déconnecter: $exit
● userdel permet de supprimer un utilisateur
39
– Synataxe:#userdel [r] nom_utilisateur
Gestion des utilisateurs/Groupes
● groupadd:ajout d'un groupe
– Syntaxe: #groupadd nom_groupe
– Résultat: création du groupe en inscrivant une entrée
dans le fichier /etc/group

Fichier contenant les informations sur les différents groupes du système
Ces informations
– sont représentées en 4 champs séparés par deux points
1er champ: nom du groupe
2ème champ:
– x pour signifier la présence d'un mot de passe du groupe
3ème: le gid, le numéro de groupe
4ème champ:
– l'ensemble des différents utisateurs appartenant au groupe

● groupdel:suppression d'un groupe


– Syntaxe:#groupdel nom_groupe

40
Gestion des utilisateurs/Groupes
● Ajout d'utilisateurs à un groupe
– Avec usermod pour un utilisateur existant
●#usermod -g nom_groupe nom_user
● #usermod -G nom_grp1,nom_grp2,.. nom_suer

– Avec useradd lors de la création d'un utilisateur


#useradd -g nom_groupe nom_user

● #useradd -G nom_grp1,nom_grpe2,.. nom_user

g pour groupe principal et G pour groupes secondaires


● Retrait d'un utilisateur d'un groupe
– #deluser nom_user nom_groupe

41
Gestion des utilisateurs

● usermod pour modifier des informations d'un


utilisateur
– Ex:usermod -l (petit L) nvo_login ancien_login
pour changer le login d'un utilisateur
● groupmod pour modifier des informations d'un
groupe
– Ex: groupmod -n nvo_groupe ancien_groupe
pour changer le nom d'un groupe

42
Gestion des utilisateurs/expiration mot
de passe
● Peut être l'objet d'une politique de sécurité
● Mécanisme qui fait en sorte que les mots de
passe soient inutilisables au bout d'un certain
temps
● Peut être défini
– Via la commande chage pour chaque utilisateur
● chage -l nom_user pour voir les informations concernant
les dates de validité
● chage -m num_min -M num_max nom_user pour signifier:
attendre au moins num_min jours avant de changer de
mot de passe et si dans num_max jours le mot de passe43
n'est pas changé le compte sera désactivé
Gestion des utilisateurs/expiration mot
de passe
● Via la commande chage pour chaque utilisateur
● L'option -W pour définir le nombre de jours à prévenir
avant l'expiration du mot de passe
● -l'option -I (I majsucule) pour définir la durée d'inactivité
après expiration du mot de passe avant que le compte ne
se bloque

44
Gestion des utilisateurs/expiration mot
de passe
● Peut être défini
– Dans /etc/[Link] pour tous les utilisateurs à créer à
travers les paramètres ci-dessous. Il faudrait
décommenter les lignes et entrer des valeurs autres
que celles qui sont inscrites
● PASS_MAX_DAYS 99999
● PASS_MIN_DAYS 0
● PASS_WARN_AGE 7

45
Gestion des utilisateurs/ désactivation
de compte utilisateur
● Pour verouiller un compte
– passwd -l nom_user ou usermod -L
● Pour déverouiller un compte
– passwd -u nom_user ou usermod -U
● Pour supprimer le mot de passe d'un
utilisateur
– passwd -d nom_user

46
Gestion des utilisateurs/conversion de
fichiers
● fichier /etc/shadow :fichier contenant les mots de
passe cryptés des users et les périodes de validité
Champ 1 : le login.
Champ 2 : le mot de passé crypté.
Champ 3 : nombre de jours depuis le 1er janvier 1970 du dernier changement de mot de
passe.
Champ 4 : nombre de jours avant lesquels le mot de passe ne peut pas être changé (0 : il peut
être changé n’importe quand).
Champ 5 : nombre de jours après lesquels le mot de passe doit être changé.
Champ 6 : nombre de jours avant l’expiration du mot de passe durant lesquels l’utilisateur doit
être prévenu.
Champ 7 : nombre de jours après l’expiration du mot de passe après lesquels le compte est
désactivé.
Champs 8 : nombre de jours depuis le 1e r janvier 1970 à partir du moment où le compte a été
désactivé.

47
Gestion des utilisateurs/conversion de
fichiers
● Objectif : convertir les fichiers /etc/passwd et
/etc/shadow en un seul fichier /etc/passwd car
certains UNIX par défaut n'utilisent pas /etc/shadow
● Commandes
– pwunconv
– pwconv fait l'inverse: crée un fichier
/etc/shadow associé à /etc/passwd

48
Gestion des utilisateurs/ vérification des
connexions
● La commande last permet d'afficher la liste des
connexions en cours et passées sur une machine
● Les options
– -n num: les num dernières connexions
– -t YYYYMMDDHHMMSS: connexion à une date précise
– -F : affiche les dates de connexion et de déconnexion
● Last reboot: tous les derniers redémarrages
● Last nom_user: les dernières connexions de l'utilisateur
● La commande lastb permet d'afficher la liste des
connexions échouées
49
Gestion des utilisateurs/ droits sur les
fichiers/umask
● Par défaut les droits attribués automatiquement aux
fichiers crées sont 644 et 755 pour les répertoires
● Commande umask assure ce contrôle
– Sa valeur par défaut: 022 (taper umask)
– Il est pour l'ensemble des fichiers et des
répertoires
– Procédure:
● Création de fichiers avec droits 666 ou
répertoires avec droits 777
● Application du masque 022

il s'agit de faire un retrait sur 666 ou 777 50


Droits spéciaux

51
Gestion des utilisateurs/droits
spéciaux
● Droits supplémentaires aux droits classiques
(lecture, écriture, exécution)
● Fonctionnent différemment suivant qu'on les
applique sur un répertoire ou un fichier
● 3 droits
– Setuid : set-user identification
– Setgid :set-group identification
– Sticky bit
52
Gestion des utilisateurs/droits
spéciaux/setuid
● À assigner à des fichiers exécutables
● Permet à un utilisateur de lancer un
exécutable avec les droits de son propriétaire
● Affectation :
– chmod u+s nomfic
– Chmod 4xxx monfic avec xxx correspondant
aux droits normaux
● Vérification : présence de s à la place de x
dans les droits du propriétaire 53
Gestion des utilisateurs/droits
spéciaux/setgid
● Appliqué à un exécutable permet de le lancer
avec les droits du groupe propriétaire
● Appliqué à un répertoire, tout fichier ou sous-
répertoire créé dans ce répertoire parent
appartiendra au groupe de celui-ci et non au
groupe de l'utilisateur qui crée l'élément
● Affectation :
– chmod g+s nomfichier/nomrepertoire
– chmod 2xxx nomfichier/nomrepertoire
● Vérification : présence de s à la place de x dans54
les droits du groupe propriétaire
Gestion des utilisateurs/ droits
spéciaux/sticky bit
● “ bit collant” est alloué à la catégorie autres d'un
répertoire.
● interdit à tout utilisateur (sauf le root) de
supprimer un fichier dont il n'est pas le
propriétaire, quelque soient ses droits.
● Sa valeur numérique est 1000 et est représenté
symboliquement par t.
● affiché en lieu et place du droit en exécution de la
catégorie autres. 55
Gestion des utilisateurs/ droits
spéciaux/sticky bit
● Affectation
– Chmod 1xxx nom_rep: xxx étant les droits
d'écriture, lecture exécution de l'utilisateur, du
groupe propriétaire et des autres
– Chmod a+t ou chmod o+t
● Vérification
– Présnce de t à la place de x dans les droits des
autres

56
sudoers

● Un module permettant de paramétrer finement


l'utilitaire sudo
– En rappel : sudo est utilisé pour contrôler
l'exécution de tâches priviligiées
– Sudo Subistute User Do qui signifie faire en se
substituant à l'utilisateur (root par défaut) )
● Configuration (éditer les fichiers avec visudo)
– Via le fichier /etc/sudoers
– Via des fichiers crées dans le dossier
/etc/sudoers.d/ 57
sudoers
● Syntaxe
● Utilisateurs Machines = (utilisateurs2) commandes
– Utilisateurs :
● Un seul utilisateur : nom_user
● Un groupe d'utilisateurs : %nom_groupe
● Un alias : ALIAS_USERS
– Machines
● Une machine: nom_machine,@ip
● Plusieurs machines: nom_machine1,
nom_machine2, plage d'@ip
● Un alias : ALIAS_MACHINES 58
● ALL: pour signifier sans exception
sudoers
● Syntaxe
● Utilisateurs Machines = (utilisateurs2) commandes
– Utilisateurs 2 : utilisateurs substitués
● Un seul utilisateur : nom_user
● Plusieurs utilisateurs : nom_user1,nom_user2
● Un alias : ALIAS_USERS2
● ALL: pour signifier root
– commandes
● Une commande: commande
● Plusieurs commandes: commande1, commande2,
etc
● Un alias : ALIAS_COMMANDES 59

● ALL: pour signifier toutes les commandes pouvant


être exécutées par utilisateurs2
sudoers
● Exemple :
● keler ALL = (ALL) ALL
l'utilisateur keler peut tout faire sur la machine
● %tchefari ALL=(ALL) /sbin/halt, /sbin/shutdown
les utilisateurs appartenant au groupe tchefari
peuvent utiliser les commandes d'extinction de la
machine
● fila ALL=(keler) /usr/bin/touch
l'utilisateur fila pourra utiliser la commande touch
en tant que keler
60
sudoers
● Mot clé NOPASSWD: permet d'exécuter une tâche
priviligiée sans renseigner de mot de passe
– Ex: keler ALL = (ALL) NOPASSWD: ALL
l'utilisateur keler n'aura pas besoin de s'authentifier

● Quelques options possibles


– Defaults rootpw: exige le mot de passe root
– Defaults pwfeedback: affiche des astériques lors de la
saisie de mot de passe
– Defaults badpass_message= “texte” texte à afficher
en cas de mot de passe erroné
61
– Defaults passwd_tries= x nombre d'essais
d'authentification
sudoers
● Quelques options possibles
– Defaults:nomuser options : pour que les options
s'appliquent à un seul utilisateur donné
● Définition des alias
– Pour utilisateurs:
User_Alias USERS= user,user2,etc
– Pour machines:
Hosts_Alias HOSTS=pc1,@ip2,etc
– Pour utilisateurs substitués:
Runas_Alias USER2=user3,user4,etc
– Pour commandes:
Cmnd_Alias COMMANDES=cmd1,cmd2 62
Connexion à distance
● Intérêt : travailler sur un système à distance
depuis une autre machine
● Communication requise entre les deux machines
– telnet : “obsolète” et moins sécurisé
– ssh: sécurisé
● Architecture client/serveur
– Serveur: machine à accéder à distance
– Client: machine depuis laquelle on accède au
serveur
63
Connexion à distance
Mise en oeuvre
● installations
– openssh-server : paquet à installer sur le serveur
– openssh-client : paquet à installer du côté client
● Démarrage/arrêt du service/statut
– service ssh start : pour démarrer
– service ssh stop : pour stopper
– service ssh status: pour voir le statut

64
Connexion à distance
Mise en oeuvre
● Connexions
– Depuis une console linux
ssh login@ip:
● login: nom de l'utilisateur
● @ip: nom ou adresse ip du serveur
– Depuis une machine windows via putty

65
Connexion à distance
Mise en oeuvre
● Connexions
– Depuis une machine windows via putty

66
Connexion à distance
Mise en oeuvre
● Copie de fichiers
– scp fichier_source login@ip:/chemin_destination
copie du client vers le serveur
– scp login@ip:/chemin/fichier_source chemin_dest
copie du serveur vers le client

67
Partage de fichiers

● Permettre à différents utilisateurs étant sur


des machines différentes d'accéder aux
mêmes répetoires.
● Samba : outil de partage
– Gratuit
– Gestion de plusieurs systèmes d'exploitation
(windows, mac os, linux)
– Architecture client/serveur

68
Partage de fichiers

● Mise en oeuvre
● Installations
– Samba
● Configurations
– Création d'utilisateurs et des groupes
d'utilisateurs
– Liaison des utilisateurs à samba
● Commande: smbpasswd -a nom_user
– Lister les utilistateurs samba 69

● pdbedit -L
Partage de fichiers
● Mise en oeuvre
● Installations
– Samba
● Configurations
– Modification du fichier /etc/samba/[Link]
● Précaution: dupliquer le fichier [Link]
– Contenu du fichier [Link]
Un ensemble de sections et de paramètres

70
Partage de fichiers
● Mise en oeuvre
● Configurations
– Contenu du fichier [Link]
Un ensemble de sections et de paramètres
● [global] : section principale
● [homes]: section des répertoires personnels des
utilisateurs
● [partage]: répertoire partagé

Quelques paramètres
71
Partage de fichiers
● Mise en oeuvre
● Configurations
Quelques paramètres
● workgroup=WORKGROUP //nom du groupe de travail
● server string= texte //nom du serveur %h si on veut
garder le nom de la machine
● browseable: yes ou no //autorise la vue des
répertoires concernés
● comment: texte // une description du partage
● read only: yes ou no // indique si le partage est en
lecture seule ou pas
72
Partage de fichiers
● Mise en oeuvre
● Configurations
Quelques paramètres
● path=/chemin/ // chemin du partage
● Valid users = user1,user2 ou @nom_groupe // indique

les utilisateurs autorisés à accéder au partage


● Write list =user1,user2 ou @nom_groupe // indique les

utilisateurs autorisés à éditer le partage


● create mask=0xxx //droits des fichiers crées dans le

partage
● directory mask=0xxx //droits des répertoires crées

dans le partage
73
plus de paramètres: mam [Link]
Partage de fichiers
● Mise en oeuvre
● Configurations
– Accès aux partages
● Depuis une machine linux
● smbclient //@ip/partage -U nom_user
– get fichier_source_distant /chemin_local/nom_fichier :
copie d'un fichier du partage sur la machine locale
– put fichier_local /chemin_partage/nom_fic:
mettre un fichier dans le partage
● Depuis une machine windows
– Explorateur fichiers-->Network-->nom_server

74
Gestion des diques

75
Gestion des disques/Définitions
● Disque: est un dispositif physique (disque dur,
carte SD,etc) dans lequel on peut emmagasiner
plusieurs données informatiques de façon
permamente
● Partition: une zone du disque, définie contenant
des données similaires
– Primaire
– Étendue
– Logique

76
Gestion de disques/Nommenclature
● sdx pour les disques durs, clés usb
– x pour l'ordre de détection du disque dur
● a: 1er disque
● b: 2nd disque
● c:3eme disque
● Srx pour les lecteurs cd/dvd
– x pour l'ordre de détection du cd ou dvd
● 0: 1er
● 1: second

77
Gestion des diques/nommenclature
des partitions
● Nom du disque + numéro
– Nom du disque : sdx
– Numéro: en fonction de la position sur le
disque
● 1 à 4 pour les partitions primaires
● À partir de 5 pour les partitions logiques

78
Gestion des disques/création de
partitions
● Utilisation de la commande fdisk
– fdisk -l pour lister toutes les partitions
– fdisk -l /dev/sdx lister les partitions du périphérique
– fdisk /dev/sdx: mode interactif de la commande
● m : voir l'aide
● n: créer une nouvelle partition
● d: supprimer une partion
● w: appliquer les actions et quitter

79
Gestion des disques/Formater
● Action consistant à apprêter une partition à
recevoir de nouveaux fichiers
– Effacer un ancien système de fichiers (nécessaire si
un ancien système de fichiers existait)
– En mettre un nouveau
● Système de fichiers:
– Permet l'organisation des données dans une
partition de sorte à les retrouver facilement
– Caractérisitques:
● La taille maximale d'un fichier
● La taille maximale d'une partition

● La gestion des droits d'accès aux fichiers


80

● La journalisation
Gestion des disques/Formater
● Exemples de systèmes de fichiers

Nom du FS Taille max Taille max journalisé Gestion droits d'accès


fichier partition
ext2 2 TiB 4TiB Non Oui
ext3 2 TiB 4TiB Oui Oui
ext4 16 TiB 1 EiB Oui Oui

81
Gestion des disques/Formater

● Avec mkfs: mkfs -t type nom_périphérique

● Avec [Link]: [Link] nom_périphérique


avec type étant le type de fichier souhaité
– Option -b pour spécifier la taille du bloc:
1024,2048,4096

82
Gestion des disques/Monter une
partition
● Utilisation de la commande mount
– mount [- t type] [-o options] /dev/periph
emplacement_voulu
NB: emplacement_voulu doit exister
– quelques options possibles
option signification
defaults les options rw, dev, exec, auto,nouser,etc
exec/noexec Permet l’exécution/ou non des fichiers binaires sur le support.

auto/noauto Le système de fichiers est automatiquement monté/ne peut être


monté que explicitement
user/nouser N’importe quel utilisateur peut monter le système de fichiers (implique
noexec, nosuid, et nodev)
ro/rw Montage en lecture seule ou lecture et écriture.
83
etc ----
Gestion des disques/Monter/démonter
● Montage automatique des partitions
● Pour effectuer un montage automatique: placer les
infos de la partition dans /etc/fstab
● Contenu du fichier /etc/fstab
champ description

périphérique Chemin de périphérique, ou label ou UUID
Point de montage Répertoire d'accès
typefs Le type de fichier (ext3, ext4,etc)
Options Mentionnées plus haut
dump drapeau de dump pour les outils de dump ou de sauvegarde
0 pour ignorer 1 pour oui
fsck drapeau de vérification du système de fichiers.0=ignorer. 1=en premier,
2 en second, etc.
84
Gestion des disques/quotas

● Poser des limites à l'utilisation de l'espace disque


● Deux types
– Inodes : limite le nombre de fichiers
– Blocs : limite la taille disque
● Concerne un système de fichier
● Deux limites
– Dure (hard) : quantité maximale stricte à ne pas
dépasser
– Douce (soft): quantité maximale non stricte qu'on85
peut dépasser
Gestion des disques/quotas

● Deux outils à installer : quota et quotatool


● Montage de la partition avec l'option
– usrquota pour la gestion des quotas d'utilisateurs
– grpquota pour la gestion des quotas de groupes
d'utilisateurs
● Montage manuel ou via /etc/fstab

86
Gestion des disques/quotas
● Commandes utiles
– quotacheck pour l'initilialisation des quotas
résultat: création de fichiers [Link] et
[Link]
– quotaon pour l'activation des quotas
résultat:information sur l'activation des quotas
– quotaoff pour désactiver les quotas
– repquota pour la vérification des quotas
résultat: statut des quotas définies
– quotatool pour la définition des quotas
87
RAID
● Redundant Arrays of Inexpensive au début:
regroupement redondant de disques peu onéreux

● Ensuite Redundant Array of Independant Disks:


regroupement redondant de disques
indépendants

● Regroupement de plusieurs disques pour obtenir


les mêmes performances qu'avec un SLED
(Single Large Expensive Disk) 88
RAID/concepts
● Redondance de données
– Utiliser des disques pour répliquer les données
– Tolérances aux pannes
● Répartition de données
– répartir les données sur plusieurs disques
– Vitesse d'écriture et de lecture

89
RAID/types

● Logiciel : le RAID est géré nativement par


l'OS. Il y a une couche dediée à cet effet.
Couche intercalée entre le pilote et le système
de fichiers.
● Matériel : un contrôleur (cpu,ram, batterie)
dedié aux opérations. Il peut être interne à
l'unité centrale (carte d'extension) ou se
trouvé sur une baie de stockage.
– Ex:Adaptec RAID 5445Z
90
RAID/types
Types Avantages Limites
Logiciel ● Moins onéreuse ● Monopolisation des ressources
● Compatibilité entre os (cpu et surtout le bus système).
identiques Ressentie avec RAID redondant
● Souplesse ● Impossible de faire le RAID sur le
d'administration disque système: il faut des disques
dédiés.
● Bugs pouvant occasionner par
exemple une non détection des
disques défectueux ou ne
permettant pas un remplacement à
chaud
Matériel ● Détection de défauts, ● Spécialisés pour un seul type de
remplacement à chaud et disque (pbm d'incompatibilité)
reconstruction des ● Susceptible lui (contrôleur) même
disques défaillants de de tomber en panne
manière transparente ● Coût élevé
● Utilisation moindre des
ressources systèmes 91
RAID/niveaux

● Standard:0,1,5
● Peu courants:2,3,4,6,n,dp
● Combinés:01,10,05,15,etc
– 1er chiffre:regroupement des grappes
– 2eme chiffre: raid global
● Spéciaux:1E,5EE,etc

92
RAID0:volume agrégé par bandes

● Les données sont réparties sur les disques


● Capacité: c*n
– c :capacité du plus petit disque
– n : nombre de disques
● Fiabilité: perte d'un disque entraine la perte
des données
● Gain: augmentation taille et vitesse
d'écriture/lecture
93
RAID0:volume agrégé par bandes

94
RAID 1:disques en mirroir

● Utilisation de n(au moins 2) disques


● Capacité: c (c étant la plus petite capacité disque)
● Fiabilité:perte n-1 disques possible.
● Gain: lecture simultanée de n fichiers +
reconstruction possible après changement de
disques défaillants c

95
RAID 1:disques en mirroir

96
Raid 5: volume agrégé par bandes à
parité répartie
● Utilisation de n (au moins 3) disques pour la
répartition avec une parité circulaire sur
l'ensemble des disques
● Capacité:(n-1)*c avec c étant la plus petite
capacité disque et n le nombre de disques
● Fiabilité:perte d'un seul disque. Temps de
reconstruction élevé si le nombre de disques
augmente
● Gain: augementation taille et vitesse
d'écriture/lecture + possibilité de recouvrement 97
Raid 5: volume agrégé par bandes à
parité répartie

98
Raid 10: volume agrégé par bande
fiable
● Utilisation d'au moins 4 disques
– Deux grappes nécessaires
– Minimum deux disques par grappes
● Capacité Ct=GxC
– G: nombre de grappes
– C: capacité disque
● Fiabilité : perte de N disques
● Gain:vitesse d'une grappe + copie de
sauvegarde 99
Raid 10: volume agrégé par bande
fiable

100
RAID/Mise en oeuvre

● mdadm: paquet dedié à la gestion du RAID


– RAID0, RAID1,RAID4,RAID5,RAID6,RAID10
● Installation du paquet
– Apt-get install mdadm
– Ou via les sources ou le package .deb ou .rpm
● Configuration
● Construction de volume
– #mdadm -C /dev/mdx -lniveau -nk /dev/sdyz
/dev/sdyz 101
RAID/Mise en oeuvre

– -C /dev/mdx : création du volume nommé mdx, x


étant un nombre entier positif
– -lniveau: spécification du niveau. Niveau 0,1,etc
– -nk: indication du nombre (k entier) de disques
– /dev/sdyz /dev/sdyz : les différentes partitions
concernées avec y compris [a....z] et z un
nombre entier

102
RAID/Mise en oeuvre

● Configuration
● démarrage de volume
– #mdadm -A /dev/mdx /dev/sdyz /dev/sdyz
● Ajout de disque
– #mdadm /dev/mdx - - add /dev/sdyz
● Retrait de disque
– #mdadm /dev/mdx --fail /dev/sdyz
– #mdadm /dev/mdx --remove /dev/sdyz
103
RAID/Mise en oeuvre
● Voir les détails
– #mdadm - -detail /dev/mdx

104
● Gestion des processus

105
Processus/description

● Programme en cours d'exécution


● Quelques caractéristiques
– PID:Process ID, identifiant du processus
– PPID: Parent Process ID, identifiant du
processus parent.
– UID:UID de l'utilisateur ayant lancé le
programme
– Durée de traitement: le temps écoulé depuis le
réveil du processus
– Priorité:pour déterminer l'ordre de traitement 106
Processus/Lister
● Lister de façon statique:ps
– -u nom_utilisateur: lister les
processus lancés par l'utilisateur
nom_utilisateur
– -t nom_terminal: lister les
processus lancés depuis un
terminal précis
– -e : lister tous les processus lancés
par tous les utilisateurs sur tous
les terminaux 107
Processus/Lister
● -f : option à combiner aux autres pour des
détails
– – PPID: identifiant du processus parent
– -STIME: heure de lancement du processus
– -TIME: durée de traitement du processus
– -C:facteur de priorité. Plus il est grand,
prioritaire est le processus
– -H: option combinée pour affichage sous forme
d'arbre

108
Processus/Lister
● De façon dynamique:top
– Taper u pour filter selon un utilisateur
– Taper k pour supprimer un processus
– Taper f pour ajouter ou supprimer des
colonnes dans la liste
– Taper q pour quitter
– Taper h pour l'aide

109
Processus/Arrêt

● Kill PID: arrêter le processus de PID donné


● Kill -9 PID: forcer l'arrêt du processus de PID
donné
● Killall nom_processus: arrêter toues les
instances du processus via son nom
● ctrl+c: fonctionne si le processus tourne en
avant-plan

110
Processus/stopper/relancer/mettre en
tâche de fond
● stopper
● ctrl+z :stopper un processus et fournir des
informations
– [num]: un numéro à utiliser pour le relancer
– PID
● Relancer
● fg num :pour relancer en avant -plan
● bg num: pour relancer en arrière-plan
● Mettre en tâche de fond
111
● Commande &
Sauvegarde et restauration

112
Sauvegarde/définition

● Opération de duplication des données


● deux types principaux
– Complète:sauvegarde de tous les fichiers
sans tenir compte d'une sauvegarde
antérieure
– Incrémentale:on ne sauvegarde que ce qui a
changé depuis la dernière sauvegarde.

113
Sauvegarde/Quelques suggestions

● Centraliser les sauvegardes


● Nommer les disques de sauvegardes
● Choisir un bon intervalle de temps
● Choisir les données à sauvegarder
● Faire tenir la sauvegarde journalière sur un
seul media

114
Sauvegarde/suggestions
● Garder certains médias de sauvegardes en
dehors des sites de sauvegardes
● Protéger ses sauvegardes
● Limiter les acitivités durant la sauvegarde
● Vérifier les disques de sauvegardes
● Recycler les médias de sauvegardes

115
Restauration/définition

● Rétablir les données sauvegardées


● Concerne dans l'odre
– La dernière sauvegarde complète
– Les sauvegardes incrémentales

116
Sauvegarde/supports
● Type optique:cd/dvd,blue ray
– durée de vie :théorique 100 ans pratique 5
●Dépend de la conservation (5°C à 20°C)
– Faible capcité mais tend à croître avec le blue ray (25
à 100GB)
●Possible grâce à l'épaisseur (405nm) de la
longueur d'onde produite par le laser
– Vitesse:de l'odre de 7Mo/s à 30Mo/s
● Type bande magnétique: AIT, LTO,DDS/DAT
– Bonne durée de vie (au moins 3 ans jusqu'à 30 ans)
– Sensible aux ondes magnétiques
– capacité :20Go à l'odre du To 117

– Vitesse : environ 20Mo/s à 300Mo/s


Sauvegarde/supports
● Type disque dur/amovible:
– HDD classique
● Capacité: l'odre du Go au To
● Vitesse:12 à 260Mo/s
● Durée de vie: 2 à 5 ans
– SSD (Solid State Drive)
● Capacité:de l'odre du Go au To
● Vitesse:200 à 1500Mo/s
● Durée de vie: en nombre de cycles d'écritures:
environ 100 000 cycles

118
Sauvegarde/supports
● Cloud
– Durée de vie: existence du service de sauvegarde
– Capacité : l'ordre du Go au To
– Vitesse: fonction de la connection internet
(1,5Mo/s à environ 100Mo/s)

119
Sauvegarde/outils

● En ligne de commande
– tar
– rsync
– dump
– dd
● Via des logiciels
– Une panoplie : bacula, sbackup, amanda

120
Sauvegarde/tar

● tar cvf [Link] -g fichier_suivi donnée


– [Link] à la première exécution de tar
correspond à la sauvegarde complète
– [Link] à la seconde exécution
correspondra à une sauvegarde
incrémentale
– fichier_suivi est crée ou mis à jour. Il permet
de déterminer quelle donnée doit être
sauvegardée

121
Restauration/tar

● Restauration en chaine: de la complète


jusqu'à l'incrémentale récente
● tar xvf [Link]
– Utiliser l'option -C pour indiquer un
emplacement précis

122
rsync:synchronisation de fichiers pour
une sauvegarde
● Programme simple permettant d'effectuer une
synchronisation entre 2 répertoires situés sur
le même pc ou sur des pc différents reliés
● Sauvegarde sur le même pc
● $ rsync -arv rep_to_save rep_sauvegarde
– -a : conserve toutes les informations sur les
fichiers, comme les droits, la date de
modification, etc.

123
rsync:synchronisation de fichiers pour
une sauvegarde
– -r : sauvegarde aussi tous les sous-dossiers
qui se trouvent dans le dossier à
sauvegarder.
– -v : mode verbeux, affiche des informations
détaillées sur la copie en cours.
● $rsync -arv - -delete to_save rep_sauvegarde
– - -delete: prend en compte les fichiers
supprimés
● $rsync -arv - -delete --backup --backup-
dir=/chemin_repmemo to_save 124

rep_sauvegarde
rsync:synchronisation de fichiers pour
une sauvegarde
● $rsync -arv - -delete --backup --backup-
dir=/chemin_repmeme to_save
rep_sauvegarde
– --backup - -backup-dir=/chemin_repmemo :
sauvegarde des fichiers supprimés dans
/chemin_repmemo
● Sauvegarde sur autre pc
● Commandes similaires que sur le même pc
● Mention du pc distant
125
rsync:synchronisation de fichiers pour
une sauvegarde
● Sauvegarde sur autre pc
● Commandes similaires que sur le même pc
● Mention du pc distant
● $rsync [options] to_save login@ip
:chemin/rep_sauvegarde
– to_save: répertoire local à sauvegarder
– rep_sauvegarde: répertoire distant

126
● scripts

127
script

● Confère cours d'utilisation unix/linux

128
Bibliographie

● L'aide man de la distribution debian 7


● Evi Nemeth, Garth Snyder, Trent R. Hein – UNIX
th
and Linux System Administration Handbook, 4
Edition – 2010
● LINUX - Préparation à la certification LPIC-1
● (examens LPI 101 et LPI 102) (Ed 2)
{9782746051096}
● Personne ressource: Lawakilia
DRABO,administrateur système at IBM Ouaga 129

Vous aimerez peut-être aussi