Académique Documents
Professionnel Documents
Culture Documents
GNU Linux
ESGIS
Févier 2011
Gestion des utilisateurs sous GNU/Linux
Gestion des fichiers sous GNU/Linux
Gestion des processus sous GNU/Linux
Démarrage et Arrêt des services ou des démons sous GNU/Linux
Automatisation de tâches sous GNU/Linux
Gestion de l'impression sous GNU/Linux
Gestion de disque sous GNU/Linux
Gestion de périphériques sous GNU/Linux
Le Noyau sous GNU/Linux
Gestion des paquetages sous GNU/Linux
GNU/Linux et le réseau
Le DNS sous GNU/Linux
Gestion des utilisateurs sous
GNU/Linux
●
Qui est utilisateur ?
Linux est un système multiutilisateurs. Le système, dès son
installation, avant même la première connexion au système,
a créé des users système.
Un utilisateur n'est donc pas uniquement une personne
physique, le système a besoin d'utilisateurs pour sa gestion
interne, notamment comme propriétaire des divers
processus. Les utilisateurs sont identifiés par le système
grâce à un UID (identifiant d'utilisateur) unique. Cet
identifiant est une valeur numérique.
Gestion des utilisateurs sous
GNU/Linux
●
Créer un compte pour un nouvel utilisateur
Cela signifie lui permettre d'être connu du poste local, s'y
loguer, avoir un accès complet sur son répertoire personnel.
Mais aussi dans une configuration réseau, de pouvoir se
connecter à son compte par telnet, ftp, ssh et de pouvoir
bénéficier de services réseau de partage distant (sous Linux par
NFS et sous Windows 9x par SMB).
Gestion des utilisateurs sous
GNU/Linux
●
Créer un compte pour un nouvel utilisateur
adduser bob
Ceci crée :
● le répertoire personnel /home/bob, portant par défaut le
nom du compte
● une nouvelle entrée dans les 3 fichiers fondamentaux
/etc/passwd, /etc/group et /etc/shadow.
● Pour connaître les options de adduser : man adduser
Gestion des utilisateurs sous
GNU/Linux
●
Créer un compte pour un nouvel utilisateur
Syntaxe : useradd [options] nom_login
Exemple : useradd u 1200 p moi g 520 G groupes s
/bin/bash m toto
Options
●
u uid : pour fixer l'identifiant uid
g groupeprimaire
G liste : fixe l'appartenance de l'utilisateur à une liste de groupes
secondaires (séparateur , sans espace)
s shell : par défaut, attribution du shell par défaut bash
c commentaire
●
Gestion des utilisateurs sous
GNU/Linux
●
Créer un compte pour un nouvel utilisateur
d rep. Personnel: par défaut dans le répertoire /home
e dateexpiration: fixe la date d'expiration du compte (format
MM/JJ/AA)
●
Gestion des utilisateurs sous
GNU/Linux
●
Créer un compte pour un nouvel utilisateur
Pour définir le mot de passe:
●
useradd p password nom_login
Le mot de passe doit être crypté. Vous pouvez écrire un
programme en C pour crypté, ou htpasswd (le package apache
doit être installé) ou simplement useradd m p `openssl passwd
titi` titi (le package openssl soit être installé)
●
Ou encore passwd nom_login
●
Gestion des utilisateurs sous
GNU/Linux
●
Créer un compte pour un nouvel utilisateur
Pour définir le repertoire de l'utilisateur:
●
useradd m nom_login
Permet de créer le repertoire de l'utilisateur dans /home. Il copie
le contenu du répertoire /etc/skel dans le répertoire de
l'utilisateur.
●
Gestion des utilisateurs sous
GNU/Linux
●
L'environnement initial : /etc/skel
●
Lorsque le répertoire d'accueil pour un nouvel utilisateur a été créé, il est
initialisé avec des fichiers du répertoire /etc/skel. Dans le répertoire
/etc/skel, vous trouverez le squelette de tous les nouveaux comptes : tout ce
qui y est présent sera recopié par défaut dans le répertoire de chaque nouvel
utilisateur.
●
Le contenu du fichier /etc/profile sera exécuté (réglages génériques pour tous
les utilisateurs). Selon le shell de connexion, d'autres scripts seront utilisés :
s' il s'agit d'un shell de login, et que le shell est bash, alors ~/.bash_profile ou
~/.bash_login ou ~/.profile seront lus. A la déconnexion, ~/.bash_logout
sera exécuté.
●
S'il s'agit d'une connexion distante, d'un sousshell, ou d'un xterm, alors
/etc/bash.bashrc puis ~/.bashrc seront exécutés.
Gestion des utilisateurs sous
GNU/Linux
●
Pour définir un repertoire avec un chemin d'accès différent:
● useradd m d /chemin absolu nom_login
Gestion des utilisateurs sous
GNU/Linux
●
Modifiez le contenu de /etc/skel. Créer dans ce repertoire un
repertoire IIR2 et un fichier ESSAI. Créez un nouvel utilisateur
tedy (adduser tedy). Connectez vous avec tedy, et vérifiez le
contenu de son repertoire perso.
Gestion des utilisateurs sous
GNU/Linux
●
adduser est une commande intreactive mais n'existe que sur
certains systèmes.
Gestion des utilisateurs sous
GNU/Linux
● Créer un compte pour un nouvel utilisateur
La commande passwd
Elle est chargée du cryptage du mot de passe dans /etc/shadow
Syntaxe : passwd [option] nomlogin
Options
●
stdin, la commande abandonne son caractère interactif
habituel et examine son entrée standard pour s'en servir
comme mot de passe.
Très utile dans un script : echo mot | passwd stdin
(attention tout caractère est significatif, y compris les " ")
Gestion des utilisateurs sous
GNU/Linux
●
Créer un compte pour un nouvel utilisateur
Les options de la commande passwd
●
d , pour supprimer le mot de passe, l'utilisateur pourra se
connecter sans !
●
l , pour verrouiller le compte et empêcher sa connexion.
●
u , pour déverrouiller.
● herve@debian:~$ su toto
Mot de passe :
su : Échec d'authentification
herve@debian:~$
Gestion des utilisateurs sous
GNU/Linux
●
Supprimer le compte d'un utilisateur (non connecté)
userdel [r]
L'option r supprime aussi le rép. personnel et les fichiers de
l'utilisateur
La commande supprime toute trace de l'utilisateur dans le fichier de
configuration : /etc/passwd y compris dans les groupes
d'utilisateurs. Vous pouvez utiliser deluser removehome user
●
debian:~# deluser removehome mimi
Recherche de fichiers à sauvegarder ou à supprimer...
Suppression des fichiers...
Suppression de l'utilisateur « mimi »...
Attention : le groupe « mimi » est désormais vide.
Terminé.
Gestion des utilisateurs sous
GNU/Linux
●
Modifier le compte de l'utilisateur alice
usermod [options] alice
Les options sont les mêmes que useradd
usermod G info,prof alice ajoute alice dans les 2 groupes info et
profs (qui doivent exister)
usermod p mot_de_passe_crypté alice modifie le mot de passe de
l'utilisateur alice
usermod p `openssl passwd mot_de_passe_en_clair` alice
Gestion des utilisateurs sous
GNU/Linux
●
Connaitre l'uid et le gid de l'utilisateur courant
●
Commande id
● uid=501(alice) gid=501(alice) groups=501(alice), 504(prof)
●
Pour décrire un utilisateur : chfn
Cette commande permet d'indiquer dans le champ numéro 5 du
fichier /etc/passwd différentes informations sur un utilisateur,
son nom complet, son bureau, ses numeros de téléphone
(séparées par des virgules).
●
Pour définir le nom complet de l'utilisateur, chfn f "Paul
ZINSOU" pzinsou ou simplement chfn pzinsou
Gestion des utilisateurs sous
GNU/Linux
● Les groupes
Ensemble d'utilisateurs qui partagent les mêmes fichiers et
répertoires.
●
Chaque utilisateur doit faire partie au moins d'un groupe, son
groupe primaire. Celuici est défini au moment de la
création du compte, et par défaut, l'utilisateur appartient à un
nouveau groupe créé, portant son nom. Ainsi, dans /etc/passwd
chaque utilisateur possède un groupe par défaut, précisé par son
identifiant gid dans ce fichier.
●
L'appartenance au groupe primaire n'étant pas exclusive, tout
utilisateur peut faire partie de plusieurs autres groupes,
appelés ses groupes secondaires.
Gestion des utilisateurs sous
GNU/Linux
●
Les groupe
Pour lister tous les groupes (primaire et secondaires) d'un
utilisateur : groups alice
●
Pour créer un nouveau groupe
groupadd compta ou addgroup compta
●
addgroup compta
Ajout du groupe « compta » (identifiant 1003)..
Terminé.
●
groupadd compta
●
Comme adduser, addgroup a un caractère interactif
Gestion des utilisateurs sous
●
GNU/Linux
● Supprimer un groupe, au hasard .. encore info.
groupdel info ou delgroup info
Le groupe est supprimé du fichier /etc/group. La commande
delgroup à un caractère interactif.
●
Pour ajouter un utilisateur à un groupe
Le plus simple est d'éditer le fichier /etc/group et d'ajouter une
liste d'utilisateurs (séparés par des virgules) sur la ligne du
groupe (ou utiliser l’interface graphique).
Gestion des utilisateurs sous
GNU/Linux
●
Structure de certains fichiers
Tout ce qui concerne la gestion et l'authentification des
utilisateurs est inscrit dans un seul fichier /etc/passwd
La gestion des groupes est assurée par /etc/group
Les mots de passe cryptés sont maintenant placés dans
/etc/shadow, par sécurité lisible et modifiable seulement par
root.
●
Cryptage des mots de passe
Pour des questions de sécurité, les mots de passe cryptés ne sont stockés dans
/etc/passwd qui doit etre accessible en lecture par tous.
La commande /usr/sbin/pwconv est chargée de transférer les mots de passes cryptés,
dans /etc/shadow.
Gestion des utilisateurs sous
GNU/Linux
●
Structure de /etc/passwd
Le fichier /etc/passwd contient les informations relatives à tous
les utilisateurs du système. On y trouve leur :
login , mot de passe (chiffré) , UID, GID principal, nom complet
et autres informations, répertoire principal, leur shell.
La syntaxe de "/etc/passwd" est très simple, chaque ligne
concerne un utilisateur. Les différents champs sont séparés par
des ":" :
●
login:motdepasse:UID:GID:infoutilisateur:répertoire
principal:shell
Gestion des utilisateurs sous
GNU/Linux
Gestion des utilisateurs sous
GNU/Linux
●
Le champ Mot de passe peut prendre plusieurs siginifications :
●
"*" : il est impossible de s'authentifier sur le système avec ce compte
●
"!" : Le compte est désactivé
●
"x" : le mot de passe est dans un fichier shadow (voir ciaprès)
●
champ vide : Il n'y a pas de mot de passe pour ce compte.
Gestion des utilisateurs sous
GNU/Linux
● Le fichier /etc/passwd est accessible à tout le monde. La
présence du mot de passe dans /etc/passwd, même crypté, pose
un problème de sécurité. La solution à ce problème est de stocker
les mots de passe dans un fichier différent : /etc/shadow. Pour
garantir la sécurité, seul l'administrateur peut le lire.
Gestion des utilisateurs sous
GNU/Linux
●
Le fichier /etc/shadow
Gestion des utilisateurs sous
GNU/Linux
● Le fichier /etc/group
Gestion des utilisateurs sous
GNU/Linux
●
Outils de gestion des comptes
– Sous Gnome
– Se connecter comme root et lancer Utilisateurs et groupes à
partir du menu Bureau/Administration
– Sous KDE
●
Lancer sous XKDE, la commande K/Système/Gestionnaire
d'utilisateurs
Gestion des utilisateurs sous
GNU/Linux
● TP à faire en mode commande
Créer le compte d’utilisateur gilbert avec le mot de passe
gil20F2.Dans une autre console, utiliser deux méthodes
différentes pour vous connecter sous le compte créé. A partir du
fichier /etc/passwd, effacer le mot de passe.
Modifier les informations relatives à l’utilisateur gilbert.
Nom complet : Gilbert LAWSON
Tél personnel : 2232520
Suspendez le compte
Remettez la en activité
Gestion des utilisateurs sous
GNU/Linux
●
Sous Gnome
Se connecter comme root et lancer Utilisateurs et groupes à
partir du menu Bureau/Administration
Sélectionner un compte et examiner sa définition actuelle.
Comparer avec son entrée dans /etc/passwd
Ajouter un nouveau compte (pierre/pierre) en donnant
seulement les nom de login et nom complet
Créer maintenant un autre compte (toto) en précisant le groupe
primaire (zig), et des groupes secondaires (stagiaire).
Créer les groupes Gestion, Finance, Logistique.
Placer l'utilisateur dans cette liste de groupes
Gestion des utilisateurs sous
GNU/Linux
●
Les principales commandes
useradd, adduser, usermod, userdel, deluser : gestion des
comptes utilisateur
groupadd, addgroup, groupmod, groupdel: gestion des groupes
passwd: changer le mot de passe d'un utilisateur
chfn, id, groups: utilitaires divers
Gestion des fichiers sous
GNU/Linux
●
Comme sous Linux, tout est fichier, tous les systèmes de fichiers quels que
soient leur emplacement physique doivent être intégrés dans l'UNIQUE
arborescence logique du système Linux. Au sommet de cette arborescence se
trouve le répertoire racine dont l'organisation traditionnelle est décrite comme
ceci
●
/bin : les fichiers exécutables (en binaire) (initialisation du système +
commandes "essentielles")
●
/boot : le noyau et les fichiers de démarrage
●
/dev : répertoire de fichiers spéciaux, qui servent de canaux de
communication avec les périphériques (disques, adaptateur réseau, cartes son
etc...)
●
Gestion des fichiers sous
GNU/Linux
●
/etc : les fichiers de configuration du système et les principaux scripts de
paramétrage
●
/etc/rc.d scripts de démarrage du système
●
/etc/X11 scripts de configuration du serveur X
●
/etc/init.d script de controle des serveurs
●
/etc/cron.d description des tâches périodiques à effectuer
●
/etc/skel fichiers recopiés dans le rép. personnel d'un nouvel utilisateur
●
/home : la base des répertoires utilisateurs
●
/lib: les bibliothèques et les modules du noyau
●
/lost+found : le stockage des fichiers retrouvés par fsck
Gestion des fichiers sous
GNU/Linux
●
/mnt : la racine des points de montage des périphériques. (cd, disquette, nfs .)
(sous Debian : il y a /cdrom et /floppy, placés directement à la racine).
●
/opt : lieu d'installation d'applications supplémentaires (comme starOffice,
java ..)
●
/proc : un système de fichiers virtuels permettant l'accès aux variables du
noyau
●
/root : le répertoire de base du super utilisateur
●
/sbin : les fichiers exécutables pour l'administration du système
●
/tmp : les fichiers temporaires
●
/usr : programmes accessibles à tout utilisateur; sa structure reproduit celle de
la racine /
Gestion des fichiers sous
GNU/Linux
●
/var : données variables liées à la machine (fichiers d'impression, traces de
connexions http, smb .. dans /var/log)
Gestion des fichiers sous
GNU/Linux
●
Les Types de fichiers
●
les fichiers normaux ou ordinaires: ce sont des collections d'octets.
●
les répertoires : ce sont des fichiers contenant les noms des fichiers.
●
les liens symboliques : permettent de présenter une image d'un fichier sous un autre
nom ou à un autre endroit sans dupliquer les données (assimilable à un raccourci
Windows).
●
les fichiers spéciaux en mode bloc ou fichier de périphérique en mode bloc: sont les
portes sur les périphériques fonctionnant par blocs de données (ex : disques).
●
les fichiers spéciaux en mode caractère ou fichier de périphérique en mode caractère:
sont les portes vers les périphériques fournissant ou consommant les données octet par
octet.
●
Gestion des fichiers sous
GNU/Linux
●
Attributs des fichiers
●
Pour afficher les attributs principaux des fichiers, il faut utiliser l'option `l' de la
commande ls :
●
rwrr 2 root root 6656 Apr 15 1998 fichier
brwrr 1 root root 0 Apr 15 1998 bloc
crwrr 1 root root 0 Apr 15 1998 caracteres
drwxrxr 1 root root 1024 Nov 12 19:42 répertoire
lrwxrxr 1 root root 1024 Nov 12 19:42 répertoirebis
Gestion des fichiers sous
GNU/Linux
●
Cet affichage présente beaucoup d'informations :
●
le premier caractère donne le type du fichier :
●
`` pour un fichier normal
●
`b' pour un fichier spécial en mode bloc
●
`c' pour un fichier spécial en mode caractère
●
`d' pour un répertoire
●
`l' pour un lien
●
les neuf caractères suivants donnent les droits d'accès (voir plus loin)
●
le champ suivant donne le nombre de liens sur le fichier
●
on trouve ensuite le nom du propriétaire et du groupe du fichier
Gestion des fichiers sous
GNU/Linux
●
le champ suivant donne la taille en octets du fichier
●
la date de la dernière modification est indiquée selon deux formats :
●
avec l'année pour les fichiers vieux de plus de 6 mois ou de plus d'une heure dans
le futur
●
avec l'heure pour les autres cas
●
enfin, le nom du fichier.
Gestion des fichiers sous
GNU/Linux
● La commande stat permet d'afficher plus d'informations sur un fichier.
●
bash$ stat file1
●
File: "file1"
●
Size: 3562 Filetype: Regular File
●
Mode: (0777/rwxrwxrwx) Uid: ( 500/ sandra) Gid: ( 500/ sandra)
● Device: 8,0 Inode: 2043 Links: 1
● Access: Wed Nov 18 18:52:42 1997(00000.00:26:18)
●
Modify: Wed Nov 18 18:52:42 1997(00000.00:26:18)
●
Change: Wed Nov 18 18:52:59 1997(00000.00:26:01)
Gestion des fichiers sous
GNU/Linux
● Permissions d'accès aux fichiers
●
Tout fichier du système appartient à la fois à un utilisateur (son
"propriétaire") et à un groupe.
Ainsi, pour chaque fichier le monde de ses utilisateurs potentiels
est scindé en 3 catégories, nommées :
●
u, l'utilisateur normal, son propriétaire, bien souvent son
créateur, qui n'a pas pour autant tous les droits sur lui !
●
g, son groupe, ensemble d'utilisateurs ayant parfois des
"permissions" particulières.
●
o, tous les (others) autres.
Gestion des fichiers sous
GNU/Linux
●
Droits d'accès des utilisateurs aux fichiers
Linux permet de spécifier les droits d'action sur un fichier, que
peuvent exercer les utilisateurs des 3 catégories précédentes, ou
plutôt les permissions que leurs accordent les fichiers et les
répertoires.
Linux a repris les 3 protections d'UNIX sur les fichiers et les
répertoires. Leur notation symbolique est :
●
r, lecture
●
w, écriture
●
x, exécution
Gestion des fichiers sous
GNU/Linux
●
[gil@pc gil] ll *.html
rwrr 1 gil gil 1200 oct 19 12 : 39 amoi.html
●
Description globale
On trouve de gauche à droite
●
le 1er caractère indique la nature du fichier
"" fichier normal, "d" un fichier répertoire, "l" un lien.
●
le système de droits est spécifié symboliquement par les 9 attributs suivants,
correspondants aux 3 catégories d'utilisateurs du fichier.
...|...|...
u g o
●
La section u fixe les droits accordés au propriétaire du fichier.
La section g fixe les droits accordés aux utilisateurs faisant partie du groupe auquel
appartient le fichier.
La section o fixe les droits des autres utilisateurs.
Gestion des fichiers sous
GNU/Linux
●
nombre de liens sur le fichier
1 signifie que le fichier n'a aucun lien qui pointe vers lui, 2 (ou plus) signifiant qu'il
existe un lien (ou plus) vers lui.
●
le nom du propriétaire du fichier
●
le nom du groupe propriétaire
●
la date de dernière modification
●
le nom complet du fichier
Gestion des fichiers sous
GNU/Linux
●
Changer le propriétaire ou le groupe propriétaire
Changer le propriétaire
chown [R] nvuser fichiers
Commande réservée au propriétaire actuel des fichiers ou des
répertoires (et à root)
L'option R (récursif) permet d'agir sur l'ensemble des sous
répertoires.
Exemple : chown R gil /home/paul
Changer le groupe propriétaire
chgrp [R] nvgroupe fichiers
Ceci doit être effectué par root ou le propriétaire, à condition que
celuici soit membre du nouveau groupe.
Exemple : chgrp R gil /home/paul
Gestion des fichiers sous
GNU/Linux
●
Changer les 2 en même temps
chown nvuser.nvgroupe fichiers
Dans ce cas, en plus, le groupe propriétaire des fichiers est
changé pour le groupe primaire du nouveau propriétaire.
Gestion des fichiers sous
GNU/Linux
●
Changer les permissions sur les fichiers
●
Les droits d'accès peuvent être modifiés par le propriétaire des
fichiers ou par root (ou équivalent, d'uid 0).
●
La commande chmod (change mode, change le "mode" des
fichiers) peut s'écrire de plusieurs façons équivalentes, sur le
modèle :
chmod droits fichiers
Le paramètre droits permet de calculer les nouveaux droits
d'accès. Ceuxci peuvent s'obtenir de façon relative, par ajout
(symbole +) ou retrait () par rapport aux droits existants, ou
bien de façon absolue, en fixant les nouveaux droits qui
remplacent les anciens
Gestion des fichiers sous
GNU/Linux
●
les changements, sur le modèle "à quelle(s) catégorie(s), quelle
action, quel(s) droit(s)" sont alors notés symboliquement :
[u g o a] [+ =] [r w x]
● par exemple chmod u+x fichier signifie "ajouter le droit
d'exécution au propriétaire du fichier"
● exemple : chmod [R] gorwx /home/toto enlève tous les
permissions d'accès des fichiers du rép. personnel de toto (et des
sousrép.), à tous sauf au propriétaire, c'estàdire toto.
●
chmod u=rwx,g=r,o= fichiers fixe les permissions à rwxr
●
Gestion des fichiers sous
GNU/Linux
●
chmod 764 test
●
chmod u=rwx,g=rw,o=r test
Gestion des fichiers sous
GNU/Linux
● Umask
●
Par défaut, tous les fichiers créés ont comme droit 666 et les
dossiers 777. L'umask est un masque qui va réduire ces droits.
Lors de la création d'un fichier, le système va soustraitre l'umask
aux droits par défaut. Par l'umask est à 0022.
●
root@localhost # umask 077
Gestion des fichiers sous
GNU/Linux
●
Il existe trois droits spéciaux : suid, sgid et sticky bit. Il sont
ajoutés grâce à la commande chmod
●
suid : 4
●
sgid : 2
● sticky:1
Gestion des fichiers sous
GNU/Linux
●
SUID
● Lorsque vous exécutez une commande, celleci se lance avec
votre uid. Cette commande aura donc accès seulement aux
fichiers sur lesquels vous possédez des droits. Si le suid est placé
sur un exécutable, ce dernier se lancera avec l'uid de son
propriétaire.
Gestion des fichiers sous
GNU/Linux
●
SGID
●
Le droit sgid fonctionne de la même façon que le suid en ce qui
concerne les exécutables. Mais le sgid peut aussi être attribué à un
dossier. Tout fichier créé dans un dossier portant le sgid aura comme
groupe propriétaire le groupe du dossier.
●
Sticky
Si vous possedez le droit d'écriture sur un dossier, vous pouvez
renommer ou supprimer tous les fichiers qu'il contient. Ce
fonctionnement n'est pas adéquat pour un dossier public, où tout le
monde à accès en écriture comme "/tmp". Si le sticky bit est placé sur
un dossier, seul le possesseur d'un fichier pourra le renommer ou le
supprimer. Pour positionner ce droit : chmod +t rep
Gestion des fichiers sous
GNU/Linux
●
TP
●
Changer (en tant qu'utilisateur esgis) les droits sur le compte
esgis afin que les autres utilisateurs ne puisse pas y accéder.
●
Créer un répertoire dans /tmp qui ne soit accessible (rx) que par
les membres du groupe esgis, puis y créer (toujours en tant que
esgis) un fichier perso qui soit lisible et modifiable par les
utilisateurs du groupe esgis, mais pas par les autres
●
Tester (ajouter un autre utilisateur au groupe esgis)
●
Les utilisateurs du groupe esgis peuventils supprimer le fichier
perso? Pourquoi?
Gestion des utilisateurs sous
GNU/Linux
●
Loguer vous sur le compte esgis.
●
Essayer de supprimer ou de modifier le fichier
/var/log/messages. Que se passetil?
●
A l'aide de la commande id, vérifier votre identité et le(s)
groupe(s) auquel vous appartenez.
●
Créer un petit fichier texte (de contenu quelconque), qui soit
lisible pour tout le monde, mais pas modifiable (même pas par
vous)
●
Créer un repertoire nommé secret, dont le contenu soit visible
uniquement par vous même. Les fichiers placés dans ce répertoire
sontils lisibles par d'autres membres de votre groupe?
Gestion des fichiers sous
GNU/Linux
● Créer un répertoire nommé connaisseurs tel que les autres
utilisateurs ne puissent pas lister son contenu mais puissent lire
les fichiers qui y sont placés. On obtiendra:
●
$ ls connaisseurs
● ls: connaisseurs: Permission denied
●
$cat connaisseurs/toto
Gestion des fichiers sous
GNU/Linux
●
lecture du contenu du fichier
●
Chercher dans le repertoire /usr/bin trois exemples de
commandes ayant la permission SUID. De quelles genres de
commandes s'agit il?
●
Tapez umask de manière que les fichiers lors de leur créaion
aient les droits 640. Tester.
Gestion des processus sous
GNU/Linux
●
Un des avantages des lignes de commandes par rapport
aux environnements graphiques est la facilité avec
laquelle elles permettent de contrôler les processus.
Cette section décrit les principales méthodes pour lancer
et arrêter un processus, ainsi que pour lui fournir les
données sur lesquelles il doit travailler et récupérer ses
résultats.
●
Qu'est ce qu'un processus
●
On appelle processus, un programme chargé en
mémoire centrale et en cours d'exécution. Il est géré par
le système d'exploitation.
Gestion des processus sous
GNU/Linux
●
Chaque processus peut créer luimême des processus.
Ces nouveaux processus sont alors appelés processus
enfants (child process).
●
Un pseudo processus est crée au moment du démarrage
du système et a comme PID le numéro 0. Il crée lui
même un processus enfant, avec le numéro 1. Le
processus numéro 1 est appelé processus init. Ce
processus init est responsable de tous les processus en
cours dans le système. Il permet d'afficher à l'écran le
login et d'utiliser le shell.
Gestion des processus sous
GNU/Linux
●
Vous pouvez remplacer le mot processus par
programme, commande ou tâche. Sous linux, il n'y a
pas de différence entre un programme et une
commande. En général, les programmes texte comme ls
sont décrits comme des commandes.
●
Un programme ou une commande est un fichier
exécutable. Il se différencie des autres fichiers par le fat
que son bit x est activé.
●
Ce n'est que lors du démarrage d'un fichier de
programme qu'un processus (ou tâche) est créé par le
noyau linux.
Gestion des processus sous
GNU/Linux
●
Où sont les fichiers *.exe sous linux?
●
il n'y e a pas. Les programmes exécutables sont
identifiés par l'existence de leur bit d'accès x.
L'extension *.exe comme sous Windows serait donc
redondante.
●
Aujourd'hui cette réponse n'est plus tout à fait vraie, car
il existe maintenant quelques fichiers *.exe isolés sur de
nombreux systèmes linux. Il s'agit de programmes
developpés dans le langage C# et exécutés par les
bibliothèques Mono, qui sont une implémentation libre
du framework .NET de Microsoft.
Gestion des processus sous
GNU/Linux
●
Il existe deux type de processus :
●
Les processus systèmes :
●
Il ne sont attachés à aucun terminal. Le rôle des
processus système est de rendre des service. Ils scrutent
constamment le système pour répondre à une demande
( exemple : demande de connexion) ou pour effectuer
des tâches comme les impressions ou le schedulling des
processus. Ils sont appelés des Daemons et ils attendent
en arrière plan que l’on ait besoin de leurs services.
Gestion des processus sous
GNU/Linux
●
Les processus utilisateur :
●
Ce sont des processus lancés par un utilisateur. Ils
peuvent fonctionner en avant plan ou en arrière plan.
Lorsque l’utilisateur se déconnecte de son terminal an
arrêtant sa session, tous les processus qui lui sont
associés sont détruits (sauf si l’utilisateur a lancé
l’exécution du processus avec la commande nohup)
Gestion des processus sous
GNU/Linux
●
Démarrer des programmes
●
Sous X, on utilise le menu ou des icônes. KDE et
GNOME permettent de saisir le nom du programme
dans la boîte de dialogue avec le raccourci Alt+F2.
●
Vous pouvez aussi démarrer un programme dans une
fenêtre d'interpréteur de commandes (par exemple
xterm) ou une console texte. Saisissez le nom du
programme et appuyez sur entrée. Lorsqu'on saisie une
commande, l'interpréteur de commande effectue une
recherche dans tous les répertoires listés dans la
variable d'environnement PATH: echo $PATH
Gestion des processus sous
GNU/Linux
●
Lorsque vous désirez lancer un programme qui ne se
trouve pas dans l'un de ces répertoires, vous devez
indiquer le chemin complet du fichier. Pour exécuter les
programmes du répertoire courant, il faut préfixer le
chemin d'un point. Par exemple ./monprogramme.
Gestion des processus sous
GNU/Linux
●
Résumé sur le bash
●
Bourne again shell. Il permet de lancer des commandes
dans une fenêtre de console . Il est également un
interprêteur de commandes. Il fournit un langage de
programmation qui peut être utilisé pour developper
des applications (scripts shell)
●
Un shell est une interface utilisateur entre le système
Linux et l'utilisateur. L'interprêteur de commande
permet d'appeler des commandes Linux et des
programmes. Il est comparable à command.com de MS
DOS.
Gestion des processus sous
GNU/Linux
●
Le bash est le shell par défaut de la plupart des distributions Linux. La
commande echo $0 renvoie le nom de l'interpréteur courant. Le shell par
défaut est enregistré dans /etc/passwd. Pour passer à un autre shell, lancez la
commande chsh. Les interpréteurs de commandes sont enregistrés dans /bin.
Vous devez par exemple indiquer /bin/csh si vous voulez lancer csh par
défaut. Les interpréteurs sont listés dans /etc/shells.
●
Lorsque vous quittez un interpréteur, les dernières commandes utilisées sont
enregistrées dans le ficher ~/.bash_history.
●
La commande alias permet d'économiser quelques touches lorsqu'on saisit les
commandes. Exemple: alias cdb='cd /home/esgis'
Gestion des processus sous
GNU/Linux
●
Les alias peuvent être supprimés avec la commande unalias. Ils
sont valables jusqu'à ce que l'utilisateur quitte l'interpréteur de
commandes. Si vous voulez l'utiliser fréquemment, l'ajouter dans
le fichier .bashrc de votre répertoire personnel.
Gestion des processus sous
●
Expliquez:
GNU/Linux
● commande > fichier
commande < fichier
commande >& fichier
commande &> fichier
commande >> fichier
commande1 | commande2
commande | tee fichier
commande1 ; commande2
commande1 && commande2
commande1|| command2
commande &
commande1 & commande2
Gestion des processus sous
GNU/Linux
●
Expliquez:
●
commande > fichier (envoie la sortie standard de commande dans fichier)
commande < fichier (lit l'entrée standard de commande dans fichier)
commande >& fichier (redirige la sortie standard et les messages d'erreur)
commande &> fichier (redirige la sortie standard et les messages d'erreur)
commande >> fichier (ajoute la sortie standard à un fichier existant)
commande1 | commande2(envoie la sortie standard de commande1 à l'entrée standard de la
commande2)
commande | tee fichier (affiche la sortie et enregistre le résultat dans fichier)
commande1 ; commande2 (lance les deux commandes l'une après l'autre)
commande1 && commande2 (lance commande2 si commande1 s'est bien déroulé)
commande1|| command2 (lance commande2 si commande1 ne s'est pas bien déroulée)
commande & (lance commande en tâche de fond)
commande1 & commande2 (lance commande1 en tâche de fond et commande2 an avant plan
Gestion des processus sous
GNU/Linux
●
find / name '*sh' > resultat &
●
find / name '*sh' > resultat & ls
●
ls;date
●
(ls;date)>fichier
●
echo /*
●
echo /[af]*
Gestion des processus sous
GNU/Linux
Lorsqu'une commande est lancée en arrière plan, le shell affiche
deux nombres qui permettront de l'identifier par la suite. Le
premier nombre, indiqué entre crochets, est le numéro de « job »
du shell. Ce numéro sert à identifier les commandes du shell de
manière unique. Un job est donc en réalité une commande du
shell, simple ou complexe. Le deuxième numéro est le numéro de
processus (« PID », pour « Process IDentifier ») dans le système
du processus maître du job. Le PID est un numéro unique dans le
système, qui permet d'identifier de manière unique les processus
en cours. Ces deux nombres permettront de manipuler les
processus, avec les commandes que l'on verra plus tard.
Gestion des processus sous
GNU/Linux
● Les commandes sur les processus
●
ps
Permet de lister les processus suivant un certain nombre de
critères
●
top
Permet d'avoir un suivi de l'évolution des processus et ce faisant,
d'effectuer des traitements comme on pourrait le faire avec ps,
mais de façon interactive
Gestion des processus sous
GNU/Linux
● pstree
Permet de lister les processus dans un arbre indiquant les liens de
parentés entre eux
●
jobs
Permet de lister les processus lancés dans le shell courant
Gestion des processus sous
GNU/Linux
●
Jobs : obtenir la liste des jobs avec leurs lignes de commandes. Elle affiche,
dans l'ordre, le numéro de job, l'état du processus correspondant, et la ligne de
commande.
●
top
La commande top vous permet d'afficher des informations en continu sur
l'activité du système. Elle permet surtout de suivre les ressources que les
processus utilisent (quantité de la RAM, pourcentage de CPU, la durée de ce
processus depuis son démarrage).
Options :
●
d spécifie un délai de rafraîchissement (en secondes)
●
k stopper un processus de manière interactive en cours d'utilisation, taper
ensuite le nom du signal à envoyer
15 (SIGTERM), met fin à un processus
9 (SIGKILL) est plus brutal
Gestion des processus sous
GNU/Linux
●
ps La
commande ps permet de connaître les processus actifs à un moment
donné :
●
$ps
[toto]$ ps
PID TTY TIME CMD
30111 pts/2 00:00:00 bash
30195 pts/2 00:00:00 ps
●
Le champ "PID" est l'identificateur d'un processus, c'est un nombre.
Chaque processus est identifié dans le système par un nombre unique.
●
Le champ "TTY" indique à quel port de terminal est associé le
processus.
Gestion des processus sous
GNU/Linux
●
Le champ "TIME" indique depuis combien de temps le processus utilise
les ressources du microprocesseur.
●
Le champ "COMMAND" précise, comme son nom l'indique, la
commande dont l'état est décrit par PID, TTY, STAT et TIME.
●
Une simple commande "ps" n'indique pas tous les processus du
système. La commande ps nous a juste indiqué les processus associés à
un terminal et qui dépendent de l'utilisateur courant..
● Options :
●
ps x visualise tous les processus actifs de l'utilisateur courant (y
compris ceux qui ne sont pas liés à un terminal
●
Exemple :
[toto]$ ps x
Gestion des processus sous
GNU/Linux
●
PID TTY STAT TIME COMMAND
29894 pts/0 S 0:00 bash
29904 pts/0 S 0:00 sh
30111 pts/2 S 0:00 bash
30251 pts/2 R 0:00 ps x
●
(Les commandes qui ne sont pas associées à un terminal sont reconnaissables
par le point d'interrogation qui rempli le champ TTY.)
●
ps ax visualise tous les processus de la machine de tous les utilisateurs
ps aux affiche les utilisateurs associés à chaque processus
D'autres champs nous donnent plus d'indications :
●
Le champ "USER" indique l'utilisateur du processus.
Gestion des processus sous
GNU/Linux
Le champ "%CPU" donne les ressources du microprocesseur utilisées par le
processus
Le champ "%MEM" indique les ressources en mémoire vive utilisées par le
processus
Le champ "RSS" donne réellement la mémoire utilisée en kilobytes par le
processus
Le champ "START" indique l'heure à laquelle le processus a été lancé.
Le champ "STAT" indique l'état dans lequel se trouve le processus.
Gestion des processus sous
GNU/Linux
●
Chaque processus se trouve au cours de sa vie placé, par le
scheduleur, dans un état qui peut être entre autres :
●
Prêt (Ready) : processus activable (éligible) : il ne dispose pas
du processeur de la machine pour commencer ou continuer son
exécution. Il attend donc que le scheduleur lui accorde son
quantum de temps. En résumé, il attend son tour.
●
Actif : processus élu disposant du processeur de la machine. Il
en dispose tant que son quantum de temps n’est pas épuisé ou
qu’il ne soit pas en attente d’entrée/Sortie (Exemple : attente
d’une saisie clavier)
Gestion des processus sous
GNU/Linux
●
Endormi (Sleep) ; processus en attente d’un signal, d’une réponse. Le
scheduleur endort le processus au bout d’un certain temps pour ne
plus être embêté par lui. Lorsque le signal attendu arrive, ce processus
va être réveillé puis placé en état Prêt.
●
Attente E/S : attente de pouvoir effectuer une opération
d’Entrée/Sortie.
●
Terminated : processus terminé, aynt libéré toutes ses ressources, mais
pas encore enlevé de la table des processus.
●
Intermédiate : le processus est en cours de chargement en mémoire
Gestion des processus sous
GNU/Linux
●
PSTREE
●
Cette commande permet d'afficher les processus et de voir leurs
processus dépendants
●
Notion de signal
– Dans un système Unix, tous les processus peuvent recevoir des
messages, envoyés soit par l'utilisateur, soit par un autre
processus, soit par le système. Ces messages sont appelés signaux.
– L'envoi d'un signal se fait avec la commande kill, avec la syntaxe
suivante : kill [signal] PID
Gestion des processus sous
GNU/Linux
●
Notion de signal
– 15: Signal de terminaison de processus.
– 9: Signal de destruction inconditionnelle de processus.
– 19: Signal de suspension de processus.
– 18: Signal de reprise d'exécution d'un processus suspendu.
Gestion des processus sous
GNU/Linux
●
Arrêt d'un processus
– Tout processus lancé en ligne de commande peut être arrêté
immédiatement sous Linux. Pour cela, deux méthodes sont
disponibles. La première consiste à taper la combinaison de touche
CTRL+C lorsque le processus est en cours d'exécution interactive
(c'est à dire lorsqu'il n'a pas été lancé en arrière plan). S'il a été
lancé en arrière plan, on peut soit le ramener en avant plan (avec
la commande fg, que l'on verra plus loin) avant d'utiliser CTRL+C,
soit lui envoyer le signal de terminaison à l'aide de la commande
kill vue précédemment.
Gestion des processus sous
GNU/Linux
●
Gel d'un processus
Il est possible de « geler » un processus en cours d'exécution, c'est à
dire de le suspendre, sans pour autant l'arrêter définitivement. Ceci
peut être utilisé pour libérer un peu les capacités de calcul, lorsque ce
processus consomme trop de ressources par exemple. Pour cela, deux
méthodes sont possibles :
●
soit on utilise la combinaison de touches CTRL+Z, lorsque le
processus est en avant plan ;
●
soit on envoie le signal 19 au processus (signal « STOP ») à l'aide de
la commande kill lorsqu'il est en arrière plan.
Gestion des processus sous
GNU/Linux
●
fg %N° de Job : Permet de mettre un processus en avant plan
●
bg %N° de Job : Permet de mettre un processus en arrière plan
●
CtrlZ: Permet de mettre un processus en attente
Gestion des processus sous
GNU/Linux
●
Modification des priorités du Scheduler
Les processus possèdent des priorités modifiables. En effet les propriétés
évoluent sur une échelle de 20 (très faible) à 20 (très élevée). Tout
processus, au lancement, peut avoir une priorité quelconque supérieure
ou égale à zéro. Par contre un processus lancé par un utilisateur, à son
exécution et durant celleci ne peut avoir une priorité négative. Seul
l'administrateur système possède ce droit. Par défaut un processus est
lancé avec la priorité 10. Les commandes permettant de contrôler les
priorités des processus sont nice et renice.
●
nice priorité: Permet d'affecter une priorité aux processus dès leur
lancement; n N :permet d'ajuster la priorité par défaut à N exemple:
nice n 10 sauvegarde
●
renice priorité: Permet de modifier la priorité d'un processus alors
que celuici est déjà lancé; u "User" :change la priorité de tous les
processus d'un utilisateur
Gestion des processus sous
GNU/Linux
●
Ce TP doit être exécuté en mode console
●
Sur le TTY2 , ouvrez une session puis lancer vi. A partir du TTY1,
lister les ancètres de la commande vi lancé sur le TTY2 grace à la
commande pstree. Exécuter la commande ps el|more puis psel|
grep vi. A partir de la commande précédente, donner l'arbre
ancestral de vi jusqu'à son premier PPID qui est init. Exécuter
maintenant la commande ps elH|more. Expliquer. Retrouver les
ancètres de vi à partir de la commande précédente. Y a t'il une
différence entre les trois commandes? A partir du PID de vi
exécuter la commande ps p PID o pid,ppid,comm= . Quelle
remarque faitesvous. A partir de la commande précédente,
Gestion des processus sous
GNU/Linux
●
Ce TP doit être exécuté en mode console
●
reconstituer l'arborescence de vi. Parmi les 4 commandes
étudiées, quelles sont les 2 commandes qui permettent de donner
facilement l'arborescence d'une commande? A partir de la
commande kill, fermez la session en cours sur TTY2.
Gestion des processus sous
GNU/Linux
●
Ce TP doit être exécuté en mode graphique
●
Ouvrez un terminale gnome. Lancez la commande xterm. Donnez
l'arborescence de xterm à partir de TTY1. A partir de la
commande kill, fermer le terminal gnome que vous avez ouvert.
Que remarquez vous? A partir de la commande kill, fermez la
console xterm.
Gestion des processus sous
GNU/Linux
●
1 Créer dans votre répertoire de connexion 3 programmes
nommés pg1 et pg2 et pg3.
●
pg1 affiche la liste des utilisateurs connectés à votre système
● Pg2 est un pg qui prend en argument un nombre quelconque de
noms de fichier et affiche pour chacun : son nom si c'est un
fichier regulier non executable suivi de la mention "est un fichier
non executable", son nom si c'est un fichier regulier executable
suivi de la mention "est un fichier executable", la liste de tous
les fichiers réguliers executables d'extension ".txt" qu'il contient si
c'est un repertoire
Gestion des processus sous
GNU/Linux
●
Pg3 est un pg qui affiche pour chaque fichier du repertoire
courant une ligne de la forme nom_fichier taille.
●
Lancez l'exécution des 3 programmes et vérifier qu'ils
fonctionnent.
Gestion des processus sous
GNU/Linux
●
En utilisant les fonctionnalités du shell (&, fg, bg) lancer en une
seule commande les programmes suivants:disksadmin, sound
juicer,firefox, servicesadmin,speakertest,software
properties,soffice,gedit
●
. Mettre en premier plan la troisième, l'arrêter (Ctrl+Z), puis la
relancer en arrière plan.
●
A l'aide de la commande jobs et kill %n , arrêter tous les
programmes .
●
Même question en utilisant les commandes ps et kill (avec un PID
)
Démarrage et Arrêt des
services ou des démons sous
GNU/Linux
●
2 méthodes
●
# les scripts de /etc/init.d/ sont appelés avec un paramètre start, stop,
status, restart Par exemple si on a modifié la configuration du serveur
Samba dans le fichier smb.conf, il faut relancer ce service par la
commande /etc/init.d/smb restart
●
invoke.rc.d nom start/reload/restart/stop
●
Quand on souhaite démarrer un service au boot il faut placer dans le
fichier /etc/rc.local le script de démarrage du service
Automatisation de tâches
sous GNU/Linux
●
Grace au démon cron, le système peut automatisé les tâches de
maitenance: rotation des fichiers de journalisation, suppression des
fichers temporaires, actualisation des répertoires, etc...
●
La configuration globale de cron se trouve dans le fichier /etc/crontab
Gestion de l'impression sous
GNU/Linux
●
Avec CUPS, NFS, SAMBA
●
CUPS
●
Que votre imprimante soit branchée à un seul ordinateur ou utilisé sur
un réseau, un service s’occupe de la communication avec elle. Pour la
plupart des distributions, il s’agit de CUPS
●
La philosophie d'impression sous Unix/Linux sur les imprimante
Postscript. Postscript est un langage de programmation pour décrire le
contenu des pages. L'imprimante Postscript attend les données dans
ce format . Pour imprimer cp fichier.pS /dev/lp0, cp fichier.ps
/dev/ttyS0, cp fichier.ps /dev/usb/lp0, respectivement impression sur
le por parallèle, port série, port USB. Quel que soit le système
d'impression utilisé sur votre ordinateur, la commande est toujours la
même: lpr Pnom fichier
Gestion de l'impression sous
GNU/Linux
●
CUPS – Configuration d'une imprimante
Fichier de configuration /etc/cups/cupsd.conf
● Administrable par un navigateur HTTP sous http://localhost:631
● Grâce au programme fourni par votre distribution.
Bureau/Administration/Impression
Gestion de disque sous
GNU/Linux
●
Tous les périphériques sont représentés dans le dossier "/dev". On
distingue trois types de disques : les IDE et les SCSI et les SATA. Ils
sont nommés respectivement "hd" et "sd" suivit d'une lettre et d'un
chiffre. La lettre représente la position du disque sur le bus et le chiffre
représente l'une des partition de ce disque.
●
Par exemple, le disque maître du premier contrôleur IDE sera nommé
"/dev/hda". La seconde partition de ce disque sera "/dev/hda2"
●
Un disque ne peut contenir que 4 partitions primaires. Mais il est
possible de remplacer une partition primaire par une partition
étendue. Cette partition étendue peut contenir maximum 12 partitions
logiques. Notre disque pourra donc, au maximum, contenir 15
partitions utilisables soit 3 primaires plus les 12 partitions logiques.
Gestion de disque sous
GNU/Linux
●
/dev/hda
●
/dev/hda1
●
/dev/hda2
●
/dev/hda5
●
/dev/hda8
●
/dev/sda
●
/dev/sda1
●
/dev/sdd3
Gestion de disque sous
GNU/Linux
●
/dev/hda premier disque IDA complet (système IDE)
●
/dev/hda1 première partition primaire du premier disque dur
●
/dev/hda2 partition étendue
●
/dev/hda5 première partition logique
●
/dev/hda8 quatrième partition logique
●
/dev/sda premier disque SCSI ou SATA
●
/dev/sda1 première partition primaire du premier disque dur
●
/dev/sdd3 troisième partition primaire du quatrième disque
SCSI/SATA
Gestion de disque sous
GNU/Linux
●
Le code IDE du noyau est relativement ancien et mal maintenu. De ce
fait de plus en plus de distribution acccèdent aux périphériques IDE
par le biais du pilote SCSI. Pour que cela fonctionne, le système SCSI
du noyau a été étendu par des fonctions PATA. (interface ATA
courante avec un accès parallèle aux données) ATA étant l'interface de
connexion des disques durs. Le module correspondant s'appelle libata
et se trouve dans le noyau officiel depuis sa version 2.6.19. Le passage
à libata signifie que tous les supports de données sont accessibles par
le périphériques /dev/s*. Il n'y a plus de périphérique dev/hd*.
●
Noms de périphériques pour les périphériques IDA gérés par le
système IDE: /dev/hda pour le périphérique IDE maître du premier
canal IDE. /dev/hdb pour le périphérique IDE esclave du premier
canal IDE. /dev/hdc pour le périphérique IDE maître du second canal
IDE et /dev/hdd pour le périphérique IDE esclave du second canal
IDE.
Gestion de disque sous
GNU/Linux
●
Lorsque libata est utilisé, les périphériques IDE sont également
nommés dans la suite de périphériques /dev/sda, /dev/sdb, etc.
●
Attention il existe une différence de nommage importante. Lorque
l'ordinateur dispose d'un disque maître sur chacun des canaux IDE
mais pas de disque esclave, les périphériques IDE s'appellent /dev/hda
et /dev/hdc, mais libata les appelle /dev/sda et /dev/sdb.
●
Les cd et dvd reçoivent des noms selon la distribution , /dev/sdcn
ou /dev/srn.
●
exemple: /dev/sdc0 ou /dev/sr0 pour le premier lecteur et /dev/sdc1
ou /dev/sr1 pour le second.
Gestion de disque sous
GNU/Linux
●
Il existe plusieurs outils pour partitionner un disque
dur sous linux. Les plus communs sont :
●
fdisk : utilitaire en mode texte avec menu interactif
●
cfdisk : utilitaire en mode curses (pseudo graphique)
avec une liste des partitions.
Ces deux utilitaires se lancent de la même façon :
commande /dev/disk
Gestion de disque sous
GNU/Linux
●
Il est possible de modifier les partitions d'un disque dur en cours d'utilisation.
Mais vous devrez redémarrer pour que les changements soient prises en
compte.
●
fdisk /dev/hda
●
Si vous ne spécifiez aucun disque en paramètre à fdisk, il prendra par défaut
le disque /dev/sda, ou /dev/hda si aucun disque SCSI n’est installé.
●
fdisk est un programme très peu interactif. Il attend que vous lui
communiquiez les commandes à exécuter en tapant sur une lettre. Les
différentes commandes possibles peuvent être affichées avec la commande ’m’.
●
Lorsque vous créez une partition, vous devez utiliser la commande ’n’, puis
indiquer son type avec les commandes ’p’ (pour « primary ») pour une
partition primaire ou ’e’ (pour « extended ») pour une partition étendue. Vous
devrez ensuite donner son numéro dans la table des partitions, puis indiquer
le début et la fin de la partition. Par défaut, l’unité utilisée par fdisk est le
cylindre.
Gestion de disque sous
GNU/Linux
●
Une fois nos partitions créées, il faut les formater afin de pouvoir créer
un système de fichier dessus. Le système de fichier indique, entre
autres, comment organiser les données sur le disque dur.
●
Dans la majorité des cas, la commande mkfs est utilisée
● Il existe deux moyens d'utiliser la commande mkfs :
● mkfs t type /dev/partition
mkfs.type /dev/partition
Gestion de disque sous
GNU/Linux
●
Les commandes de suivi
●
La commande df permet de visualiser la place disponible sur les
différents systèmes de fichiers raccordés à la machine. Cette
commande affiche : le nom du fichier spécial, la taille totale (en
nombre de blocs), l'espace utilisé, l'espace libre, le pourcentage de
place utilisée, le point de montage .
●
L'option i permet d'afficher les mêmes valeurs pour les inodes.
●
La commande du permet d'afficher la place disque utilisée par un
ensemble de fichiers. Pour chaque fichier, du affiche la place occupée
en nombre de blocs et parcourt les sousrépertoires de façon récursive.
L'option s permet d'afficher la somme des tailles des fichiers pour un
répertoire.
Gestion de périphériques sous
GNU/Linux
●
Monter un système de fichier
●
Comme le système de fichiers Linux se concentre dans une seule arborescence
de fichiers, l'accès et l'utilisation de systèmes extérieurs (disques, disquettes,
cd ..) doit s'effectuer par intégration de ces systèmes de fichiers dans le
système fondamental "racine".
Ce mécanisme d'intégration, souple et paramétrable, s'appelle le montage.
●
Techniquement, l'opération de montage consiste à mettre en relation :
●
un fichier de périphérique situé dans /dev (qui permet la communication
physique avec les données du périphérique)
●
avec un noeud d'insertion dans l'arborescence, appelé son point de montage
Gestion de périphériques sous
GNU/Linux
● Le premier processus init (exécuté au démarrage), après chargement
du noyau, se charge de monter les systèmes de fichiers conformément
aux spécifications du fichier /etc/fstab et effectue leur éventuel
montage automatique. Ce fichier va nous être utile pour deux choses.
Premièrement, on va pouvoir y entrer toutes les partitions à monter
automatiquement au démarrage. Deuxièmement, faciliter l'utilisation
de la commande mount, en entrant toutes les options à utiliser pour
chaque périphérique.
Gestion de périphériques sous
GNU/Linux
●
Dans le fichier "/etc/fstab" chaque ligne représente un périphérique à
monter. Chaque ligne est composée de six parties :
●
le chemin du périphérique, le point de montage, le système de fichier, les
options (argument o de mount), dump : activer ou non la sauvegarde du
disque avec l'utilitaire dump (1 ou 0), fsck : activer ou non la vérification
du système de fichier avec l'utilitaire fsck (0, 1, 2 ou 3)
Gestion de périphériques sous
GNU/Linux
●
Commandes de montage/démontage
●
Il est toujours possible de monter "à la main" les systèmes de fichiers stockés
sur les périphériques disques, cd ... avec la commande interactive
mount/umount
●
Syntaxe générale :
mount t <type > o options /dev/repspécial /mnt/repmontage
Si cette description est présente dans le fichier /etc/fstab, la commande peut
être simplifiée
mount /dev/repspécial ou mount /mnt/repmontage
●
Les types principaux
ext2 (type par défaut), vfat, FAT16 ou FAT32 de Win95 ou Win98, nfs,
système de fichiers distant situé sur un serveur NFS
Gestion de périphériques sous
GNU/Linux
●
Les options
les options par défaut sont:
rw (accès complet), suid (les éventuels permissions SUID et SGID des fichiers
seront pris en compte), dev (permettre l'utilsation des fichiers de
périphériques, exec (permettre l'exécution de fichiers binaires)
●
Exemples
●
mount liste tous les systèmes de fichiers actuellement montés
●
mount /dev/cdrom monte le système du cdrom (si décrit dans fstab)
●
umount /mnt/floppy démonte le système de fichiers disquette
Gestion de périphériques sous
GNU/Linux
●
Exercice
●
monter la partition Windows présente sur votre machine dans le
rép. /mnt/disk, avec les options : l'utilisateur esgis, et le groupe esgis,
seront propriétaires de tous les fichiers, la création d'un fichier
s'effectuera avec le umask 024.
●
Accéder au répertoire MesDocuments présent sur le disque et y créer
le répertoire LINUX_IIR2.
●
Désactivez le montage automatique de cd et de cle usb sur votre
machine.
Gestion de périphériques sous
GNU/Linux
●
Astuces pour ntfs
Pour pouvoir lire et écrire sur le système de fichiers de type ntfs, il faut d'abord
installer un pilote particulier, ntfs-3g.
aptitude install ntfs-3g
mkdir /media/win2
vi /etc/fstab
/dev/sda5 /media/win2 ntfs-3g defaults,user,uid=root,gid=win,umask=024
0 0
mount -a
Gestion de périphériques sous
GNU/Linux
●
mount t vfat o uid=5001,gid=5000,umask=022 /dev/hda1 /mnt/disk
Le Noyau sous GNU/Linux
●
Le noyau UNIX
●
Le noyau est le programme qui assure la gestion de la mémoire, le
partage du processeur entre les différentes tâches à exécuter et les
entrées/sorties de bas niveau. Il est lancé au démarrage du système (le
boot) et s’exécute jusqu’à son arrêt.
●
C’est un programme relativement petit, qui est chargé en mémoire
principale. Le rôle principal du noyau est d’assurer une bonne
répartition des ressources de l’ordinateur (mémoire, processeur(s),
espace disque, imprimante(s), accès réseaux) sans intervention des
utilisateurs. Il s’exécute en mode superviseur, c’est à dire qu’il a accès à
toutes les fonctionnalités de la machine : accès à toute la mémoire, et
à tous les disques connectés, manipulations des interruptions, etc.
Le Noyau sous GNU/Linux
● Compilation du noyau, voir support de cours
Gestion des paquetages sous
GNU/Linux
●
2types:
●
Les Tarballs
●
Les paquetages précompilés
Gestion des paquetages sous
GNU/Linux
●
Les Tarballs
●
La commande tar (=Type ARchive) est une ancienne commande Unix qui
permet aisément d'archiver, c'estàdire de réaliser la sauvegarde d'un
ensemble de fichiers en un seul fichier, que l'on peut également compresser.
●
Syntaxe
●
tar options fichiers
options :
Les 3 premières c x t spécifient les 3 types d'actions de la commande
●
x extraire le contenu d'une archive
●
c créer une nouvelle archive
●
t afficher seulement la liste du contenu de l'archive, sans
l'extraire
●
f fichier indiquer le nom du fichier archive
Gestion des paquetages sous
GNU/Linux
●
Les Tarballs
●
v mode bavard
●
z compresser ou décompresser en faisant appel à l'utilitaire
gzip
●
y compresser ou décompresser avec l'utilitaire bgzip2
●
help aide
Gestion des paquetages sous
GNU/Linux
●
Utilisation et exemples
●
Création
tar cvf sauve.toto.tar /home/toto effectue la sauvegarde de tous les
fichiers du répertoire /home/toto dans le fichier sauve.toto.tar placé dans
le rép. courant
tar cvf /tmp/sauve.toto.tar /home/toto idem, mais le fichier archive est
placé dans le rép. /tmp
tar c /home/toto > sauve.toto.tar variante de la commande précédente
tar cvf sauve.toto.tar /home/toto
tar cvzf sauve.toto.tar.gz /home/toto effectue une compression en plus
●
Listage
tar tvf sauve.toto.tar pour connaitre l'arborescence regroupée dans le
fichier archive, en particulier la place où sera installée son contenu lors du
désarchivage.
L'utilitaire mc, avec sa fonction d'édition F3, permet d'effectuer le même
listage de l'archive
Gestion des paquetages sous
GNU/Linux
●
Extraction
●
tar xvf sauve.toto.tar exécute le désarchivage dans le répertoire
courant.
si l'archive a été créée par tar cvf sauve.toto.tar /home/toto, il faut se
placer à la racine / pour restorer exactement le rép. perso de toto.
décompresse et désarchive
tar xvfz sauve.tar.gz home/toto/tmp ne désarchive dans l'archive,
que le rép. désigné
Gestion des paquetages sous
GNU/Linux
● Compression avec gzip
● La commande gzip
●
Elle est utilisée pour compacter un fichier quelconque, et en
particulier une archive tar.
Le décompactage se fait par la commande gunzip, ou de manière
totalement équivalente par gzip d.
Elle peut décompacter les fichies .gz, mais aussi les fichiers .z, .Z
●
Options
●
1 ...9 fixe le niveau de compression
●
d décompresse
●
c écrit sur la sortie standard au lieu de remplacer le fichier
d'origine (possibilité d'utiliser un tube)
●
l affiche des infos sur la dé/compression.
Gestion des paquetages sous
GNU/Linux
r dé/compresse tous les fichiers du rép. passé en argument.
●
h aide
●
Exemples
●
gzip backup.tar /home/toto compresse backup.tar et le
remplace par le fichier backup.tar.gz, d'une taille beaucoup plus
réduite.
Attention, le fichier d'origine est donc détruit !
●
gzip 9 *.txt compresse au maximum chaque fichier .txt
séparément, et les renomme en ajoutant le suffixe .gz
●
Autre utilitaire
●
bzip2 admet la même syntaxe que gzip, mais compresse mieux
avec un besoin accru de mémoire
Gestion des paquetages sous
GNU/Linux
●
L'utilitaire RPM (=RedHat Package Manager) gère une base de
données des applications déjà installés. Il permet d'installer (et de
désinstaller) facilement les nouvelles applications qui sont disponibles
sous forme d'une fichier "paquetage". De plus, pendant une mise à
jour RPM conserve les fichiers de configuration déjà présents.
●
rpm q nomfichier.rpm , pour obtenir de l'information
Cette commande suppose la connaissance exacte du nom du
paquetage (y compris respect de la casse). Sinon utiliser la commande
rpm qa | grep i nom
●
rpm i nomfichier.rpm, commande générale d'installation
●
rpm ivh nodeps nomfichier.rpm, pour contourner le refus
d'installer en raison de dépendances non satisfaites.
Gestion des paquetages sous
GNU/Linux
●
L'installation, la mise à jour et la suppression des applications
s'effectue en ligne aisément avec la commande apt-get.
Cette commande interroge les serveurs déclarés dans le fichier
/etc/apt/sources.list et prend en charge directement le
téléchargement et l'installation des dépendances, c'estàdire des
programmes prérequis (indispensables au bon fonctionnement du
logiciel).
● Par contre, pour installer un paquet isolé absent d'une source il faut
utiliser la commande dpkg
●
Tous les paquets installés sur le système sont décrits dans
/var/lib/apt/lists/ et /var/lib/dpkg/available/
Leur documentation se trouve dans /usr/share/doc/paquet/
Gestion des paquetages sous
GNU/Linux
●
debconf est une interface générale appelée lors de la configuration des
paquets. Elle questionne l'utilisateur sur la configuration du paquet
avant qu'il ne soit installé, en le guidant dans les choix tout en lui
proposant une option raisonnable par défaut .
●
Intégrer une source CDROM
●
aptcdrom add
●
less /etc/apt/sources.list
Gestion des paquetages sous
GNU/Linux
●
dpkg : installer et configurer un paquet
●
Utilité : indispensable pour installer un paquet isolé
Problème : attention dpkg ne gère pas les dépendances, il faut donc installer auparavant
les paquets prérequis
●
# installer 2 paquets
●
dpkg i paquet1.deb paquet2.deb
●
# désinstaller un paquet sans supprimer ses fichiers de configuration
●
dpkg r paquet.deb
●
# supprimer un paquet et sa configuration
●
dpkg purge paquet.deb
●
# reconfigurer un paquet déjà installé :
●
dpkgreconfigure apache
Gestion des paquetages sous
GNU/Linux
●
# pour controler l'affichage de la liste de tous les paquets
●
dpkg l | less
●
# pour filtrer (les noms des paquets sont toujours en minuscules)
●
dpkg l | grep gcc
●
# pour afficher la liste des fichiers du paquet
●
dpkg L nettools
●
# pour connaitre le paquet qui a installé une commande ou une application
●
whereis ifconfig > /sbin/ifconfig
●
dpkg S /sbin/ifconfig > nettools
●
# pour reconfigurer un paquet déjà installé
●
dpkgreconfigure gpm
Gestion des paquetages sous
GNU/Linux
●
Utilitaires apt
●
apt = advanced packaging tools est une interface de système de
gestion des paquets Debian, en ligne de commande
(voir http://www.debian.org/doc/manuals/apthowto/)
Il existe maintenant des interfaces d'utilisation de apt plus
conviviales :
aptitude : mode texte plein écran, fortement recommandée
synaptic : mode graphique, à installer si possible
Gestion des paquetages sous
GNU/Linux
●
Fonctionnement
●
fichier des sources : afin d'automatiser, on déclare et décrit de
façon permanente les sources de paquets (cdrom, url ..) à
télécharger, dans le fichier /etc/apt/sources.list
La syntaxe de chaque ligne est : deb <URL> <distribution>
<sections>, où :
●
<URL> utilise un protocole file:// ou http:// ou ftp://
<distribution> est stable ou testing ou unstable <sections> est
une liste de répertoire pris dans (main, contrib, nonfree)
●
Exemple de configuration des sources de paquets
/etc/apt/sources.list
Gestion des paquetages sous
●
Commandes
GNU/Linux
●
aptget Pour maintenir les paquets
●
aptget install :Installer ou mettre à jour un paquet
●
aptget install gcc
●
aptget remove
●
Supprimer un paquet installé
●
aptget remove gpm
●
aptget update
●
Mise à jour de l'indexation des paquets à partir des sites sources
●
aptget upgrade
●
Mise à jour générale des dernières versions de tous les paquetages du système
Gestion des paquetages sous
GNU/Linux
●
aptcache search
●
Donne la liste des paquets contenant un motclé
●
aptcache search se3
●
aptcache show
●
Donne donne une rapide description d'un paquet
GNU/Linux et le réseau
●
Un réseau d’ordinateurs est une combinaison de matériels et de logiciels qui
permet aux ordinateurs et autres périphériques (imprimantes, modems etc…)
de communiquer entre eux à travers diverses formes de média de
télécommunication.
●
Les réseaux peuvent être classifiés selon les distances qu’ils couvrent et selon
qu’ils incluent la technologie web.
●
LAN (Local Area Network) : un réseau confiné à une petite zone
géographique.
●
Intranet: un LAN qui inclut un serveur web
●
WAN (Wide Area Network) : Un réseau qui couvre une large zone
géographique comme par exemple, une ville, un pays etc…
●
Internet : Le réseau global qui supporte la technologie web
GNU/Linux et le réseau
●
TCP/IP
●
TCP/IP est une suite de protocoles permettant à tous types d ’ordinateurs,
utilisant divers systèmes d ’exploitation de communiquer entre eux. Développé
à la fin des années 60 comme une solution de réseau à commutation de
paquets, il est devenu depuis les années 90, le protocole le plus utilisé dans les
réseaux d ’ordinateurs. C ’est un système ouvert qui constitue la base de
l’Internet.
●
Il fournit les couches 3 et 4 du modèle ISO. IP ou Internet Protocol est la
couche réseau qui contrôle le mouvement des paquets sur le réseau. IP ne
s’assure pas que les paquets sont délivrés. IP fonctionne en mode non
connecté. Deux protocoles assurent la couche transport: TCP et UDP. TCP
fonctionne en mode connecté et s ’assure que les paquets sont délivrés. UDP
transfert seulement des paquets de données appelés DATAGRAMS entre les
machines.
GNU/Linux et le réseau
●
Adressage IP
Chaque machine sur l'Internet est identifiée par une adresse IP. L'adresse IP
doit être unique. Si deux machines ont la même adresse IP, le réseau ne
saurait à qui délivrer les données. Pour assurer l ’unicité des adresses IP, elles
sont allouées en bloc. Une adresse IP de IPv4 est un nombre binaire de 32
bits, Une chaîne de caractères de 32 zéros et uns. Une adresse IP de Ipv6 est
un nombre binaire de 128 bits. Déja en production.
●
Pour des facilités d'écriture, Les adresses IP sont fractionnées en quatre pièces
de 8 bits et converties en décimal avec un point entre les différentes parties
( exemple 192.168.0.1). The Internet Assigned Numbers Authority (IANA),
donne autorité sur des blocs d ’adresses aux organes d’enregistrement. Les
organes d’enregistrement (RIPE NCC, ARIN, APNIC, AFRINIC) assignent de
larges blocs d’adresses IP aux ISP qui en retour les fractionnent en des blocs
plus petits pour leurs clients . Pour créer les blocs, les adresses IP sont
fractionnées en deux parties : adresse réseau (préfixe) et l’adresse
machine. Pour spécifier la position du fractionnement, vous pouvez utiliser un
slash et un nombre de bits de la partie réseau.
GNU/Linux et le réseau
●
Par exemple, le bloc d’adresse ‘’199.2.192.64/26 ‘’ a 26 bits pour le réseau ; les
six restants pour les machines. Pour qu’un réseau IP fonctionne, il est vital que
toutes les machines sur un réseau ait la même adresse réseau (dans ce
exemple, les 26 bits de gauche) et différentes adresses machines.
●
Masque de sousréseau
La séparation entre l’adresse réseau et l’adresse machine peut être aussi
représentée par un masque de sousréseau. Ce qui n’est qu’un nombre de ‘1’ a
chaque position de l’adresse réseau, et un ‘0’ pour chaque bit de l’adresse
machine. Par exemple, le masque pour un réseau /26 est 26 ‘1’ et 6 ‘0’.
●
Adressage privé: L’IANA( www.iana.org) a réservé les trois blocs d ’adresses IP
suivants pour les Internets privés:
– 10.0.0.0 10.255.255.255 (10/8)
– 172.16.0.0 172.31.255.255 (172.16/16 )
– 192.168.0.0 192.168.255.255 (192.168/24)
GNU/Linux et le réseau
●
Routage IP
●
De base, le routage IP est simple. Si la destination est directement connectée à
la source (liaison point à point) ou sur un média partagé (Ethernet par
exemple), Le paquet est directement envoyé à la source. Dans le cas contraire,
le paquet est envoyé à un routeur par défaut.
●
Configuration réseau d’une machine
– La configuration du réseau nécessite donc la configuration du protocole
IP et des services TCP, UDP et ICMP (entre autres). Cette opération se fait
en définissant l'adresse IP le masque de sousréseau et les routes à utiliser.
Vient ensuite la configuration du nom de la machine locale, de son
domaine, des noms de machines qu'elle peut résoudre ellemême et des
serveurs de DNS qu'elle doit utiliser pour les autres noms.
GNU/Linux et le réseau
●
Configuration statique des interfaces réseau
●
La principale commande permettant de configurer le réseau est la commande
ifconfig. Comme son nom l'indique (« InterFace CONFiguration »), elle
permet de configurer les interfaces réseaux de la machine. Il faut savoir qu'il
existe plusieurs types d'interfaces réseaux. Les plus courants sont les trois
types d'interfaces suivants :
●
l'interface loopback, qui représente le réseau virtuel de la machine, et qui
permet aux applications réseaux d'une même machine de communiquer entre
elles même si l'on ne dispose pas de carte réseau ;
●
les interfaces des cartes réseaux (que ce soient des cartes Ethernet, TokenRing
ou autres) ;
●
les interfaces ppp, plip ou slip, qui sont des interfaces permettant d'utiliser les
connexions sérielles, parallèles ou téléphoniques comme des réseaux.
GNU/Linux et le réseau
●
La configuration d'une interface comprend l'initialisation des drivers nécessaires à son
fonctionnement et l'affectation d'une adresse IP à cette interface. La syntaxe générale
que vous devrez utiliser est la suivante : ifconfig
interface adresse netmask masque up où interface est le nom de l'interface réseau
que vous voulez configurer, adresse est l'adresse IP que cette interface gérera, et
masque est le masque de sousréseau que vous utilisez. Les interfaces que vous aurez à
configurer seront certainement des interfaces Ethernet, auquel cas vous devrez utiliser
les noms eth0, eth1, etc. dans la commande ifconfig. Si vous désirez configurer
l'interface loopback, vous devrez utiliser le nom d'interface lo.
●
Le paramètre up donnée à ifconfig lui indique que l'interface doit être activée. Cela
signifie que dès que la commande ifconfig s'achèvera, votre interface réseau sera active
et fonctionnelle. On ne peut faire plus simple... Bien entendu, il existe le paramètre
inverse : down. Ce paramètre s'utilise tout simplement dans la commande ifconfig avec
la syntaxe suivante : ifconfig interface down
●
ifconfig eth0 192.168.0.1 netmask 255.255.255.0 up
GNU/Linux et le réseau
●
Enfin, il est possible d'affecter plusieurs adresses IP à certaines interfaces
réseau. C'est en particulier le cas pour toutes les interfaces réseau classiques,
mais bien entendu cela n'est pas réalisable avec les interfaces de type point à
point comme, par exemple, les interfaces des connexions ppp. Lorsqu'une
interface dispose de plusieurs adresses, la première est considérée comme
l'adresse principale de l'interface, et les suivantes comme des alias. Ces alias
utilisent comme nom le nom de l'interface réseau principale et le numéro de
l'alias, séparés par deux points (caractère ':'). Par exemple, si l'interface eth0
dispose d'un alias, celuici sera nommé eth0:0. Ainsi, pour fixer l'adresse d'un
alias d'une interface réseau, on utilisera la syntaxe suivante :
●
ifconfig interface:numéro add adresse netmask masque
GNU/Linux et le réseau
●
Définition des règles de routage
●
La deuxième étape dans la configuration du réseau est la définition des règles de
routage. Il est possible de définir plusieurs règles de routage actives simultanément.
L'ensemble de ces règles constitue ce qu'on appelle la table de routage. La règle utilisée
est sélectionnée par le noyau en fonction de l'adresse destination du paquet à router.
Chaque règle indique donc un critère de sélection sur les adresses, et l'interface vers
laquelle doivent être transférés les paquets dont l'adresse destination vérifie cette
règle.
●
La commande utilisée pour définir une route est, chose surprenante, la commande
système route. Sa syntaxe est donnée cidessous :
●
route opération [net | host] adresse netmask masque interface
●
où opération est l'opération à effectuer sur la table de routage. L'opération la plus
courante est simplement l'ajout d'une règle de routage, auquel cas add doit être utilisé.
GNU/Linux et le réseau
●
L'option suivante permet d'indiquer si le critère de sélection des paquets se fait sur
l'adresse du réseau destination ou plus restrictivement sur l'adresse de la machine
destination. En général, il est courant d'utiliser la sélection de toutes les adresses d'un
même réseau et de les router vers une même interface. Dans tous les cas, adresse est
l'adresse IP de la destination, que celleci soit un réseau ou une machine. Si la destination
est un réseau, il faut indiquer le masque de sousréseau masque à l'aide de l'option
netmask. Enfin, interface est l'interface réseau vers laquelle doivent être envoyés les
paquets qui vérifient les critères de sélection de cette règle.
●
Par exemple, la règle de routage à utiliser pour l'interface loopback est la suivante :
●
route add net 127.0.0.0 netmask 255.0.0.0 lo
●
Cette règle signifie que tous les paquets dont l'adresse de destination appartient au sous
réseau 127.0.0.0/8 doivent être transférés vers l'interface loopback. Cela implique en
particulier que les paquets à destination de la machine d'adresse IP 127.0.0.1 (c'estàdire
la machine locale) seront envoyés vers l'interface loopback (ils reviendront donc sur la
machine locale).
GNU/Linux et le réseau
●
Une autre règle de routage classique est la suivante :
●
route add net 192.168.0.0 netmask 255.255.255.0 eth0
●
Elle permet d'envoyer tous les paquets à destination du réseau 192.168.0.0/24 vers la
première interface Ethernet. C'est typiquement ce genre de règle qu'il faut utiliser pour
faire fonctionner un réseau local. Il n'est normalement pas nécessaire d'ajouter les règles
de routage pour les réseaux auxquel la machine est connectée. En effet, la configuration
d'une carte réseau à l'aide de la commande ifconfig ajoute automatiquement à la table
de routage une règle pour envoyer les paquets à destination de ce réseau par l'interface
réseau qui y est connectée. Cependant, la commande route devient réellement
nécessaire lorsqu'il faut définir les passerelles à utiliser pour l'envoi des paquets destinés
à une machine à laquelle la machine locale ne peut accéder directement. Les règles de
routage faisant intervenir une passerelle sont semblables aux règles de routage vues ci
dessus, à ceci près que l'adresse IP de la passerelle à utiliser doit être fournie. Pour cela,
on utilise l'option gw (abréviation de l'anglais « Gateway »). La syntaxe utilisée est donc
la suivante : route add [net | host] adresse netmask masque gw passerelle interface
GNU/Linux et le réseau
●
où passerelle est l'adresse IP de la passerelle à utiliser pour router les paquets qui
vérifient les critères de cette règle. Les autres paramètres sont les mêmes que pour les
règles de routage classique.
GNU/Linux et le réseau
●
Par exemple, supposons qu'une machine soit connectée à un réseau d'adresse
192.168.0.0, et que sur ce réseau se trouve une passerelle d'adresse 192.168.0.1
permettant d'atteindre un autre réseau, dont l'adresse est 192.168.1.0. Une machine du
réseau 192.168.0.0 aura typiquement les règles de routage suivantes :
●
route add net 192.168.0.0 netmask 255.255.255.0 eth0
●
route add net 192.168.1.0 netmask 255.255.255.0 gw 192.168.0.1 eth0
●
La première règle permet, comme on l'a déjà vu, de communiquer avec toutes les
machines du réseau local. La deuxième règle permet d'envoyer à la passerelle 192.168.0.1
tous les paquets à destination du réseau 192.168.1.0.
●
Inversement, si la passerelle utilise l'adresse 192.168.1.15 sur le réseau 192.168.1.0, les
machines de ce réseau qui voudront accéder au réseau 192.168.0.0 devront spécifier la
règle de routage suivante :
●
route add net 192.168.0.0 netmask 255.255.255.0 gw 192.168.1.15 eth0
GNU/Linux et le réseau
●
Bien entendu, il est nécessaire que toutes les machines des deux réseaux utilisent ces
règles de routage pour que la communication entre les deux réseaux se fasse dans les
deux sens. Le problème de ces règles de routage est qu'elles spécifient l'adresse du réseau
destination. Il est évidement hors de question d'utiliser une règle de routage différente
pour toutes les adresses de réseaux possibles. Il est donc possible de définir ce qu'on
appelle une passerelle par défaut, qui n'est rien d'autre que la passerelle vers laquelle
doivent être envoyés tous les paquets qui n'ont pas vérifié les critères des autres règle de
routage. La syntaxe à utiliser pour définir la passerelle par défaut est plus simple, puisqu'il
n'est plus nécessaire de préciser les critères de sélection :
●
route add default gw passerelle interface où la signification des paramètres passerelle
et interface est inchangée. Ainsi, pour reprendre l'exemple précédent, supposons que la
machine 192.168.0.47 dispose d'une connexion à Internet. Pour que toutes les machines
du réseau local puisse profiter de cette connexion, il suffit de demander à ce que tous les
paquets qui ne vérifient aucune autre règle de routage soient envoyés à la passerelle
192.168.0.47. Cela se fait avec la règle de routage suivante :
route add default gw 192.168.0.47 eth0
GNU/Linux et le réseau
●
Définition du nom de la machine: La commande de base permettant de manipuler le
nom de la machine locale est la commande hostname. Appelée telle quelle, elle
renvoie le nom actuel de la machine :
●
hostname
●
Cette commande permet également de modifier ce nom, simplement avec la syntaxe
suivante : hostname nom
●
La plupart des distributions utilisent le fichier /etc/HOSTNAME pour stocker le nom
de la machine. Vous êtes bien entendu libre de choisir le nom que vous voulez pour
votre ordinateur, mais vous devez vous assurer que ce nom est unique dans votre
domaine !
GNU/Linux et le réseau
●
Résolution des noms de domaines
– La commande hostname ne permet de fixer que le nom de la machine locale. Pour
les autres machines du réseau, il faut mettre en place les mécanismes de résolution
de noms de domaines. Comme il l'a déjà été indiqué au début de ce chapitre, il
existe deux solutions pour trouver l'adresse IP d'une machine à partir de son nom :
la consultation d'une liste de noms stockée en local, soit l'interrogation d'un
serveur de nom de domaines.
– Le fichier /etc/host.conf permet de définir le comportement du système lors de la
résolution d'un nom. Sa structure est très simple, puisqu'il y a une option de
recherche par ligne. Dans la plupart des cas, les lignes suivantes sont suffisantes :
– order hosts,bind
– multi on
GNU/Linux et le réseau
●
Elles permettent d'indiquer que la recherche des noms pour leur résolution doit se faire
d'abord localement, puis par appel aux DNS si la recherche précédente a échoué. C'est
en général le comportement désiré. La deuxième ligne permet de faire en sorte que
toutes les adresses correspondant à une machine soient renvoyées. Si l'on avait utilisé
l'option multi off, seule la première adresse IP trouvée aurait été renvoyée.
●
La liste de noms locale est stockée dans le fichier /etc/hosts (cela explique le nom
hosts utilisé pour l'option order dans le fichier /etc/host.conf). Votre ordinateur
connaîtra directement l'adresse IP de toutes les machines référencées dans ce fichier. Il
est bon de placer ici une entrée pour les ordinateurs les plus couramment utilisés sur le
réseau. Chaque entrée commence par une adresse IP, et est suivie de la liste des noms
de la machine possédant cette adresse, séparés par des espaces. Pour ceux qui ne
disposent pas de réseau local, ce fichier doit être relativement simple : seule la ligne
affectant l'adresse 127.0.0.1 à la machine locale (appelée « localhost ») doit s'y trouver.
●
127.0.0.1 localhost
GNU/Linux et le réseau
●
De la même manière, le fichier /etc/networks contient les adresses des réseaux. Ce
fichier est utilisé par la commande route pour donner un nom aux différents réseaux.
Chaque entrée est constituée du nom du réseau, suivi de son adresse IP. Encore une fois,
ce fichier se réduit à sa plus simple expression pour ceux qui n'ont pas de réseau local,
puisqu'il ne contiendra tout au plus qu'une entrée pour le réseau « loopback », sur lequel
se trouve l'adresse de retour 127.0.0.1. Cette entrée aura donc la forme suivante :
loopback 127.0.0.0
La configuration des serveurs de noms est en revanche une opération nécessaire si l'on
désire accéder à des machines dont on ne connaît que le nom. Le fichier de
configuration utilisé est cette fois le fichier /etc/resolv.conf. Sa structure est encore une
fois très simple, avec une option par ligne, chaque option étant introduite par un mot
clé. Le motclé domain permet d'indiquer le nom du domaine dont fait partie votre
machine. Par exemple, si votre nom de domaine est « esgis.bj », vous devrez utiliser la
ligne suivante :
●
domain esgis.bj
GNU/Linux et le réseau
●
Le motclé search permet quant à lui de spécifier une liste de noms de
domaines à ajouter par défaut aux noms de machines non complètement
qualifiés. Les éléments de cette liste doivent être séparés par des espaces. La
recherche d'une machine dont le nom ne comprend pas la partie de nom de
domaine s'effectue en ajoutant au nom de la machine les noms des domaines
indiqués ici, jusqu'à ce que la résolution du nom en adresse IP soit effectuée.
Cette recherche commence bien entendu par le nom de domaine local, s'il a
été défini. Il est donc recommandé d'indiquer votre nom de domaine dans
cette liste de noms de domaines. Par exemple, si votre machine fait partie du
domaine « esgis.bj », vous devrez utiliser la ligne suivante :
search esgis.bj
●
Ainsi, si vous recherchez l'adresse de la machine « host1 », la requête au DNS
se fera avec le nom complètement qualifié « host1.esgis.bj ». Vous êtes bien
entendu libre d'ajouter d'autres noms de domaines pour le cas où la résolution
de nom échouerait sur ce domaine.
GNU/Linux et le réseau
●
Enfin, l'option nameserver est essentielle, puisqu'elle permet de donner les adresses IP des
serveurs de DNS auxquels doivent être adressées les requêtes de résolution de noms. Par
exemple, si vous disposez de deux serveurs DNS, un primaire, d'adresse 192.168.0.10, et
un secondaire, d'adresse 192.168.0.15, vous utiliserez la ligne suivante :
●
nameserver 192.168.0.10 192.168.0.15
●
Cette ligne est évidemment obligatoire, faute de quoi la résolution des noms de machines
en adresse IP échouera pour toute machine qui ne se trouve pas dans votre fichier
/etc/hosts.
GNU/Linux et le réseau
●
Utilisation des commandes d’administration de base des services réseaux
●
ping
Cette commande est normalement connue de tous. Elle existe dans tous les
systèmes. Elle permet de vérifier si une machine distante répond. Pour
envoyer 5 pings à la machine dont l'adresse IP est 192.168.0.1.
●
ping c 5 192.168.0.1
On peut aussi utiliser le nom de la machine, si celleci est renseignée dans
votre fichier Hosts ou dans un serveur DNS.
On peut par exemple utiliser ping pour vérifier si la connexion est toujours
active ou pour la monter.
Si vous ne placez pas l'option c 5 pour n'envoyer que 5 pings, la commande
ne s'arrête pas.
●
Utilisez alors Ctrl + C.
GNU/Linux et le réseau
●
Utilisation des commandes d’administration de base des services réseaux
●
arp
La commande arp permet de mettre en correspondance des adresses IP et les
adresses MAC. Les options possibles importantes sont
arp a pour avoir toutes les entrées ARP de la table
arp d nom_de_la_machine pour supprimer une entrée de la table
arp s nom_de_la_machine adresses_mac pour ajouter une nouvelle entrée
dans la table.
●
route
Cette commande permet de voir, d'ajouter ou d'enlever les routes se trouvant
déclarées sur votre machine. Ainsi pour indiquer à votre machine où aller
trouver les adresses qui ne sont pas les adresses de votre réseau local, vous
devez lui indiquer la passerelle (ou gateway) vers laquelle elle doit envoyer
tous les paquets.
Pour voir les routes indiquer : route –n
GNU/Linux et le réseau
●
Utilisation des commandes d’administration de base des services réseaux
●
Pour ajouter une route par defaut : route add default gateway
192.168.0.1
●
(La passerelle vers qui j'envoie tous les paquets qui ne sont pas pour le réseau
local).
●
Pour détruire cette route : route del default
Pour ajouter une route vers une machine indiquer: route add host
195.98.246.28 gateway 192.168.0.1
●
(Indiquer le netmask si celuici n'est pas un mask correspondant à celui
de votre sousréseau).
Pour ajouter une route vers un réseau indiquer : route add net
195.98.246.0 netmask 255.255.0.0 gateway 192.168.0.1
GNU/Linux et le réseau
●
Utilisation des commandes d’administration de base des services réseaux
●
netstat
Voilà une commande moins connue et pourtant très utile. Je ne peux ici
commenter toutes les options, je vous propose de lire le man netstat. Elle
permet en effet de connaître les ports en écoute sur votre machine, sur
quelles interfaces, avec quels protocoles de transport (TCP ou UDP), les
connexions actives et de connaître les routes.
Pour voir les connexions actives: netstat –nt
Pour les ports ouverts: netstat ntl.
On peut aussi vérifier s'il existe une route par défaut, par exemple existetil
une route par défaut vers la machine 195.98.246.28 utilisez alors
netstat nr | grep 195.98.246.28.
L'option a énumère les ports en cours d'utilisation ou ceux qui sont écoutés
par le serveur.
L'option i donne des informations sur les interfaces réseau.
GNU/Linux et le réseau
●
Utilisation des commandes d’administration de base des services réseaux
●
traceroute
Traceroute permet de déterminer la route prise par un paquet pour atteindre
la cible sur internet. On peut utiliser soit l'adresse IP, soit le nom d'hôte.
Attention certains FireWall ou routeurs ne se laissent pas voir avec la
commande traceroute.
La commande traceroute est très utile pour savoir ou peut se trouver un
blocage (plutôt ralentissement). Il existe un grand nombre d'options, entre
autre il est possible de choisir les gateway (jusqu'à 8) pour atteindre une
machine. Je vous conseille donc encore une fois de lire le man traceroute.
GNU/Linux et le réseau
●
Afin de permettre la configuration réseau plus facile Debian fournit un outil de
configuration haut niveau standard qui comprend les commandes ifup et
ifdown et le fichier /etc/network/interfaces. Si vous choisissez d'utiliser
ifupdown pour configurer votre réseau alors vous ne devriez pas utiliser les
commandes bas niveau aussi. Ifupdown est écrit avec l'hypothèse qu'il sera
seul utilisé pour configurer et déconfigurer les interfaces réseau.
●
Pour mettre à jour la configuration des interfaces, faites ceci :
# ifdown eth0
# editor /etc/network/interfaces # modifiez à votre convenance
# ifup eth0
GNU/Linux et le réseau
●
Supposons que vous voulez configurer une interface Ethernet de façon à avoir
l'adresse IP fixe 192.168.0.123. Cette adresse commence par 192.168.0 donc
elle doit être sur un réseau local. Supposons aussi que 192.168.0.1 est
l'adresse de la passerelle du réseau local vers l'Internet. Éditez
/etc/network/interfaces et ajoutez une partie comme suit :
iface eth0 inet static
address 192.168.0.123
netmask 255.255.255.0
gateway 192.168.0.1
GNU/Linux et le réseau
●
Si vous avez le paquet resolvconf installé alors vous pouvez ajouter ces lignes
pour spécifier l'information DNS. Par exemple :
iface eth0 inet static
address 192.168.0.123
netmask 255.255.255.0
gateway 192.168.0.1
dnssearch esgis.tg
dnsnameservers 195.238.2.21 195.238.2.22
GNU/Linux et le réseau
●
Configurer une interface par DHCP: Pour configurer une interface par DHCP, éditez le
fichier /etc/network/interfaces afin d'y inclure : iface eth0 inet dhcp
●
Configurer une interface WiFi: Le paquet wirelesstools inclut un script /etc/network/if
preup.d/wirelesstools qui permet de configurer du matériel WiFi (802.11a/b/g) avant
qu'une interface soit activée. La configuration se fait à l'aide du programme iwconfig ;
voir iwconfig(8). Pour chaque paramètre de la commande iwconfig vous pouvez inclure
une option dans /etc/network/interfaces avec le nom du paramètre préfixé par
« wireless ». Par exemple, pour configurer l'ESSID de eth0 en esgiswifi et la clé de
chiffrage à 123456789e avant d'activer eth0 par DHCP, éditez /etc/network/interfaces
comme suit :
iface eth0 inet dhcp
wirelessessid esgiswifi
wirelesskey 123456789e
GNU/Linux et le réseau
●
iwconfig
●
lspci pour voir votre controleur wifi
●
iwconfig eth0 mode managed (configuration du mode)
●
iwconfig eth0 essid esgiswifi (config de l'ientifiant)
●
iwconfig eth0 key c8198882882888e6 (configuration de la clé hexadécimale avec WEP)
GNU/Linux et le réseau
●
Accès à Internet
Mascarade (NAT): Une machine est connecté à internet et doit fournir un
accès à d'autres ordinateur du réseau local
Deux commandes suffisent à l'activer
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables t nat A POSTROUTING o eth0 j MASQUERADE
Dans de nombreuses distributions comme Debian, la première commande est
remplacée par
sysctl w net.ipv4.ip_forward=1
Elle active la fonction de transfert d'IP du noyau qui est par défaut désactivée.
La deuxième définit un règle selon laquelle un paquet qui doit quitter le
réseau local est transmis à l'interface eth0 et manipulé avec le règles du NAT.
Le DNS sous GNU/Linux
●
Présentation rapide d’un système DNS
●
L’architecture de réseau TCP/IP sur lequel est basé Internet et la plupart des
réseaux locaux actuels, utilisent des adresses IP numériques du type
192.168.0.1. Mais pour faciliter la lecture de ces adresses par l’homme, un
système permet de transformer ces adresses en adresses plus lisibles comme
www.esgis.bj. Pour effectuer cette opération, il est nécessaire d’utiliser des
serveurs DNS. Un serveur DNS fera donc la correspondance entre les adresses
IP et les noms des domaines. Un serveur DNS s’occupe en général d’un
domaine limité et s’occupe de transmettre les questions à d’autres serveurs s’il
ne connaît pas la réponse.
Le DNS sous GNU/Linux
●
Principe de fonctionnement de la recherche de noms
●
Lorsque qu’une demande de résolution de nom est demandée, Linux
commence par regarder le fichier « /etc/hosts.conf :
●
order hosts,bind
multi on
● La première ligne de ce fichier indique qu’il faut commencer la recherche en
regardant la table hosts locale et ensuite il faut interroger le serveur DNS. La
table hosts locale est enregistrée dans le fichier « /etc/hosts » elle contient
une table de correspondance entre des adresses IP et des noms, elle ressemble
à :
127.0.0.1 localhost.localdomain localhost
192.168.0.6 debian1.mondomaine.com debian1
Le DNS sous GNU/Linux
●
La première ligne est obligatoire pour que le système fonctionne même quand
le réseau est désactivé. L’adresse IP 127.0.0.1 est toujours associée au nom
localhost.
●
Les lignes suivantes peuvent être ajoutées manuellement pour faire la
correspondance entre des adresses IP et des noms. C’est ce qui est fait en
l’absence de serveur DNS. Si le résultat n’est pas trouvé dans la table hosts,le
système recherche le serveur DNS indiqué dans le fichier
« /etc/resolv.conf » :
●
search mondomaine.com
nameserver 192.168.0.1
nameserver 194.2.0.50
Le DNS sous GNU/Linux
●
La première ligne indique quel domaine il faut ajouter au noms si celuici n’est
pas indiqué lors d’une demande de résolution de nom. Exemple :
ping serveur.esgis.bj > Aucun domaine ne sera ajouté lors de la résolution
du nom, car le domaine est fourni.
ping serveur > Le domaine esgis.bj, sera ajouté avant d’effectuer la demande
de résolution du nom (La recherche du nom, portera donc sur serveur.esgis.bj)
●
La deuxième ligne indique le serveur DNS principal. Et c’est donc le serveur
DNS qui sera chargé de donner le résultat s’il connaît la réponse ou de
transmettre la question à un autre serveur DNS. Si le serveur principal n’est
pas disponible, le serveur DNS indiqué sur la ligne suivante sera utilisé.
Le DNS sous GNU/Linux
●
Pourquoi installer un serveur DNS
●
Pour au moins deux raisons :
Éviter de tenir à jour la table hosts de chaque poste client d’un réseau.
Avoir un cache DNS qui accélère la recherche des noms.
Sur un réseau locale, un serveur DNS permet d’accélérer le trafic sur le réseau
car de nombreux services ont besoins d’un serveur DNS bien configuré pour
fonctionner correctement (WEB, POP, SMTP,..)
●
Installation de Bind 9
●
Sous Debian, il faut installer le paquet suivant :
●
# aptitude install bind9
Le DNS sous GNU/Linux
●
Fichier de Configuration Principal (/etc/bind/named.conf)
●
Le fichier de Configuration principal « /etc/bind/named.conf » contient la
liste des zones (ou domaines) que le serveur DNS doit prendre en charge.
●
Voici un exemple de description de zone :
zone "extraconseil.tg" {
type master;
file "/etc/bind/db.extraconseil.tg";
};
Le DNS sous GNU/Linux
●
Pour chaque domaine à gérer, il faut créer le fichier indiqué dans « named.conf ». Dans l’exemple
précédent, il faudra créer le fichier « /etc/bind/db.extraconseil.tg »
●
Voici le contenu de ce fichier :
●
$TTL 604800
Le DNS sous GNU/Linux
@ IN SOA serveur.extraconseil.tg. olga.extraconseil.tg(
20041122 ; Serial > N° de série à incrémenter à chaque modif
; de ce fichier. Ce N° est utilisé par les
; serveurs esclaves pour lui indiquer qu'il
; doit mettre à jour sa base. Par commodité
; ce n° est une date à l'envers.
604800 ;Refresh > A l'expiration du délai Refresh exprimé en
; secondes, le serveur excalve va entrer en
; communication avec le maitre et si il ne
; le trouve pas, il fera une nouvelle
; tentative au bout du délai Retry et si au
; bout du délai Expire il considerera que le
; serveur n'est plus disponible.
86400 ; Retry
2419200 ; Expire
604800 ) ; Minimum > Durée de vie minimum du cache en secondes
extraconseil.tg. IN NS serveur.extraconseil.tg.
extraconseil.tg. IN MX 10 serveur.extraconseil.tg.
extraconseil.tg. IN A 192.168.1.1
serveur IN A 192.168.1.1
www IN CNAME serveur
Le DNS sous GNU/Linux
●
La première partie est utilisée pour la gestion maîtreesclave des serveurs
DNS. La deuxième partie contient la table de correspondance entre les noms
et les adresses IP. La dernière partie donne les alias possibles pour un même
nom de serveur.
●
Résolution Inverse
De nombreux services réseaux utilisent la résolution inverse (Trouver l’adresse
IP à partir du nom) pour vérifier que le nom est valide. Il est donc nécessaire
de configurer le serveur pour qu’il prenne également en charge la résolution
inverse.
●
Le principe est quasiment le même que pour la résolution classique. il faut
déjà définir le domaine inverse dans le fichier « named.conf » comme dans
l’exemple suivant :
●
Le DNS sous GNU/Linux
zone "1.168.192.inaddr.arpa" {
type master;
file "/etc/bind/db.extraconseil.tg.inv";
};
L’adresse IP doit être indiquée à l’envers et il faut ajouter .inaddr.arpa.
Il faut également définir un nouveau fichier qui ressemblera à ceci :
Le DNS sous GNU/Linux
●
Installer un serveur secondaire esclave (slave)
– La mise en place d’un serveur secondaire sur un réseau important est vivement
recommandé pour éviter toute panne de résolutions de noms en cas de
dysfonctionnement du serveur principale. Sur le deuxième serveur, il faut
également installer bind :
Le DNS sous GNU/Linux
● Sur le serveur principal, il faut ajouter dans chaque zone à exporter une ligne
« NS » pour chaque serveur esclave. Exemple :
●
NS ServeurEsclave1.mondomaine.com. ;Nom du serveur esclave N°1
NS ServeurEsclave2.mondomaine.com. ;Nom du serveur esclave N°2
●
Sur le serveur principal, il faut autoriser Bind à transférer les données vers le
serveur secondaire en ajoutant cette ligne dans
« /etc/bind/named.conf.options » :
●
allowtransfer { 192.168.0.1; };
●
Remarque : Il faut remplacer l’adresse IP par celle de votre serveur esclave.
Le DNS sous GNU/Linux
●
Configuration du serveur esclave
●
Sur le serveur esclave, il faut ajouter dans le fichier « /etc/bind/named.conf.local », les
zones à importer du serveur principal. Voici un exemple :
●
zone "extraconseil.tg" {
type slave;
file "db.extraconseil.tg ";
masters {192.168.1.1; };
};
zone "1.168.192.inaddr.arpa" {
type slave;
file "db.extraconseil.tg.inv";
masters {192.168.1.1; };
};
Le DNS sous GNU/Linux
●
Test du serveur esclave
●
La mise à jour des données du serveur esclave, se fera au moment du redémarrage
du serveur maître si le champ « Serial » de la zone concernée est supérieur sur le
maître par rapport à l’esclave. Pour vérifier que tout fonctionne correctement, il
faut regarder les logs au niveau du serveur esclave et au niveau du serveur maître.
●
Lors du démarrage du serveur, les fichiers contenant la résolution des noms,
seront importés dans « /var/cache/bind »
●
Remarque : Il est possible de supprimer les fichiers enregistrés dans
« /var/cache/bind » car ils seront recréés au prochain démarrage du serveur
maître.
●
Le DNS sous GNU/Linux
●
Tester la résolution des noms
●
Il existe plusieurs outils pour tester le bon fonctionnement de la résolution des
noms :
– ping
– La commande « ping » est la plus simple (mais la plus limité). Elle permet de
tester la résolution du nom, mais pas la résolution inverse :
– $ ping NomDuServeur
– host
– La commande « host », permet de tester la résolution du nom et la résolution
inverse :
– $ host NomDuServeur ou $ host AdresseIPduServeur
Le DNS sous GNU/Linux
– nslookup
– La commande « nslookup » du paquet « dnsutils », permet également de
tester la résolution du nom et la résolution inverse :
– $ nslookup NomDuServeur
– ou :
– $ nslookup AdresseIPduServeur
– dig
– La commande « dig » du paquet « dnsutils », permet également de tester la
résolution du nom et la résolution inverse. Mais la commande « dig » permet
surtout d’interroger directement le serveur bind et obtenir de nombreuses
autres informations :
Le DNS sous GNU/Linux
●
$ dig NomDuServeur.NomDuDomaine
– Remarque : Le nom du domaine est obligatoire pour obtenir une réponse
(ANSWER SECTION)
– ou :
– $ dig x AdresseIPduServeur
●
Remarque : Le paramètre « x » est obligatoire pour obtenir une réponse
(ANSWER SECTION)
●
dig [@server] [b address] [c class] [f filename] [k filename][p port#]
[t type] [x addr] [y name:key] [4] [6] [name] [type] [class] [queryopt...]
FIN