SERVICE DE LA FORMATION CONTINUE

Administration de serveurs Web

Introduction à Linux.

Objectifs :

Se familiariser avec l'environnement Linux et l'interpréteur de commandes BASH.

Utiliser les commandes de base UNIX/Linux

Comprendre la strucure de répertoires standardisée.

Comprendre les notions d'usagers et de groupes.

Comprendre les permissions appliquées au système de fichiers.



A. Commandes de bases :

man, manuel en lignes :



La plupart des commandes acceptent l'option --help pour afficher une aide comme ls --help, mais vous pouvez aussi consulter les pages de manuel (qui sont plus complètes) en tapant man suivi du nom de la commande (Ex : man ls ).
Il est possible d'obtenir une aide plus précise sur une option en donnant cette option :
man a ls (Donne les informations sur l'option a de Ls)

Une option intéressante est -k qui permet d'obtenir les noms des différents manuels contenant le mot-clé passé en paramètre. Ainsi si l'on désire connaître la liste des pages de manuel qui parlent de tcp , on entrera
man -k tcp.



cd, changement de répertoire :

La commande cd permet de se déplacer dans les répertoires tant que les permissions le permettent.



pwd, affiche le répertoire courant :

Affiche le répertoire courant.

ls, liste d'un répertoire :

Elle permet de lister le contenu d'un répertoire. Beaucoup d'options sont disponibles, parmi elles, certaines sont intéressantes:

Remarque :
Ce que la commande ls -l affiche :
-rwxr-xr-rx 1 root root 200 jan 6 20:00 ircII*
Correspond à :
type de fichier et permissions, nombre de liens physiques, utilisateur, groupe, taille en octets, date et heure, le nom du fichier, l'astérisque '*' indique qu'il s'agit d'un fichier exécutable.

rm, destruction d'un fichier :

Permet de détruire un ou plusieurs fichier ou liens physique du répertoire courant. Attention, rm ne demande pas de confirmation par défaut. Et la commande Undelette n'existe pas sous Linux...

mkdir, création d'un répertoire :

Permet de créer un répertoire : mkdir rep

rmdir, destruction d'un répertoire :

Permet de supprimer un répertoire : rmdir rep

cp, copie d'un fichier :

Pemet de copier un ou plusieur fichiers :
cp fichier /usr/ftls   (copie le fichier dans user/ftls).

mv, déplacemant d'un fichier :

    Permet de déplacer un ou plusieurs fichiers :
mv fichier /usr/ftls   (déplace le fichier dans user/ftls).

find, recherche de fichiers :

Cette commande permet de trouver des fichiers depuis une racine spécifiée suivant plusieurs critères (-name, Nom; -mode, dernière modification, ...) Par exemple, la commande suivante affichera tous les fichiers ayant un f dans leur nom, et ceci dans tous les sous répertoire du répertoire courant, y compris ce dernier:
find . -name '*f*' -print

chmod, changement des droit d'accès d'un fichier :

    chmod Changes les droits d'accès d'un fichier ou d'un répertoire si vous en êtes le propriétaire ou root.
La gestion des droits d'accès est très important sous Linux, la commande ls -l permet de connaître les droits d'un fichier.

La syntaxe de chmod est :

chmod [ a , u , g ,o ] [ + , - ] [ r , w , x ] [ non.de.fichier ]
          argument       valeur   permissions
l'argument donne les droits : a = à tous les utilisateurs
                              u = au propriétaire
                              g = aux utilisateurs du groupe
                              o = aux autres groupes
la valeur
                              +  ajoute
                              -  enlève
les permissions autorisées
                              r = la lecture
                              w = l'écriture
                              x = l'exécution

ln, ajout de liens sur les fichiers

Cette commande permet d'ajouter un lien physique ou symbolique sur un fichier.

cat, affichage ininterrompu d'un fichier :

    Permet d'afficher sans interruption d'un fichier ou plusieurs fichiers:
cat fichier1 fichier2 (affiche fichier1 et fichier2)

more, affichage page par page d'un fichier :

    Permet d'afficher un fichier page par page, ainsi que d'autres fonctions spéciales. Les principales commandes sont :

less, affichage page par page d'un fichier :

Permet d'afficher un fichier page par page. Les principales commandes sont :

diff, affichage des différences entre deux fichiers :

Cette commande affiche les différences entre deux fichiers. Cela est parfois utilisé par des utilitaires stockant des modifications incrémentales dans des sources ou textes sous leur contrôle, permettant de retrouver des versions antérieures ou le travail à plusieurs.

echo, écrit les arguments qui lui sont passés :

Cette commande écrit sur la ligne courante les arguments qui lui sont passés : echo arg1 arg2...

ps, liste des processus actifs :

    Cette commande permet de détruire de lister les processus actifs.
Exemple :

ps
liste des processus courant.
ps -user
liste des processus appartenant à l'utilisateur user.
ps -aux
liste de tous les processus du système.
jobs -l
liste des jobs avec leur numéro de job ainsi que leur numéro de processus système.

On notera aussi la commande top, qui permet de connaître les processus gourmands en puissance de calcul.
Seul dans un premier temps on ne regardera que la première colonne PID, qui est le numéro assigné aux processus. c'est ce numéro qui doit être utilisé pour kill.

kill, destruction d'un processus :

Cette commande permet de détruire un processus.
Exemple :
Si le processus cible est le numéro 546,

kill 546
Tente de détruire le processus 546
kill -9 546
Force la destruction du processus 546



Un aspect intéressant de cette commande est la possibilité de détruire un groupe de processus. Par exemple, pour détruire tous les processus vous appartenant, sauf le shell courant, il suffit de donner les commandes suivantes:

kill -15 -1
Tente de détruire tous vos processus
kill -9 -1
Force la destruction de tous vos processus

du, usage disque :

Cette commande permet de connaître l'espace disque utilisé par un sous-répertoire. L'unité dépend du système (parfois 512 octets, parfois 1 Koctet, ou d'autres valeurs). Le paramètre -s * est souvent utilisé, il permet d'obtenir la taille en de tous les objets du répertoire courant.

df, disponibilité des systèmes de fichiers :

Celle-ci donne des informations sur les disques du système, leurs capacités l'espace disponible.

alias, définition de synonymes de commandes :



Elle permet la création de raccourcis ou de synonymes pour des commandes qui existent par exemple sur d'autres systèmes.
Apres
alias dir ls -lagF, dir execute ls -lagF

passwd , changement du mot de passe :

Cette commande permet de changer son mot de passe.
En général, 8 caractères, la distinction entre les majuscules et les minuscules est très importante. L'ancien mot de passe est toujours demandé ainsi que la confirmation du nouveau.

adduser, ajoute un compte utilisateur :

Cette commande permet de créer un compte utilisateur si vous êtes Root.
Les informations concernant chaque utilisateur se trouvent dans le fichier /etc/passwd.

deluser, détruit un compte utilisateur :

Cette commande permet supprimer un compte on utilisateur, si cette commande est disponible sur le système, sinon on fera manuellement.




B. Structure de répertoires.

/

/bin : Commandes binaires utilisateur essentielles (pour tous les utilisateurs)
/boot : fichiers statiques du chargeur de lancement
/dev : fichiers de périphériques
/etc : configuration système spécifique à la machine
/home : répertoires personnels des utilisateurs
/lib : bibliothèques partagées essentielles et modules du noyau
/mnt : point de montage pour les systèmes de fichiers montés temporairement
/proc : système de fichiers virtuel d'information du noyau et des processus
/root : répertoire personnel de root
/sbin : binaires système
/tmp : Fichiers temporaires

/usr

/usr/X11R6 : système X Window, Version 11 Release 6
/usr/X386 : système X Window, Version 11 Release 5, sur les plate-formes x86
/usr/bin : Commandes utilisateurs principales
/usr/dict : listes de mots
/usr/lib : bibliothèques pour la programmation et les packages
/usr/local : hiérarchie locale
/usr/man : pages de manuel
/usr/sbin : binaires système standard non essentiels
/usr/share : données indépendantes de l'architecture
usr/src : code source


/var
/var/lock : fichiers lock
/var/log : fichiers et répertoires de rapports



C. Usagers et groupes d'utilisateurs.



/etc/passwd : Fichier contenant les comptes utilisateur et leurs propriétés

jnadeau:x:502:502::/home/jnadeau:/bin/bash

Dans l'ordre : nom d'usager : UID : GID : répertoire de base : interpréteur de commandes.

Permissions :

-rw-r--r-- 1 root root 243 Jan 17 14:51 /etc/passwd



/etc/shadow : Fichier contenant les mots de passe des utilisateurs.

jnadeau:$1$4ykooMqO$o3PUlU/F3Dx6eS1UkiSWv.:11339:0:99999:7:-1:-1:134540308

Dans l'ordre : nom d'usager : mot de passe encrypté MD5 : dernier changement : minimum avant changement : maximum avant changement : jours d'avertissement avant désactivation : jours avant désactivation : date d'expiration du compte

Permissions :

-r-------- 1 root root 347 Jan 17 14:51 /etc/shadow



/etc/groups : Fichier contenant les groupes d'utilisateurs et leurs membres.

wheel:x:10:root, jnadeau

Dans l'ordre : nom du groupe : mot passe du groupe : GID : membres du groupe.



D. Exercices :

Répondez à la question et donnez la commande utilisée pour répondre à chaque question :

Quel est le PID du processus INIT ?

Quelles sont les permissions du fichier syslog.conf ?

Quelle espace disque libre est disponible dans la partition / ?

Quel est l'UID du compte "root" ?

Quelle sont les 4 premières lignes du fichier lilo.conf ?

Quel répertoire contient le fichier ifcfg-eth0 ?

À quel usager appartient le fichier /var/log/secure ?