Vous êtes sur la page 1sur 116

Administration de Systèmes d'Information

Luiz Angelo Stefenel

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 1


Déroulement des Cours
10h de Cours Linux (lundi 9h-12h, mardi 9h-12h et jeudi 8h-12h)
10h de TPs Linux (6h jeudi/vendredi et plus 4h le vendredi 23/10)
10h Cours + 10h TP Windows (plus tard)

Évaluation
40% examen CISCO Network Fundamentals (vendredi 16/10)
30% rapports de TP partie Linux
30% examen partie Windows

Présence obligatoire (émargement)

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 2


Cours 1
Révision rapide d'un programme d'études type LPI
Introduction à UNIX
   - l'architecture des systèmes d'exploitation UNIX
Le système d'exploitation Linux
Utilisateurs, Groupes et Permissions
Installation de Linux
Les distributions
Partitionnement d'un disque dur
Les systèmes de fchier Linux
   - ext2 / ext3
Le shell UNIX (invité de commandes)
Les commandes de base UNIX

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 3


Cours 1 (cont)
Commandes Shell
Gestion du système de fchiers
Gestion et visualisation de fchiers, aide
Gestion des processus
Administration du réseau
Administration du système
Gestion des utilisateurs
Impression et programmation
Préparation de documents
Autres
Initialisation du système et les Services
   - Séquence de démarrage, Runlevels & processus Daemon
Administration des utilisateurs
   - Création, suspension et suppression des comptes
   - Groupes

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 4


Cours 1
Confguration du réseau
Planifcateur de tâches
   - cron daemons
Gestion des quotas de disque
Gestion de packages
Surveillance du Système
   - Analyse du système de fchiers
   - Logs du système

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 5


Cours 2
Serveurs
DHCP
NIS
NFS
Samba
DNS
Apache
   - Confguration
   - Serveurs Virtuels
   - Restriction d'accès
- PHP/MySQL
Serveur Mail
   - Serveur SMTP
- Serveur de listes (majordomo)
Subversion

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 6


Cours 3
Firewall, NAT
Linux comme routeur
VPN
Serveur Proxy - Squid
Serveur FTP
Serveur SSH
Serveur d'annuaire LDAP
Surveillance d'un Réseau
NAGIOS
CACTI
GANGLIA

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 7


TP 1
2h (jeudi 8/10)
Installation d'une distribution linux
Création d'utilisateurs

Rapport : non

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 8


TP 2
4h (vendredi 9/10)
Installation d'un serveur Apache
Confguration de serveurs virtuels
Installation d'un serveur mail
Installation d'un serveur SVN
Accès aux données SVN par le web avec le module Apache DAV_SVN

Et si nous avons le temps


Installation d'un serveur LDAP
+ authentifcation LDAP sous Apache

Rapport : pas pour l'instant (garder quand même des infos sur SVN)

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 9


TP 3
4 heures (vendredi 23/10)
Installation de Trac (avec SVN)
Installation et utilisation de NAGIOS
Installation et utilisation de CACTI (devoir maison, si le temps manque)
Installation et utilisation de GANGLIA (devoir maison, si le temps manque)
Rapport :
4 rapports en format article court (genre GNU Linux Magazine)
4 ou 5 pages max chacun
Travail en binômes
Date limite d'envoi : vendredi 11 décembre 2009
Format : source (Word, OpenOfce) et pdf
Dépôt avec SVN à l'adresse http://netacad.univ-reims.fr/svnm2/m2
Les mêmes identifants pour se connecter sur netacad.univ-reims.fr

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 10


Références

Livres sur Unix à la bibliothèque de l'université

The Linux Documentation Project (LDP), http://www.tldp.org/


Mirroir: http://www.iitk.ac.in/LDP

Cours de Préparation LPI de IBM


http://www.ibm.com/developerworks/linux/lpi/101.html?
S_TACT=105AGX03&S_CMP=LPLINUX

Les transparents seront disponibles à l'adresse


http://cosy.univ-reims.fr/~lstefenel

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 11


Les systèmes d'exploitation UNIX/LINUX

Introduction à Unix
Histoire de l'UNIX
C'est quoi LINUX
Distributions LINUX
Structure d'un Sytème d'exploitation UNIX
Le système de fchiers Unix
Répertoires, Fichiers et Inodes
Utilisateurs, Groupes et Permissions

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 12


UNIX

Unix est un système d'exploitation multi-utilisateur, multi-tâche


