Chap2 Administration Systeme UNIX 2eme SI
Chap2 Administration Systeme UNIX 2eme SI
Chap2 Administration Systeme UNIX 2eme SI
Aymen Ferjani
[email protected]
1 / 32
Plan
1 Recherche de fichiers
6 Exercices
2 / 32
Plan
1 Recherche de fichiers
6 Exercices
3 / 32
La commande find
4 / 32
locate, which et whatis
La commande locate est plus rapide que find car elle utilise une
base de données automatiquement mise à jour. Par contre, locate a
beaucoup moins de critères de recherche que find :
locate "/home/etudiant/*.java"
#renvoi tous les fichiers et dossiers depuis le
#dossier personnel dont le nom se termine par ".java"
5 / 32
Plan
1 Recherche de fichiers
6 Exercices
6 / 32
Créer un nouvel utilisateur
La création d’un nouvel utilisateur se fait par la commande useradd
selon cette syntaxe :
useradd nom_utilisateur
7 / 32
La commande sudo et les sudoers
Les sudoers sont les utilisateurs qui font partie du groupe sudo.
Cela leur permet d’exécuter des commandes avec les privilèges de
l’utilisateur root.
Ces utilisateurs devront alors placer la commande sudo chaque fois
qu’ils veulent exécuter une commande avec les privilèges de root.
Exemple :
sudo useradd -m -s /bin/bash -g etudiant ahmed
#un mot de passe est ensuite demandé pour confirmer
#l'identité du sudoer
8 / 32
Créer un nouvel utilisateur
Lors de la création d’un utilisateur, le contenu du dossier /etc/skel
est copié automaitquement dans le dossier personnel de l’utilisateur
(si l’option -m a été utilisée avec useradd).
Chaque utilisateur possède un identifiant ou UID. Ce dernier varie
entre 1000 et 60000 pour les systèmes Debian.
On peut modifier cet interval ainsi que d’autres valeurs de
configuration propre au login avec le fichier /etc/login.defs.
Pour activer un utilisateur, l’administareur(ou un sudoer) doit lui
définir un mot de passe avec la commande passwd :
passwd ahmed
#définit ou modifie le mot de passe de ahmed
9 / 32
Les groupes
Un utilisateur appartient au moins à un groupe. C’est le groupe
primaire. Les autres groupes auxquels il appartient sont les groupes
secondaires.
Par défaut, dans les Linux récents, un utilisateur est créé avec un
groupe primaire dont le nom est identique à l’utilisateur.
Pour voir la liste des groupes auxquels appartient un utilisateur, on
peut utiliser la commande id ou groups :
id
#affichage: uid=1000(etudiant) gid=1000(etudiant)
#groupes=1000(etudiant),4(adm),24(cdrom),27(sudo),...
10 / 32
Les groupes
11 / 32
Modifier et supprimer un utilisateur
12 / 32
Gestion des utilisateurs / Fichiers de configuration
13 / 32
Gestion des utilisateurs / Fichiers de configuration
14 / 32
Gestion des utilisateurs / Expiration d’un compte
15 / 32
Plan
1 Recherche de fichiers
6 Exercices
16 / 32
Les permissions(droits d’accès)
On distingue trois catégories d’utilisateurs :
u : le propriétaire (user).
g : le groupe auquel appartient le fichier.
o : les autres utilisateurs.
a : désigne tous les utilisateurs.
Ainsi que trois types de droits :
r : lecture(read), valeur octale = 4.
w : écriture(write), valeur octale = 2.
x : exécution(execute), valeur octale = 1.
- : pas de droit, valeur octale = 0.
Pour consulter les droits d’accès d’un fichier donné :
ls -ld chemin_fichier
Linux permet de spécifier les droits dont disposent les utilisateurs sur un
fichier(en général) par la commande chmod.
18 / 32
Notation octale avec chmod
La notation octale est utilisée pour affecter les permissions à toutes les
catégories. Il s’agit d’effectuer, pour chaque catégorie, la somme des
droits qu’on veut affecter. Cette somme varie de 0 à 7(valeur octale) :
19 / 32
La commande umask
Lorsqu’on crée un nouveau fichier, par exemple avec la commande touch,
ce fichier possède certains droits par défaut. La commande umask
permet de changer ces droits par défaut. Les droits sont indiqués de façon
"inverse" en notation octale. Il s’agit d’indiquer le complément à 666 :
20 / 32
Les droits spéciaux
Il existe trois droits spéciaux, SUID, SGID et Sticky Bit. Ils
peuvent être positionnés par la commande chmod :
SUID :(Set User ID) lorsque le SUID est positionné, une
commande se lancera avec les droits de son propriétaire. Sa valeur
octale est 4 et son symbôle est s. Exemples :
chmod u+s script.sh
chmod 4755 script2.sh
SGID :(Set Group ID) lorsque le SGID est positionné, une
commande se lancera avec les droits de son groupe. Sa valeur
octale est 2 et son symbôle est s. Exemples :
chmod g+s script.sh
chmod 2750 script2.sh
Sticky Bit : lorsque le Sticky Bit est positionné sur un dossier, ce
dernier ne pourra être supprimé ou renommer que par son
propriétaire. Sa valeur octale est 1 et son symbôle est t. Exemples :
chmod o+t mon_dossier
chmod 1775 mon_dossier2
21 / 32
Plan
1 Recherche de fichiers
6 Exercices
22 / 32
Gestion des services
Les services ou démons sont des programmes qui tournent
en arrière plan et qui sont généralement lancés par le système au
démarrage.
Traditionellement, la commande service permet de gérer les
services présents dans le système.
Pour lister tous les services :
service --status-all
Pour lancer un service, on ajoute l’argument start après le nom du
service (par exemple mysql) :
service mysql start
Pour arrêter un service, on ajoute l’argument stop après le nom du
service :
service mysql stop
Pour redémarrer un service, on ajoute l’argument restart après le
nom du service :
service mysql restart
23 / 32
Gestion des services
Pour les systèmes GNU/LINUX qui utilisent systemd (depuis 2015) :
Lister tous les services :
systemctl --type=service
24 / 32
Plan
1 Recherche de fichiers
6 Exercices
25 / 32
La commande crontab
Il est possible de programmer des tâches périodiques avec la
commande crontab.
Le service cron permet de gérer des tables d’exécution de tâches
périodiques (crontabs) : une table pour chaque utilisateur et une
table pour le système. Les tables des utilisateurs sont enregistrées
dans les fichiers /var/spool/cron/nom_utilisateur et sont
éditées par les utilisateurs à l’aide de l’outil crontab. La table cron
du système se trouve dans le fichier /etc/crontab.
crontab -l : affiche la liste des tâches programmées.
crontab -e : permet d’éditer la table cron.
crontab -u : permet à l’administrateur de gérer la table cron d’un
autre utilisateur.
crontab -r : supprime la table cron.
Par défaut chaque utilisateur peut utiliser la commande crontab.
Pour restreindre cette possibilité, on peut utiliser les fichiers
/etc/cron.allow(liste des utilisateurs autorisés) et
/etc/cron.deny(liste des utilisateurs non autorisés).
26 / 32
La commande crontab
Le format d’une ligne dans la table cron est le suivant :
minutes(0-59) heures(0-23) jour du mois(1-31) mois(1-12) jour de
la semaine(0-6) commande.
Pour le jour de la semaine, 0 signifie dimanche.
#lancer script.sh toutes les minutes
* * * * * /home/etudiant/script.sh
28 / 32
La commande at
Exemples :
#lancer script.sh après 5 minutes
at now + 5 minutes
at>/home/etudiant/script.sh
at>^d
29 / 32
Plan
1 Recherche de fichiers
6 Exercices
30 / 32
Exercices
31 / 32
Exercices
32 / 32