Plusieurs utilisateurs peuvent être connectés simultanément,
exécutant diférents programmes
C'est le rôle du kernel (noyau) de garder la séparation entre
chaque processus et utilisateur, de manière à gérer l'accès au
matériel (dont la cpu, la mémoire, les disques et les autres
dispositifs d'entrée/sortie)

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 13


Histoire de l'UNIX

La première version a été créée par le Bell Labs en 1969.


Quelques ingénieurs de ce projet, dont Ken Thompson, Dennis
Ritchie, Rudd Canaday, and Doug McIlroy ont implémenté la
première version du système de fchiers dans une machine PDP-
7, avec quelques outils. Le nom UNIX a été donné par Brian
Kernighan.
Le 1er janvier 1970 à 00:00:00 heures est la date « zéro » pour
UNIX.
En 1973 Unix est ré-écrit presque entièrement en C,un nouveau
langage développé par Dennis Ritchie.
L'utilisation d'un langage de haut niveau a rendu plus facile
l'installation du système sur d'autres machines.

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 14


Histoire de l'UNIX

En 1977 il y avait autour de 500 machines UNIX en tout le


monde.
En 1980 est sorti BSD 4.1 (Berkeley Software Development)
En 1983, SunOS, BSD 4.2, System V
En 1988 AT&T et Sun Microsystems s'allient pour développer
System V Release 4 (SVR4). Celui-ci donnera naissance à
UnixWare et Solaris 2.
En 1991 (seulement) Linux est crée.

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 15


C'est quoi LINUX

Linux est un système d'exploitation ouvert de type Unix


originalement crée par Linus Torvalds avec l'aide d'autres
développeurs.
Il a commencé en 1991 comme un projet d'études de Linus
Torvalds, un étudiant d'informatique fnlandais.
Le noyau (Kernel) version 1.0 a été lancé en 1994 (la dernière
version stable est la 2.6.31-1 (le 24/09/2009)
Développé sous la licence publique GPL (GNU General Public
Licence), le code source Linux est ouvert et disponible à tous

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 16


Quelques Distributions LINUX
Mandriva : http://www.mandriva.com/
RedHat: http://www.redhat.com/
Fedora: http://fedora.redhat.com/
SuSE/Novell: http://www.suse.com/
Debian: http://www.debian.org/
Ubuntu: http://www.ubuntu.com/
Gentoo: http://www.gentoo.org/

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 17


La Structure de l'UNIX

Programs

Kernel

Hardware

System Calls

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 18


Composants principaux d'un système
d'exploitation

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 19


Le noyau

Ensemble logiciel assurant l’interface entre le matériel et les


processus (systèmes ou utilisateurs)
Chargé au démarrage du système, reste en mémoire
Une fois initialisé, il détecte les périphériques et lance le premier
processus (init)
Il peut être monolithique ou à modules dynamiques
Entièrement confgurable par l’administrateur

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 20


Le noyau

Abstraction du matériel
Couche logique = API unifée
Pilotes pour la gestion des périphériques
Gestion des processus
Naissance, suspension, suppression
Gestion des communications interprocessus
Signaux, tubes, ...
Partage du temps machine entre les processus
Gestion de la mémoire
Réservation, libération, échange (swap).

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 21


Modules du noyau

Module = extension du noyau à charger dynamiquement


placé dans /lib/modules/version_de_noyau
Pilotes matériels sont les modules les plus courants
cartes réseau, cartes graphiques, disques, USB, etc.
Certains services aussi
services de la pile TCP/IP, cryptographie
Alternative efcace à un noyau « monolithique »
uniquement les modules utilisés sont chargés en mémoire
adaptation face à des nouveaux dispositifs

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 22


Modules du noyau
Commandes les plus courantes :
lsmod : liste les modules
insmod : charge un module (sans vérifer la dépendance)
rmmod : retire un module
depmod : établit les dépendances inter-modules
modprobe : charge ou retire modules et dépendances
Fichiers :
/etc/modules.conf : confguration de modprobe
/lib/modules/???/modules.dep : liste des dépendances

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 23


Le Système de Fichiers UNIX

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 24


Le Système de Fichiers

Le système de fchiers UNIX ressemble un arbre inversé


Le répertoire « racine » est indiqué par /
Tous les répertoires sous-jacents sont liés au même arbre (même
les autres unités de disque)
Chaque noeud est soit un fchier soit un répertoire (ce dernier
peut contenir d'autres fchiers ou répertoires)
Un fchier ou répertoire peut être indiqué par son chemin absolu
ou par un chemin relatif (selon une position de référence)
Le chemin absolu commence par la racine, /, suivie des
diférentes branches (séparées aussi par des /) :
/home/condron/source/xntp

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 25


Le Système de Fichiers

Un chemin rélatif indique un chemin par rapport à une


localisation dans l'arbre, normalement le répertoire courant.
Deux répertoires spéciaux peuvent être utilisées pour aider :
. le répertoire courant
.. le répertoire père (supérieur)
Alors, si vous êtres sur /home/frank et souhaite indiquer le
chemin relatif vers /home/condron/source/xntp :
../condron/source/xntp

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 26


Structure Standard des Répertoires UNIX/Linux

/ la racine de tous les répertoires


/bin outils et programmes essentiels (les « binaries »).
/dev fchiers qui représentent les diférents dispositifs du
système. Par exeploe, le fchier `/dev/cdrom' représente l'unité
de CD−ROM.
/etc fchiers de confguration, scripts de lancement, etc.
/home le répertoire « maison » pour tous les comptes utilisateur
/lib bibliothèques essentielles utilisées par les outils dans `/bin'.
/proc fchiers avec des informations sur les processus courants
du système
/root le répertoire home du super-utilisateur (administrateur),
appelé root.

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 27


Structure Standard des Répertoires UNIX/Linux

/sbin outils essentiels pour l'administrateur du système (system


binaries)
/tmp fchiers temporaires
/usr répertoires avec des outils et applications des utilisateurs
/var Répertoire avec des données volatiles (logs, fles
d'impression, etc).

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 28


Répertoires, Fichiers et Inodes

Chaque répertoire ou fchier est indiqué dans son répertoire père


Seul le répertoire racine est sont propre père
Un répertoire est un fchier qui contient un tableau indiquant les
fchiers qu'il contient, leurs noms et leurs numéros inode
L'information sur tous les fchiers et répertoires est stockée dans
un INODE TABLE
Un Inode (Index Nodes) est un registre dans un tableau qui
contient des informations sur un fchier (metadata) telles que les
permissions, UID, GID, taille, timestamps, pointeurs vers les
blocks de données sur le disque, etc.

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 29


Utilisateurs, Groupes et Permissions d'Accès

UNIX/LINUX implemente le concept d'utilisateur et de groupes


associés aux fchiers
Le système détermine si un utilisateur ou groupe ont des droits
d'accès à un fchier ou répertoire selon les permissions attribués
à ces fchiers
Le super-utilisateur garde néanmoins le droit d'accès sur la
totalité des fchiers et répertoires.

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 30


Permissions d'Accès
Chaque fchier, répertoire ou application contient trois types de
permission :
r — Indique le droit de lecture sur le fchier (Read).
w — Indique le droit d'écriture sur le fchier (Write).
x — Indique le droit d'exécution sur le fchier (eXecute).
Chacune de ces trois permissions sont attribuées à trois catégories
diférentes d'utilisateurs :
User – Le propriétaire du fchier ou de l'application.
Group – Les membres du groupe qui détient le fchier ou l'application.
On peut aussi dire « les autres membres du groupe du propriétaire »
Others – Tous les autres utilisateurs ayant accès au système.

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 31


Permissions d'Accès
La liste des permissions peut être facilement accédée à partir de la
commande de listage longue de fchiers ls -l.
Par exemple, si l'utilisateur juan crée un exécutable nommé test ,la sortie
de la commande ls -l test serait similaire à :

-rwxrwxr-x 1 juan student 0 Sep 26 12:25 test

Cette ligne indique que le fchier est disponible pour lecture, écriture et
exécution par le propriétaire (juan) aussi que les membres du groupe
student.
Le fchier est aussi lisible et exécutable par tous les autres utilisateurs,
qui n'ont pas le droit d'écrire dessus.

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 32


Permissions d'Accès

-rwxrwxr-x 1 juan student 0 Sep 26 12:25 test

Les permissions pour ce fchier sont indiquées au début de la


ligne, initiant par rwx.
Le premier signe indique un fchier (-), un répertoire (d) ou autres
Les trois signes suivants indiquent les permission du propriétaire.
Les trois signes suivants indiquent les permissions du groupe.
Les trois derniers signes indiquent les permissions des autres.

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 33


Modifcation des droit d'accès

Le propriétaire d'un fchier ou répertoire peut être changé avec


chown <proprietaire> <fchier>
Le groupe propriétaire d'un fchier peut être modifé avec
chgrp <groupe> <fchier>
Les permissions d'un fchier peuvent être modifées avec la
commande
chmod -R ### <fchier ou répertoire>
L'option -R permet de changer récursivement la permission de tous
les fchiers sous un répertoire.

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 34


Access Permission of File/Directory
Les permissions ont des valeurs r=4 w=2 et x=1
0 = Rien
1 = Exécution
2 = Écriture
3 = Exécution & Écriture  (2 + 1)
4 = Lecture
5 = Exécution & Lecture (4 + 1)
6 = Lecture & Écriture (4 + 2)
7 = Exécution & Lecture & Écriture (4 + 2 + 1)

Ex : chmod 751 fchier

On peut aussi attribuer des permissions


chmod u=rwx,g=rx,o=x fchier

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 35


Lister le Contenu d'un Répertoire

La commande ls est utilisée pour lister le contenu d'un


répertoire.
L'utilisation de paramètres permet d'afcher des informations
supplémentaires :
$ ls –l listage longue (avec permission, propriétaire, groupe)
$ ls –a listage des tous les fchiers (même occultes)
$ ls –t listage des dates de modifcation des fchiers
$ ls –u listage des dates de dernière accès
$ ls –R listage récursive (entre dans les répertoires)
$ ls –S listage ordonné par taille des fchiers
Les paramètres peuvent être combinés
Ex : ls -lR, ls -la

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 36


Se Déplacer dans les Répertoires

cd try_it
« entre » dans le répertoire try_it (qui devient le répertoire courant)
pwd
afche le chemin absolu du répertoire courant (/home/smith/try_it)
cd ..
retourne au répertoire supérieur
cd /home
se déplacer vers le repértoire /home (en utilisant le chemin absolu)
cd ~
revient à votre répertoire home (~ est un alias pour /home/votrenom)
cd ~/source
entre dans le répertoire source dans votre espace home

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 37


Opérations sur le Répertoire
La commande mkdir my_dir
Créée un nouveau répertoire my_dir (le chemin donné est relatif) comme
sous-répertoire du répertoire courant.
La commande rmdir your_dir
Supprime le répertoire your_dir (uniquement si celui est entièrement vide).

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 38


Opérations sur les fchiers : Copy / Move
La commande
cp fle_1 fle_2
Copie le contenu de fle_1 vers fle_2. Les deux fchiers doivent être dans le
même répertoire, sinon l'utilisation de chemins est nécessaire. Si fle_2
n'existe pas il sera crée; si fle_2 existe déjà, il sera remplacé
La commande
mv fle_1 fle_2
Transmet le contenu de fle_1 vers fle_2
Le fchier fle_1 est supprimé du disque.
Utilisé pour renommer un fchier
La commande
mv fle_1 /home/chemin
Déplace le fchier fle_1 ver le répertoire /home/chemin

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 39


Suppression d'un fchier
La commande
rm fle_a
Supprime le fchier fle_a du système
Si vous utilisez des jokers (*)
rm h*c
Tous les fchiers commençant par h et fnissant par c seront supprimés du
répertoire courant
Si vous utilisez uniquement le joker
rm *
tous les fchiers du répertoire courant seront supprimés

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 40


Installation de Linux

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 41


Le choix d'une distribution LINUX
Après avoir choisi votre distribution, vous avez une multitude de
méthodes pour l'installation
CD/DVD – téléchargé et gravé ou acheté ou reçu gratuitement
FTP – requiert un disque de démarrage
Serveur PXE (boot par le réseau)

Vous devez réserver une (plusieurs) partitions de disque pour votre
installation
Si vous voulez faire chez vous mais vous n'avez jamais essayé Linux, il y
a aussi la possibilité d'installer Linux dans une machine virtuelle (genre
VMWare)
Ceci évite de bousiller votre disque si vous n'êtes pas trop expérimenté

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 42


C'est quoi une Partition ?
Partitionner un disque signife le diviser en plusieurs unités logiques.
Une partition est une division contigüe du disque qui est considérée
comme un disque indépendant.
Les disques durs contiennent une table de partition qui regroupe les
informations relatives aux partitions existantes.

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 43


Pourquoi faire plusieurs partitions dans un
disque ?
Possibilité d'installer diférents systèmes d'exploitation (ou versions)
dans un même disque
L'utilisation de plusieurs partitions réduit aussi le risque d'une défaillance
du système si la partition devient pleine.
Un utilisateur ou processus hors de contrôle peut consommer tout le space, ce
qui empêche le système de fonctionner correctement. En faisant une
séparation du space, on garantit une marge pour les processus du système.
Encapsulation des données. Une corruption du système de fchiers reste
local à une partition, ce qui peut sauvegarder une partie de vos données
en cas d'accident.
Lors de l'installation de Linux, vous avez la possibilité de partitionner le
disque
Soit avec un outil graphique, soit avec l'outil fdisk

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 44


L'utilitaire FDISK
root@ttyp0[knoppix]# fdisk -l /dev/hda

Disk /dev/hda: 120.0 GB, 120034123776 bytes


255 heads, 63 sectors/track, 14593 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System


/dev/hda1 * 1 2611 20972826 7 HPFS/NTFS
/dev/hda2 2612 2624 104422+ 83 Linux
/dev/hda3 2625 14593 96140992+ 5 Extended
/dev/hda5 2625 2689 522081 82 Linux swap
/dev/hda6 2690 5180 20008926 83 Linux
/dev/hda7 5181 6426 10008463+ 83 Linux
/dev/hda8 6427 6676 2008093+ b W95 FAT32
©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 45
L'utilitaire GParted

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 46


Types de Filesystem
ext2 — Ancien système de fchiers de Linux.
ext3 — Basé sur le format ext2, ce système a l'avantage de faire la
journalisation des modifcations, ce qui permet de récupérer plus
rapidement les données lors d'une défaillance
swap — partition utilisée pour la pagination de mémoire.
vfat — Le système de fchiers des anciens windows (jusqu'à Windows98)
et certaines clés usb actuelles.
NTFS – Système utilisé par les Windows plus récents, requiert parfois
l'installation de modules pour permettre l'écriture
ReiserFS – un flesystem en arbre-B qui est spécialement performant
pour les systèmes avec un grand nombre de petits fchiers.
XFS – système de fchiers optimisé pour la performance. XFS utilise
intensivement le cache en RAM,ce qui peut causer des pertes en cas de
panne de courant.

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 47


RAID logiciel et LVM
Software RAID (Redundant Array of Independent Disk)
RAID 0 (Striping)
RAID 1 (Mirroring)
RAID 5 (Striping with Parity)
LVM (Logical Volume Manager)
Permet de combiner plusieurs partitions/disques en une seule unité
logique. Par exemple, cela permet d'augment la taille de la
partition /home par l'adjonction d'autres partitions sur un deuxième
disque au lieu de recréer les partitions avec de tailles plus grandes

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 48


Boot Loader
Afn de charger un Système d'Exploitation, la BIOS lit des instructions
dans le premier secteur du disque.
Dans ce premier secteur réside le master boot record (MBR), et le boot
loader normalement est installé dans ce secteur.
Selon le boot loader, des fchiers supplémentaires sont chargés à partir
d'une partition dans le disque dur.
Le boot loader peut vous donner la possibilité de choisir entre les
systèmes d'exploitation installés dans le disque.
Une fois que le boot loader démarre le système, celui-là reste inutilisé
jusqu'au prochain boot.
Exemples de boot loader
LILO – le plus ancien, capacités limitées (menu texte seulement, etc)
GRUB – boot loader utilisé actuellement

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 49


Commandes Linux

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 50


Les commandes UNIX
Une commande est un programme qui interagit avec le noyau afn
d'efectuer des actions appelées par l'utilisateur.
Une commande peut être : interne au shell (buil-in); un script shell
exécutable, ou un code compilé.
Le shell est l'interpréteur de commandes. L'utilisateur interagit avec le
noyau à travers le shell, soit directement par ligne de commande soit par
le biais d'interfaces graphiques. Il est courant d'écrire des scripts
(commandes en mode texte) afn d'automatiser certaines actions sur le
shell.

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 51


Le Shell UNIX
Le shell fait la passerelle entre le système d'exploitation et l'utilisateur
(shell = coquille en anglais). Il fait le rôle d'interpréteur des commandes.
Les commandes du terminal sont envoyés au shell, qui les traduit en
actions sur le système. Le shell UNIX a des fonctions similaires au
command.com (invité de commande) sur les systèmes DOS/Windows.
Dès que vous vous connectez, un shell vous êtes attribué par défaut.
Au démarrage de votre session, le shell initialise les variables
d'environnement, les alias, le path, et aussi exécute des actions
préalablement enregistrées.

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 52


Le Shell UNIX
D'habitude, chaque machine UNIX est dotée d'un shell compatible
Bourne shell.
Le shell Bourne original est disponible sur /bin/sh.
Dans la plupart des Linux actuels ce fchier est un lien vers /bin/bash
L'invité de commande Bourne shell est identifé par un $ (ou # si vous
êtes logué en tant que root).
Un autre shell populaire est le C Shell (sur les machines Solaris, par
exemple). L'invité de commande C shell est identifé par un %.

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 53


Le Shell UNIX
D'autres shells existent. La plupart de ces shells sont des extensions de
sh ou csh, avec des options avancées telles que l'auto complétion des
commandes, des interfaces d'édition/navigation, etc.
On trouve aussi des shells « éconômes », conçus avec un minimum de
commandes afn d'occuper très peu de place en mémoire (comme dans
le cas des systèmes embarqués).
Parmi les shells les plus connus on trouve le Korn shell (ksh), le Bourne
Again Shell (bash) - tous les deux basés sur le sh -, le T-C shell (tcsh)
et le extended C shell (cshe), basés sur le csh.

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 54


Programmation Shell
Vous pouvez écrire des programmes shell à partir de fchiers texte
(scripts) qui contiennent des séries de commandes shell.
La première ligne d'un script devrait toujours commencer par #!, afn
d'indiquer au shell que le script est directement exécutable.
Dans la même ligne, on indique le shell dont on veut se servir afn
d'exécuter les commandes. Ainsi, pour utiliser un Bourne shell, la
première ligne d'un script doit être

#! /bin/sh

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 55


Programmation Shell
La première ligne du script est suivie des commandes
Vous pouvez commenter des lignes en plaçant une # au début de la
ligne (le #! est un cas exceptionnel).

#!/bin/bash
cd /tmp
# creation d'un repertoire t
mkdir t
Une fois crée votre script, vous devez encore lui donner les permission
d'exécution avec chmod, par exemple :
$ chmod +x shell_script

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 56


Commandes LINUX
Gestion du système de fchiers
Gestion et visualisation de fchiers
Gestion des processus
Administration du réseau
Administration du système
Gestion des utilisateurs
Impression
Préparation de documents
Programmation
Autres

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 57


Structure d'une commande
Commande <Options> <Arguments>
Dans une même ligne, nous pouvons plusieurs commandes, separées
par des ;
Celles-ci seront exécutées l'une après l'autre, dans l'ordre

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 58


Comment obtenir de l'aide sur les commandes
La plupart des commandes est associée à une aide en ligne. La
commande man permet d'obtenir la description de la commande et de
ses options
man ls
Il est aussi possible d'utiliser le GNU Info System (commande info)
Des commandes telles que whatis et apropos permettent de chercher
des références sur une commande
Plusieurs outils ont des option de type long, dont −−help, ou −−usage
qui donnent des informations sur les options et les arguments
whoami --help

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 59


Pipes (tubes)
L'une des « inventions » de UNIX fut le concept des tubes (pipes), où
nous pouvons redirectionner la sortie d'une commande vers une autre
commande.
$ who | wc −l
Cette combinaison de commandes, par exemple, prends la sortie de la
commande who (la liste d'utilisateurs connectés) et la passe à la
comande wc (word count), qui grâce à l'option -l (lignes) indique
combien d'utilisateurs sont connectés en ce moment

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 60


Gestion de Fichiers
Gestion de fchiers et répertoires
cd <chemin> Modife le répertoire courant. Si aucun paramètre est
donné, retourne au répertoire home de l'utilisateur
chmod Modife les permissions des fchiers.
chmod 751 myfle : attribue les permissions rwx au propriétaire, rx au groupe
et x aux autres
chmod go=+r myfle : Donne la permission de lecture au groupe et aux autres
(u-user, g-group, o-other, +donne permission,-supprime, r-read, w-write, x-
exe)

chmod +s myfle – Modife le bit Setuid bit de manière à ce que l'application


soit exécutée avec toutes les permissions du propriétaire.

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 61


Gestion de fchiers
En efet, il existent trois type de permission spéciales :
setuid — utilisée seulement par les applications, indique que
l'application sera exécutée avec les mêmes permissions du propriétaire
au lieu de l'utilisateur courant. Est indiquée par un s à la place du x du
propriétaire. Si le propriétaire n'a pas le droit d'exécution, on voit la lettre
S majuscule.
setgid — fonction similaire à setuid, le bit setgid indique que les
permissions du groupe seront utilisées (à la place des permissions de
l'utilisateur courant).
sticky bit — normalment utilisé pour les répertoires, indique qu'un
fchier crée dans ce répertoire ne pourra être supprimé que par son
propriétaire. La lettre t remplace le x dans toutes les catégories.
Utile pour permettre aux membres du groupe d'écrire sur le fchier mais
jamais l'efacer

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 62


Gestion de fchiers
chown Modife le propriétaire d'un fchier.
chown <owner1> <flename> : owner1 devient le propriétaire du fchier.
chgrp Modife le groupe d'un fchier.
chgrp <group1> <flename> : le fchier appartient désormais à group1.
cp Copie un fchier d'un endroit à l'autre.
cp fle1 fle2 : Copie le fchier fle1 vers fle2
cp –R dir1 dir2 : Copie le contenu de dir1 vers le répertoire dir2
md5sum Afche la signature (checksum) MD5 d'un fchier
Utile pour vérifer l'intégrité d'un fchier téléchargé

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 63


Gestion de fchiers
ls Liste le contenu d'un répertoire
Ex: ls, ls –l , ls –al, ls –ld, ls –R
| more permet de faire un déflement page par page
mkdir Crée un répertoire.
mkdir <directory name> : crée un répertoire
mkdir –p /www/chache/var/log crée tous les répertoires à partir de /www
mv Déplace ou renomme un fchier ou répertoire
mv <source> <destination>

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 64


Gestion de fchiers
fnd Recherche des fchiers
fnd <start directory> -name <fle name> -print
fnd /home –name readme -print
Recherche un fchier readme à l'intérieur de /home et afche son
chemin

locate Recherche un fchier en utilisant une base de données slocate.


locate –u crée une base de données
locate <fle/directory> recherche le fchier ou répertoire

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 65


Gestion de fchiers
pwd Afche le chemin absolu du répertoire courant.
rm supprime des fchiers (l'option –rf est utilisée pour supprimer tout un
répertoire, même plein)
rmdir Supprime un répertoire. Celui-ci doit être vide.
touch Met à jour le flestamp (date de création/modifcation) d'un fchier.
Si le fchier n'existe pas, un nouveau sera crée (touch <flename>)
whereis Indique le chemin absolu d'une commande/programme, et
aussi sa page man si existante
whereis <program/command>
which Indique le chemin absolu d'une commande
which <command>

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 66


Gestion de fchiers
Visualisation et édition
emacs Éditeur « full screen », puissant mais parfois lourd.
Pico, nano Editeurs simple.
vi Editeur de texte puissant mais pas très simple à utiliser. Toujours
installé dans les Linux.
gedit Éditeur de texte graphique

tail Afche les 10 dernières lignes d'un fchier.


tail <flename> = tail -10 <flename>
Tail -100 <flename> - afche les 100 dernières lignes
head Afche les 10 premières lignes d'un fchier
head <flename>
head -50 <flename> - afche les 50 premières lignes

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 67


La guerre VI vs EMACS

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 68


Gestion de fchiers
Compression, sauvegarde et restauration
compress / uncompress Compression (dans le format .Z)
gzip / gunzip – compression vers le format .gz
zip / unzip – compression vers le format .zip (comme sous windows)
bzip2 / bunzip2 – compression vers le format bzip2 (le plus efcace)
Sauf zip, les autres font d'habitude la compression d'un seul fchier
tar Commande pour archiver (regrouper) des fchiers et répertoires
Possibilité de compression intégrée avec compress (Z), gzip (z) et bzip2 (j)
tar -cvzf <destination> <fles/directories> - regroupe et compresse les
fchiers avec le format gzip.
tar –xvzf <compressed fle> - extrait les fchiers
tar –tvzf <compressed fle> - liste le contenu uniquement

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 69


Gestion de fchiers
cat afche le contenu d'un fchier
cat flename
Très utilisé avec les tubes (ex: cat /etc/passwd | grep root)
cmp Compare deux fchiers.
dif Afche les diférences entre deux fchiers.
dif fle1 fle2
cut Permet de découper des données dans une ligne
cat /etc/passwd | cut -d ':' -f 1 - afche le nom des utilisateurs
echo Afche une ligne de texte

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 70


Gestion des fchiers
grep afche tous les fchiers/lignes avec une patron donné
grep pattern <flename/directorypath>
ls –l |grep sidbi : identife toutes les lignes avec le mot sidbi
grep " R " : recherche la lettre R entourée de spaces
sleep rajoute une pause pendant un temps donné
sort permet de trier une liste
uniq supprime des entrées répétées dans une liste ordonnée
wc compte le nombre de lignes (-l), mots (-w) ou lettres (-c) dans une
entrée.

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 71


Gestion du Système de Fichiers
badblocks Commande pour rechercher des badblocks dans un dispositif
badblocks hda
df Liste l'espace disponible en un ou plusieurs systèmes de fchiers
du Permet de calculer la taille des données stockées dans un répertoire
fsck Vérifcation du système de fchiers. D'habitude lancé au démarrage
d'une machine, ne doit pas être utilisé sur un système de fchiers monté

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 72


Gestion du Système de Fichiers
sync Synchronise les données en disque et ceux en mémoire. Sync écrit
sur le disque tous les données encore en mémoire cache.
mount Utilisé pour monter (grefer) un système de fchiers sur l'arbre de
fchiers Unix
umount Permet de démonter (de-grefer) un système de fchiers (ex :
une clé USB)
Il est important de faire umount car des données peuvent être encore en
cache
Identique au bouton « enlever le dispositif » sous Windows

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 73


Commandes d'Administration du Réseau
arp Ce programme afche et permet de modifer le cache ARP.
dig Envoie des requêtes de nom de domaine aux serveurs DNS – util
pour des test ou du débogage.
fnger Afche des informations sur les utilisateurs du système.
ftp Permet le transfert de documents/fchiers.
ifconfg Afche les interfaces réseau, leurs confgurations et aussi
permet de modifer les confgurations.
ifconfg eth0 address 172.31.2.2 netmask 255.255.0.0
ifdown Désactive une interface réseau. Ex: ifdown eth0
ifup Permet d'activer une interface réseau. Ex: ifup eth0
Sous ubuntu : le processus NetworkManager est activé par défaut, il se
superpose généralement aux confgurations « faites à la main »

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 74


Commandes d'Administration du Réseau
netstat Afche des informations sur les connexions réseaux en cours
(port, origine/destination, type de protocole, etc.). L'option "netstar -r"
afche la table de routage
nslookup Outil similaire à dig, maintenant obsolète.
Ping Permet de tester une connexion à l'aide d'échos en ICMP
Traceroute/tracepath Afchent le chemin suivi par des paquets IP
Tcpdump Permet de surveiller/capturer les paquets qui transitent sur
une machine

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 75


Commandes d'Administration du Réseau
route Outil pour manipuler la table de routage (route add, route del)
telnet Permet d'établir une connexion terminal distante à l'aide du
protocole TELNET
telnet <remote system name/ip>
Encore largement utilisé pour se connecter à l'interface d'administration du
matériel réseau (routeurs, switches)
ssh Version sécurisée de telnet.
ssh <remote system name/ip>
sftp / scp – outils pour le transfert de données à l'aide du protocole SSH

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 76


Commandes d'Administration du Réseau
Les fchiers clé
/etc/hostname – le nom de votre machine
/etc/resolv.conf – l'adresse IP des serveurs DNS
/etc/hosts – fchier avec des noms « locaux » (similaire à DNS)
répertoire /etc/network – fchiers de confguration statique du réseau

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 77


Administration du Système
Gestion des niveaux d'exécution du système
exit quitte le shell.
halt Arrête le système.
init Permet de contrôler le niveau d'exécution. (init 3)
logout Déconnecte l'utilisateur.
powerof Arrête le système.
reboot Réinitialise le système.
runlevel Afche le runlevel courant (et le précédent).

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 78


Administration du Système
shutdown Permet d'étendre la machine ou la rebooter. Shutdown
permet aussi de programmer l'arrêt et d'envoyer des messages aux
utilisateurs connectés.
# shutdown -h +10 'Un nouveau disque sera installe. Nous
retournons d'ici une heure.‘

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 79


Administration du Système
passwd Permet de changer le mot de passe d'un utilisateur
passwd
passwd <username>
quota Afche le quota disponible pour l'utilisateur, ainsi que son
utilisation courante
quota, quota <username>
quotaof Désactive le contrôle des quotas
quotaon Active le contrôle des qutas.
quotacheck Vérife le flesystem et met à jour le suivi des quotas.
edquota Permet d'éditer les paramètres de quota d'un utilisateur ou
groupe.
edquota <username>

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 80


Administration du Système
su permet de se connecter comme un autre utilisateur (su -)
useradd rajoute ou modife les informations d'un compte utilisateur.
useradd –g <group> -s <shell> -c <comment> –d <home directory>
<username>
userdel supprime un compte utilisateur et tous ses fchiers.
userdel <user name>
usermod Modife les caractéristiques d'un compte.
users Afche le nom des utilisateurs connectés
wall envoie un message aux terminaux de tous les utilisateurs
wall “text message”
who Afche les utilisateurs connectés et dans quel terminal
whoami Afche l'identifant de l'utilisateur courant

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 81


Un mot sur la commande sudo
L'utilisateur root est trop puissant pour être utilisé comme un compte
La commande su permet de devenir root mais ce n'est pas une solution
efcace
Parfois on « oublie » de se déconnecter
Le mot de passe du root est connu par l'utilisateur
Il a tous les pouvoirs du root
La commande sudo permet d'accorder aux utilisateurs des droits sur les
appels individuels. C'est leur propre mot de passe qui est demandé
sudo ifconfg
password: *******
Les utilisateurs (et leurs droits) sont indiqués dans le fchier /etc/sudoers

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 82


Administration du Système
L'heure du système
cal afche un calendrier
cal
cal 2009
date Afche la date et l'heure du système (avec des options de format
de sortie).
date permet aussi de modifer la date du système
date MMDDhhmm[[CC]YY][.ss])
hwclock Afche ou modife la date dans la CMOS de l'ordinateur
uptime Indique combien de temps la machine est allumée

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 83


Gestion des processus
Gestion de processus sous Linux
ps Afche le status des processus
PPID- ID du processus père ; PID- ID du processus
ps ax |more liste tous les processus, daemons inclus
ps –ef | grep <process> recherche un processus spécifque
pstree Afche l'arbre des processus courants
top Outil qui permet une vue dynamique de l'état des processus
(activité, consommation CPU, mémoire).
Lsof liste les fchiers ouverts pour chaque processus

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 84


Gestion des processus
Gestion de processus sous Linux
<commande/programme> & lance le programme comme tâche de
fond (ne bloque pas le terminal)
Ctrl-z permet de suspendre un processus actif (dans le terminal)
bg relance en tâche de fond un processus suspendu
fg relance dans le terminal un processus suspendu
kill permet de « tuer » ou d'arrêter un processus
kill 34 – arrêt ou suspend le processus numéro 34.
kill -9 <pid> - force l'arrêt d'un processus
killall permet de tuer un processus en appelant son nom (au lieu du PID)
pid Afche le PID du processus courant

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 85


La gestion des processus
Les programmes sont exécutés par le processeur à tour de rôle. Le
partage n'est pas équitable, mais tient compte des priorités de
chacun.
Valeur numérique de chaque processus : nice (sa «gentillesse»)
0 : normal
20 : priorité minimale
-20 : priorité maximale. Seul le root peut utiliser valeur négative.
Processus critiques à -10 (X, noyau). Les autres doivent être au
dessus.
nice(1) : lance un programme à une autre priorité
nice [-n valeur] [commande [arguments ...]]

renice(1) : modifie la valeur après le lancement


renice priorité [[-p] pid ...] [[-g] pgrp ...] [[-u] user ...]

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 86


Les tâches d'un administrateur de système Linux
Défnir le Run Level
Démarrer/gérer/arrêter les services du système
Gestion d'utilisateurs
Confguration du réseau
Planifcation de tâches
Gestion du Quota
Sauvegardes et Restauration
Installation/suppression de logiciels/packages
Gestion d'imprimantes
Surveillance du système (générale)
Surveillance de services spécifques
DNS, DHCP, Web, NIS, NPT, Proxy etc.

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 87


Les Runlevels
Linux défnit les runlevels suivants :

0 - halt (arrêt du système, ne JAMAIS indiquer comme initdefault)


1 – Mode mono-utilisateur
2 - Multi-utilisateur, sans réseau (équivalent à 3, sans réseau)
3 – Multi-utilisateur en mode texte
4 – non utilisé
5 – Mode Graphique
6 - reboot (ne JAMAIS indiquer comme initdefault)

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 88


Les Runlevels
Le runlevel par défaut est confguré dans le fchier /etc/inittab.
Sauf avec ubuntu, qui adopte un autre système sous /etc/event.d/
id:5:initdefault:
Généralement Linux opère avec les runlevels 3 ou 5.
Des outils graphiques (menu Système) permettent de modifer le
runlevel sans éditer directement le fchier /etc/inittab

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 89


Le démarrage de Linux
init active les services

A chaque runlevel correspond un répertoire /etc/rc.d/rcX.d ou X


est le numéro du runlevel en question. Ces répertoires
contiennent des liens symboliques de la forme

<lettre><nombre><nom>

Ces liens pointent vers des scripts contenus dans /etc/init.d/


qui permettent de lancer ou d'arrêter des services.

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 90


Le démarrage de Linux
init active les services

Ces scripts commencent par la lettre S (start) ou K (kill) et le


nombre varie entre 00 et 99. La lettre indique si le service doit être
démarré ou arrêté et le nombre détermine l'ordre des actions.
Exemple : /etc/rc0.d/K20ssh -> /etc/init.d/ssh
Lors de l'arrêt, lorsque toutes les actions <20 sont faites, init appelle :
/etc/init.d/ssh stop

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 91


Le démarrage de Linux
init vers utilisateurs

Lorsque toutes les initialisations sont faites, il faut permettre à


l'utilisateur de se connecter. Ceci est confguré dans /etc/inittab :

1:2345:respawn:/sbin/mingetty tty1

Chaque ligne indique les programmes qui doivent être lancés sur
chacune des consoles virtuelles. Le rôle du programme mingetty est
d'afcher une invite (d'après /etc/issue) :

Debian GNU/Linux 3.1 papagos tty0

login :

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 92


Le démarrage de Linux
init vers utilisateurs

Dès que l'utilisateur entre son login et mot de passe, le


programme mingetty exécute la commande /bin/login chargé
d'authentifer l'utilisateur et le connecter (afcher le contenu
de /etc/motd, vérife la mailbox, puis lancer un shell).
Lorsque l'utilisateur termine sa connexion, init relancera un
nouveau processus mingetty sur la console virtuelle
correspondante

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 93


Les Services Linux
Il y a bien plus d'une centaine de services Linux. Parmi eux, les plus utilisés
sont :
apmd : gestion d'énergie (APM)
acpid : gestion d'énergie (ACPI)
autofs : service Automount (pour NFS, notamment)
crond : planifcateur de tâches périodiques
cups : Common Unix Printing System
dhcpd : Le serveur DHCP
gpm : gestion de la souris
apache2 : Serveur Web Apache

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 94


Les Services Linux
iptables : pare-feu
mysqld : serveur MySQL
bind9 : serveur DNS
network : services réseau de base (démarrage, etc)
nfs : Network File Share
ntpd : serveur NTP (Network Time Protocol)
portmap : support à des appels RPC (Remote Procedure Call)
postgresql : serveur de base de données Postgresql

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 95


Les Services Linux
Sendmail / postfx : serveurs de Mail
smb : services de partage de fchiers Samba
snmpd : Simple Network Management Protocol
squid : Serveur proxy Squid
sshd : serveur SSH et SFTP
syslog : service de log du système
xinetd : wrapper pour les services tels que telnet, ftp, talk, tftp etc.
ypbind : serveur NIS

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 96


La gestion des utilisateurs
Le fchier /etc/passwd est la base de données sur les
utilisateurs.
Exemple de ligne :

mquinson:DcoJmNQ:1003:1003:Martin,,,:/home/mquinson:/bin/bash

Suite de champs séparés par des ':'


login de l'utilisateur
mot de passe crypté. Il peut être remplacé par x et déporté
dans /etc/shadow pour le cacher (seul root peut lire).
uid : numéro d'utilisateur utilisé dans les inodes, entre autres.
l'uid du super-utilisateur est 0
gid : numéro de groupe principal.
commentaire : en général nom et prénom
répertoire personnel
commande de connexion : shell à lancer lors de la connexion

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 97


La gestion des utilisateurs
Fichier /etc/group est la base de données sur les groupes et
les utilisateurs qui appartiennent à ces groupes
Exemple de ligne :
audio:DcoJmNQ:29:plateau,mquinson

Suite de champs séparés par des ':'


Nom du groupe
Mot de passe crypté : demandé aux utilisateurs n'étant pas dans
le groupe voulant s'y connecter avec newgrp(1) ou sg(1)
Liste des utilisateurs du groupe (connexion sans mot de passe)

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 98


La gestion des utilisateurs
/etc/passwd et /etc/group sont lisibles par tous les utilisateurs
risque d'attaque des mots de passe en force brute
solution : cacher les mots de passe dans /etc/shadow
mquinson:$1$wf1guEva$6hednbGEedlNqCuqKVwQN1:12663:0:99999:7:::
login
mot de passe crypté
dernière modifcation de mot de passe (jours depuis 1/1/70)
jours à attendre avant de pouvoir changer le mot de passe
jours avant avertissement de fn de validité du mdp
jours entre avertissement et désactivation
date de désactivation
champs réservés

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 99


La gestion des utilisateurs
La commande passwd :
Rôle pour l'utilisateur : créer ou modifer son mot de passe
Rôles pour l'administrateur :
modifer le mot de passe d'un utilisateur
passwd nom
supprimer le mot de passe
passwd -d nom
verrouiller le compte d'un utilisateur
passwd -l nom
déverrouiller le compte d'un utilisateur
passwd -u nom

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 100
La configuration du réseau
chargement des pilotes

Nommage des interfaces :


eth0 : première carte ethernet, eth1 : deuxième
lo : boucle locale; ppp0 : modem ; irlan0 : infrarouge
Pour savoir si les pilotes nécessaires sont chargés :
ifconfg eth0
Si message « Périphérique non trouvé », il faut alors charger le pilote
manuellement.
Obtenir la liste de périphériques réseau:
ls /lib/modules/$(uname -r)/net
Charger le module :
modprobe pilote

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 101
La configuration du réseau
manuelle

ifconfig(8) : affiche (et modifie) la configuration réseau actuelle

/sbin/ifconfig
/sbin/ifconfig eth0 192.168.0.3 netmask 255.255.255.0

route(8) : affiche (et modifie) la table de routage

/sbin/route -n
Table de routage IP du noyau
Destination Passerelle Genmask Indic Metric Ref Use Iface
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 eth1

/sbin/route add default gw 192.168.0.1

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 102
La configuration du réseau
à la fedora/mandriva

Le fichier /etc/sysconfig/network contient les variables :

NETWORKING : initialisée à "yes" pour valider l'utilisation du réseau


FORWARD_IPV4 : initialisée à "no" pour empêcher le transfert
automatique des paquets
HOSTNAME : contient le nom pleinement qualifié (avec le domaine)
de la machine
GATEWAY : adresse IP de la passerelle
DOMAINNAME : le domaine de la machine

Ce fichier est utilisé dans les scripts d'initialisation pour positionner les
variables d'environnement.

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 103
La configuration du réseau
à la fedora/mandriva
Pour chaque interface, un script /etc/network-scripts/ifcfg-nomInterface
Il contient les variables suivantes :
DEVICE : nom du périphérique
ONBOOT : initialisée à "yes" pour valider l'interface au démarrage
BROADCAST : contient l'adresse IP de diffusion
NETWORK : contient l'adresse IP du réseau
NETMASK : contient le masque du réseau
IPADDR : contient l'adresse IP de l'interface
BOOTPROTO : peut prendre la valeur STATIC ou DHCP (pour une
configuration en tant que client DHCP)

Initialisation et prise en compte des changements :


/etc/init.d/network restart

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 104
La configuration du réseau
à la debian/ubuntu

Pour chaque interface, un morceau de /etc/network/interfaces

auto lo
iface lo inet loopback iface eth2 inet static
iface eth0 inet dhcp address 129.88.103.44
iface eth1 inet dhcp netmask 255.255.0.0
wireless_essid IMAG-visiteurs network 129.88.0.0
wireless_ssid IMAG-visiteurs broadcast 129.88.103.255
wireless_key s:devinez gateway 129.88.103.1

Initialisation :
/etc/init.d/network restart

Prise en compte des changements :


ifdown interface ; ifup interface
©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 105
La configuration du réseau
à la slackware (et BSD)

Appels d'ifconfig dans un script de démarrage

/etc/rc.d/rc.inet1 qui utilise /etc/rc.d/rc.inet1.conf

©200 9 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 10 6


La configuration du réseau
résolution de noms
Contenu de /etc/resolv.conf :

search mondomaine.com
nameserver 192.168.0.1

Ce contenu peut être indiqué manuellement ou fixé


automatiquement par dhcp

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 107
Automatisation de tâches
Deux types de tâches automatiques :
retardées (delayed)
répétitives

at(1) : programme une exécution retardée


at 10am Jul 31 ; at 1am tomorrow ; at now ; at 4pm
(ouvre un éditeur interactif)
atq, at -l : liste les exécutions prévues, en annule une
atrm : annule une exécution prévue

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 108
Automatisation de tâches
crontab(1) : programme une tâche répétitive
Une table par utilisateur (édition: crontab -e) dans
/var/spool/cron

Le démon crond se charge d'appliquer ces configurations.

PATH=/usr/bin:/bin:/home/mquinson/SCRIPTS

# Minutes Heures Jours du mois Mois Jours de la semaine


Commande
2 0,4,8,12,16,20 * * * p=`pidof sauvegarde`; [ -n "$p" ] ||
sauvegarde
49 10 * * 1 linux-counter-machine-update -m

# Le caractère * permet d'indiquer le plus grand intervalle possible.

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 109
Automatisation de tâches

Certaines distributions comportent les répertoires :

/etc/cron.hourly /etc/cron.daily /etc/cron.monthly

/etc/crontab est alors configuré pour exécuter les scripts se


trouvant dans ces répertoires respectivement toutes les
heures, tous les jours et tous les mois.

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 110
Installation et Suppression de Logiciels
Télécharger un exécutable binaire
Télécharger le code source et le compiler
Utiliser des gestionnaires de paquets
fedora/redhat – rpm, yum
Yum install <paquet>
debian/linux – apt, aptitude
apt-get install <paquet>
Utiliser une interface graphique
synaptic

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 111
Confguration de Quotas de Disque
Pour implémenter un système de quotas, vous devez :

Activer le système de quotas par flesystem en modifant /etc/fstab


Re-monter le flesystem
Créer un fchier de quota et générer la table d'utilisation du disque
Attribuer des quotas

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 112
Confguration de Quotas de Disque
Activation des Quotas : Editer fstab

LABEL=/1 / ext3 defaults 11


LABEL=/boot /boot ext3 defaults 12
LABEL=/users /users ext3 exec,dev,suid,rw,usrquota 1 2
LABEL=/var /var ext3 defaults 12
LABEL=SWAP-sda5 swap swap defaults 00

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 113
Confguration de Quotas de Disque
Re-monter les flesystems : démonter et remonter la partition visée
umount /users;mount /users

Création de la base de données des Quotas : Utiliser quotacheck pour


créer un fchier quota.user
quotacheck -cu /users

Attribuer des quotas aux utilisateurs :utiliser la commande edquota


edquota <username>
Disk quotas for user web_cc (uid 524):
Filesystem blocks soft hard inodes soft hard
/dev/sdb1 988612 1024000 1075200 7862 0 0

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 114
Surveillance du Système
Vérifez régulièrement l'utilisation du disque (df)
Regardez aussi l'utilisation de la CPU et de la Mémoire (top)
Surveillez les processus/services (ps, pgrep)
Identifez des messages d'alerte dans les logs du système
Commande dmesg
/var/log/messages
Surveillez les diférents services (serveur Web, etc)
Apache - /var/log/apache2/*
Identifez des connexions suspectes
Commandes lastlog, last

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 115
Sauvetage d'un système Linux
Malheureusement, votre machine peut planter. Voici deux façons pour
essayer de récupérer votre système
Boot en mode Single User
Au démarrage (menu GRUB)
Sélectionner lé noyau à démarrer et choisir « e » pour éditer
Dans la ligne « kernel... » rajouter le mot « Single » ou « S »
Démarrer votre système avec la touche b
Reboot en mode sauvetage (rescue)
Utiliser un CD d'installation (ou live-cd)
Au démarrage, entrer “linux rescue” dans le prompt de commandes
Bonne chance ;)

©2009 – L.A. Steffenel Master 2 ASR - Administration des systèmes d'information 116

Vous aimerez peut-être aussi