Vous êtes sur la page 1sur 16

Mémento sur les commandes

Se déplacer dans les répertoires (Change Directory)

cd.. : Remonte d'un niveau


cd/ : Retourne à la racine
cd- : Retourne au répertoire précédent

Lister les fichiers d'un répertoire: (List Sorted)

ls -l : Permet de lister les attributs des fichiers


ls -d: Affiche uniquement les répertoires
ls -a : Liste tous les fichiers du répertoire y compris les fichiers cachés.
ls -m : Affiche les fichiers en les séparant par une virgule.
ls -t : Affiche les fichiers par date.
ls -lu : Affiche les fichiers par date du dernier accès et indique la date.
ls -F : Affiche les fichiers par type
ls -S : Affiche les fichiers triés par ordre de taille décroissante.
ls -X : Affiche les fichiers par type d'extension
ls -r : Affiche les fichiers en ordre alphabétique inverse
ls -alR / : Affiche tous les fichiers d'un système
ls -alR |grep doc : Affiche tous les fichiers contenant doc

Copier un fichier ou un répertoire: (copy)

cp : Demande s'il peut écraser le nom de fichier : répondre par Oui(y) ou Non (n)
cp -i : Avertit de l'existence d'un fichier du même nom et demande s'il peut ou non le
remplacer.
cp -l : Permet de faire un lien en "dur" entre le fichier source et sa copie
cp -s : Permet de faire un lien "symbolique" entre le fichier source et sa copie
cp -p : Permet lors de la copie de préserver toutes les informations concernant le fichier.
cp -r : Permet de copier de manière récursive l'ensemble d'un répertoire et de ses sous
répertoires.
cp –v : permet d'afficher le nom des fichiers copiés.

cp -b : Permet comme l'option -i de s'assurer que la copie n'écrase pas un fichier existant : le
fichier écrasé est sauvegardé, seul le nom du fichier est modifié et cp ajoute un tilde(~) à la fin
du nom de fichier
Supprimer des fichiers et répertoires: (remove & remove directory)

rm -d : Permet de supprimer un répertoire qu'il soit plein ou non


rm -r : Permet de supprimer un répertoire et ses sous répertoires
rm -f : Permet de supprimer les fichiers protégés en écriture et répertoires sans confirmation
rmdir : Supprime un répertoire
rmdir -p rep1/rep2/rep : Supprime le répertoire et ses sous répertoires associés

Créer des répertoires: (make directory)

mkdir : Crée un répertoire


mkdir -p rep1/rep2/rep3 :Crée un répertoire et ses sous répertoires associés

Déplacer ou renommer un fichier: (move)

mv -b : Va effectuer une sauvegarde des fichiers avant de les déplacer


mv -i : Demande pour chaque fichier et chaque répertoire s'il peut ou non le déplacer
mv -u : Demande a "mv" de ne pas supprimer le fichier si la date de modification est la même
ou plus récente que son remplaçant.
[del@mistra del]$ mv linux-test perso
renomme le fichier "linux-test" en "perso"
[del@mistra del]$ mv perso perso
va écraser le fichier existant avec la source.
[del@mistra del]$ mv personnel mon-répertoire
va renommer le répertoire personnel en mon-répertoire
[del@mistra del]$ mv perso /home/del/mon-répertoire
va déplacer le fichier perso dans le répertoire /home/del/mon-répertoire

Recherche, analyse, modification de contenus

find / : Chercher a partir de la racine du fichier en cours


find -name : Spécifier un nom de fichier
find -print : Afficher le résultat a l'écran
find, locate et which :Retrouver un fichier
diff : Affichage des différences entre fichiers
cmp : Comparaison binaire
cat et more : Voir un fichier
sort : Tri des lignes
df : Emplacement du montage des systèmes de fichiers (partitions) et l'espace restant sur
chacun d'eux
Sed : Permet d'appliquer des commandes sur un fichier et d'afficher le résultat (sans
modification du fichier)
du : Donne la place du disque utilisée par le répertoire courant
wc : Comptage des mots, lignes ou caractères
file : Donne le type de fichier
grep -c : Trouver une expression rationnelle dans un fichier: (grep) donne le nombre de fois
où l'expression rationnelle a été trouvée dans le fichier:
[del@mistra del]$grep fouille linux-commande.html
vous affiche la ligne où se trouve l’occurrence de fouille dans le fichier linux-commande.html
grep -n : Pour rechercher des expressions rationnelles commençant par un tiret
[del@mistra del]$grep -l fouille /home/del/personnel/html/*
/home/del/personnel/html/linux-commande.html
Ici, j'ai demandé à la commande grep de chercher l'occurence "fouille" dans les fichiers du
répertoire /home/del/personnel/html/. Le résultat est le nom des fichiers qui contiennent
l'occurence. Ici, seul le fichier "linux-commande.html" dans le répertoire contient le mot "fouille"

Autres Commandes
pwd : Où suis-je ?
man (et nom de la commande): Rechercher des informations sur une commande.
which : Permet de connaître le chemin d'un exécutable
mdir : Affiche la liste des fichiers d'une disquette MS-Dos
mkmode : Crée un nom de fichier temporaire unique
emacs, joe : Éditer un fichier
ln : UNIX permet de créer plusieurs liens sur un même fichier avec la commande
who : Liste les utilisateurs connectés sur la station
free : Mémoire utilisée
clear : Efface l'écran
touch : Met à jour les dates d'accès des fichiers
logout : Permet de fermer son compte utilisateur
logname : Permet de savoir sous quel nom on est logué
tar : Archivage de données : la commande
q : quitte

Démarrage, Redémarrage & Arrêt

startx : demarrer Xwindows sous linux


reboot : redémarre de la machine
shutdown -r : arrête et redémarrer (rebooter).
shutdown -h : arrêter proprement linux.
exit : Déconnexion de l'utilisateur courant

Monter, démonter un système de fichiers

La commande mount est utilisée par linux dès son démarrage. Elle permet de monter un
système de fichiers. Ce montage est parfois effectué automatiquement grâce au fichier de
configuration /etc/fstab. Ce fichier contient tout ce que linux doit monter lors de son
démarrage, mount n'est accessible que par root.

Montage, démontage d'une partition Dos (Ne doit pas être en cours d'utilisation)

1: mount -t vfat /dev/hda1/dos/c


2: mount /dev/hda1/dos/c
Pour convertir automatiquement les fins de lignes des fichiers ASCII ms-dos au format unix,
utiliser l'option conv. conv=binary/conv=auto -t vfat /dev/hda1 /dos/c
mount -o conv=auto -t vfat /dev/hda1 /dos/c

Démontage d'une partition Dos (Ne doit pas être en cours d'utilisation)

umount /dos/
Montage du lecteur de CD-ROM
1: mount -t iso9660 /dev/hdb /cdrom
2: mount /dev/cdrom /cdrom
On peut préciser l'option -oou -r pour monter un périphérique en lecture seule, tel qu'un cdrom
ou une disquette protégée en écriture par exemple.
Montage du lecteur de disquettes
mount /dev/fd0 /floppy

Copie d'une disquette

cp /dev/fd0 disk.img :du lecteur de disquette --> disk


cp disk.img /dev/fd0 : d'un dick --> vers lecteur de disquette
ln -s /répertoire/nom_source /nom_destination : Création d'un lien symbolique

Archivage

gzip Compression et décompression des fichiers au format gz


gzip groupe : ce qui donne le fichier compressé groupe.gz
gzip -d groupe.gz : Décompression du fichier groupe
Options:
- c affiche le résultat de la compression sans modifier les fichiers originaux
- d décompresse le ou les fichiers
- f force l'écrasement sans demander confirmation
- h obtenir l'aide
- l affiche des informations sur le fichier
- L affiche la licence d'utilisation du programme
- q affiche les éventuels messages d'erreurs
- r pour agir sur les fichiers des sous-répertoires

- S modifie en .xxx l'extension des fichiers compressés


- t teste l'intégrité des fichiers compressés
- V affiche la version du programme
- [x] de 1 et 9 permet de choisir le taux de compression (1:faible, 9:maximum).

tar, Archiver plusieurs fichiers en un seul avec ou sans compression.

Syntaxe : tar cvf nom_de_fichier.tar motif


tar cvf groupe.tar *.c : Création d'une archive qui porte le nom "groupe.tar" et qui contient
tous les fichiers ayant l'extension C
tar xvf groupe.tar *.c: Extraction de l'archive groupe.tar.
tar zcvf groupe.tar *.c: Utilisation de l'option z pour compresser l'archive au moment de sa
création.
tar zxvf groupe.tar *.c: Décompression de groupe.tar pour Extraction des fichiers

Options:
tar c groupe.tar *.c: pour archiver
tar x groupe.tar: pour dé-archiver
tar cz groupe.tar.gz *.c: pour archiver et compresser
tar xz groupe.tar.gz: pour décompresser et extraire.

Commande d'administration système Linux

at : Commande permettant de lancer une autre commande ou un processus en différé.


cron : Outil logiciel disponible sous Unix permettant de lancer périodiquement les processus
indiqués dans la crontab.
crontab : table contenant des commandes qui doivent être exécutées périodiquement. C'est le
programme cron qui lance la commande. Les périodes peuvent être des heures (cron.hourly),
des jours (cron.daily), des semaines (cron.weekly) ou des mois (cron.monthly).
chmod : Placer les droits d'utilisation des fichiers
chown : Désigner l'utilisateur et le groupe propriétaire des fichiers
adduser : Ajouter un utilisateur
passwd : Spécifier ou modifier un mot de passe
chfn : Décrire un utilisateur
userdel : Supprimer un utilisateur
mount : Utiliser votre CD-ROM, votre lecteur de disquette
shutdown -h : Arrêter le système
mkbootdisk (device /dev/fd0 2.2.13-4.mdk): Crée une disquette de Boot
lilo -u : Désinstalle LILO

Messages Système

cat /proc/interrupts : Affiche les IRQ utilisés


cat /proc/ioports : Affiche les ports I / O utilisés
cat /proc/dma : Affiche l'utilisation des canaux DMA
cat /proc/pci : Affiche l'utilisation des ports PCI

La gestion des processus

top : permet de suivre les ressources que le processus utilise


ps : permet de connaître les processus actifs à un moment donné
pstree : permet d'afficher les processus sous forme d'arborescence et donc de voir leurs
interdépendances
kill : Permet de tuer un processus en court : syntaxe kill [option] PID.
Pour tuer le processus, je peux d'abord faire unps -ax pour connaître le numero du PID et
ensuite si par exemple le PID est 3600, je peux tuer la connexion en faisant
:[root@localhost/root]# kill 3600

Éditer un fichier: (éditeur vi)

Passer du mode commande aux mode texte, taper du mode texte, enregistrer.
vi comprend deux modes : un mode "commande" et un mode "insertion", après le lancement
de vi nous sommes en mode commande : appuyez sur la touche "Echap" puis sur "a" ("a",
comme "append", permet d'ajouter du texte après le curseur). Vous voyez en bas de l'écran
apparaître la ligne "INSERT".
Sauvez un fichier : Il faut sortir du mode texte en appuyant à nouveau sur la touche "Echap".
La mention "INSERT" disparaît, nous sommes en mode commande. Tapez maintenant ":w
nomfichier" et sur la touche retour chariot (afin d'écrire ("write") le fichier). Vous devez
obtenir en bas de l'écran ceci : "nomfichier" [New File] 3 lines, 142 characters written
Supprimer du texte et quitter vi
J'ai fait une faute d'orthographe! Nous allons supprimer le "p" qui est en trop dans
"suppprime" : déplacez le curseur sur un des "p" en trop, passez en mode commande
("INSERT" ne doit pas apparaître à l'écran), appuyez sur "x", le "p" a disparu.
Sauver les modifications effectuées : Passez en mode commande et tapez " :wq" (write et
quit). Vous êtes sorti de vi et votre fichier a été sauvegardé sous linux-test. Pour revenir à vi
en ouvrant le fichier linux-test au démarrage tapez : [root@localhost/root]# vi linux-test
Si vous souhaitez quitter sans enregistrer les dernières modifications, il vous faudra passer en
mode commande et taper " : q!".

D'autres commandes vi.

A : permet d'ajouter du texte à la fin de la ligne.


i : permet d'ajouter du texte avant le curseur.
o : permet d'ajouter une ligne en dessous du curseur.
O : permet d'ajouter une ligne au dessus du curseur.
le retour chariot : permet d'aller à la ligne suivante.
dd : permet de supprimer la ligne courante.
X : permet de supprimer le caractère avant le curseur.
u : permet d'annuler la dernière commande effectuée.

Organisation des répertoires - arborescence d'un système UNIX classique

/ : Répertoire racine, tous les autres répertoires en dépendent.


/bin : contient les binaires fondamentaux à la gestion de Linux.
/dev : contient une multitude de fichiers dits spéciaux. L'un deux correspond à mon modem.
Je dois indiquer ce fichier dans la configuration de mes outils de communication. De même
/dev/hda1 correspond à la première partition de mon disque dur IDE, si mon disque dur est un
SCSI, son nom sera /dev/sda1. Un dernier exemple : /dev/fd0 correspond à mon lecteur de
disquettes.
/etc : contient tous les fichiers de configuration de linux. On y retrouve par exemple le fichier
/etc/passwd, qui définit les mots de passe des utilisateurs.
/sbin : contient les binaires du système. On y trouve par exemple la commande shutdown qui
permet d'arrêter l'ordinateur.
/home : répertoire qui contient les répertoires des utilisateurs du système. Le répertoire des
utilisateurs est automatiquement créé avec la création d'un compte. Tous mes fichiers
personnels sont dans /home/(maltesse).
/lost+found : est le répertoire des fichiers perdus. Ces fameux fichiers qui, du fait d'erreur
disque, se retrouvent sans chemin d'accès. Le binaire fsck, qui est lancé régulièrement au
démarrage de linux, se charge de les détecter et de les stocker dans le répertoire /lost+found
/tmp : est un répertoire accessible par tous les utilisateurs du système, il permet de ne pas
encombrer son répertoire personnel par des fichiers que l'on souhaite de toute manière
détruire ou modifier.
/var/spool : répertoire des fichiers qui servent de file d'attente. Par exemple, les files d'attente
de l'imprimante se trouvent sous ce répertoire. Les données à imprimer, envoyer, ... sont
stockées dans ces files d'attentes jusqu'à ce qu'elles soient traitées.
/usr : contient tout ce qui concerne les binaires utiles à tous les utilisateurs et quelques
commandes d'administration. On y trouve cependant d'autres choses: /usr/bin contient donc
les binaires disponibles pour les utilisateurs et les scripts.
/usr/X11R6 : contient tout ce qui concerne Xfree86 (les bibliothèques, les binaires, la
documentation).
/usr/include : contient tous les "headers" nécessaires à la programmation dans les différents
langages.
/usr/lib : contient toutes les bibliothèques nécessaires au fonctionnement des logiciels.
(comme par exemple la bibliothèque C ou C++ ou tcl/tk).
/usr/local : on y met ce que l'on veut, mais surtout les fichiers d'usage local.

Les liens (ln)


Les liens forment un axe central du fonctionnement de linux. Qu'est ce qu'un lien ?
Un lien est un type spécial de fichier qui permet à plusieurs noms de fichiers de faire référence au
même fichier sur le disque.
On doit distinguer deux sortes de liens :
1. les liens durs associent deux ou plusieurs fichiers à un même espace sur le disque, les deux
fichiers sont pourtant indépendants. On peut dire que physiquement les fichiers sont les mêmes
mais que virtuellement ils ne le sont pas. Prenons un exemple :
[delcros@mistra personnel]$ln linux-test /home/delcros/linux-test-lien-dur
le fichier linux-test-lien-dur est créé dans le répertoire /home/delcros. si vous faites un ls -l vous
constaterez que linux-test et linux-test-lien ont la même taille. Au niveau de leur existence sous
linux, ils sont indépendants. Mais sur le disque, il n'existe qu'un seul fichier, simplement
linuxtest-lien-dur et linux-test sont sur le même espace (ou inode) sur le disque dur lorsqu'on les
appelle.
Ainsi si nous modifions le fichier linux-test-lien-dur, nous aurons automatiquement une
modification du fichier linux-test (et vice et versa), car la modification s'effectuera physiquement
sur le disque dur sur l'inode "partagé" par les deux fichiers.

2. Les liens symboliques :


si nous faisons maitenant un lien symbolique :
[delcros@mistra personnel]$ln -s linux-test /home/delcros/linux-test-lien-symb
Faites un ls -F dans le répertoire /home/delcros, vous verrez que le fichier linux-test-lien-symb
est précédé du signe "@". Ce fichier pointe sur linux-test. Si vous avez fait un peu de
programmation en C, nous retrouvons le concept de pointeur. Quand on appelle le fichier
linuxtest-lien-sym, il va automatiquement se diriger vers le fichier linux-test.

Quelles sont les points communs entre les liens symboliques et les liens durs ?
Le lien symbolique fait référence à un fichier dans un répertoire alors que le lien dur fait
référence à un espace sur le disque dur.

- Les liens symboliques sont des fichiers de petite taille qui ont une existence propre sur le disque
dur. Ces fichiers contiennent les références des fichiers sources auxquels ils correspondent.
- Dans le cas d'un lien dur, la suppression de l'un des deux fichiers n'affectera pas l'autre. Dans le
cas d'un lien symbolique, la suppression du fichier source entraînera un changement de
comportement du fichier lien qui ne correspondra plus à un fichier valide et sera donc dit "cassé"
("broken").
Utilité des liens
Les liens sont utiles si vous souhaitez qu'un fichier apparaisse dans plusieurs répertoires, ou sous
un nom différent. Imaginez que ce fichier fasse quelques megaoctets ... une copie à l'aide "cp"
entraînera une perte de place non négligeable alors qu'un lien permettra de limiter l'utilisation de
l'espace disque.
Mieux :un lien garanti que toute modification effectuée sur ce fichier concernera toutes les
apparentes « copies » dispersées.
Syntaxe de ln :
ln fichier-source fichier-lien ln -s permet d'effectuer un lien symbolique.

ln -b réalise une sauvegarde d'un fichier existant et dont nous aurions utilisé le nom avant de
l'écraser.
ln -i demande à l'utilisateur s'il souhaite écraser le fichier qui a un lien sur le fichier source au cas
ou celui-ci existerait déjà.
ln -d effectue des liens durs sur des répertoires ... seuls les utilisateurs possédant les droits
adéquats pourront le faire.
Le système de fichiers et correspondance Windows

Comme la plupart des systèmes de fichiers, les systèmes de fichiers Unix sont structurés hiérarchiquement, et
regroupent les fichiers dans des répertoires. Il existe un répertoire racine qui contient tous les fichiers soit
directement, soit indirectement dans ses sous-répertoires. C’est de ce répertoire que débutent tous les chemins
possibles dans le système de fichiers. Chaque fichier ou répertoire a un nom qui permet aux utilisateurs du système
de l’identifier. Le seul répertoire qui n’a pas de nom est le répertoire racine. Les systèmes de fichiers Unix n’ont pas
les mêmes limitations sur les noms que les systèmes de fichiers FAT et FAT32. Les noms des fichiers et des
répertoires peuvent être très longs (jusqu’à 256 caractères par nom), et ils prennent en compte la casse des lettres.
Les fichiers contiennent des données au sens large, ce peut être des documents (texte, image, film, son), des
programmes, des données utilisées par le système ou tout autre type de donnée imaginable.

En fait, les répertoires sont eux-mêmes des fichiers spéciaux, interprétés par le système différemment des autres
fichiers. Les données stockées dans les répertoires sont simplement les entrées de répertoires, qui caractérisent et
permettent d’avoir accès aux autres fichiers et aux autres répertoires.

Les noms de répertoires et de fichiers sont séparés par un caractère spécial. Ce caractère est traditionnellement,
sous Unix, la barre oblique de division (nommée « slash » en anglais) : ’/’. Les utilisateurs du DOS et de Windows
prendront garde ici au fait que Microsoft a préféré la barre oblique inverse

(nommée « backslash » en anglais) ’\’, rendant ainsi tous ses systèmes incompatibles avec les systèmes Unix, et
générant ainsi beaucoup de problèmes supplémentaires là où il n’était pas nécessaire d’en avoir (sincèrement, le coût
de cette ânerie, ainsi que celle des marqueurs de fin de ligne dans les fichiers textes, doit atteindre des sommes
astronomiques dans tous les projets de portage ou de développement d’applications portables). Comme le répertoire
racine n’a pas de nom, il peut être accédé directement avec un simple slash :
/
La qualification complète d’un fichier se fait en précisant le nom du répertoire à chaque niveau et en séparant par des
slashes chacun de ces noms. Cette qualification porte le nom de « chemin » d’accès (« path » en anglais). L’exemple
suivant vous montre l’allure d’un chemin d’accès typique sous Unix :

/home/remi.jean/lettres/professionnelles/marketing/ventes1999.sdw

Point de montage :

Les répertoires du système de base


Ces répertoires sont nécessaires au système de base. Ils contiennent des choses assez
"techniques".

Répertoire Description Equivalent Windows


/ la racine de l'arborescence C:
[bin = binary = exécutable] les logiciels indispensables pour
/bin l'utilisation du système de base : le shell, les commandes de C:\Windows
base (copier un fichier, monter un système de fichier...)
[s comme superuser = administrateur] les logiciels réservés à
/sbin
l'administrateur système (root) et indispensables en cas de
problème : création ou vérification du système de fichier,
partitionnement, installation de lilo, ajout d'un module du
noyau...
[lib = library = bibliothèque de programmes] : les
bibliothèques nécessaires aux logiciels de /bin et /sbin. Les
bibliothèques sont les fichiers .so, équivalent de .dll sous
/lib C:\Windows\System32
Windows. Ils contiennent des morceaux de programmes
pouvant être appelés par plusieurs programmes à la fois. Par
exemple, libz.so gère les fichiers compressés

/boot
[boot = démarrage] l'image du noyau de Linux (chargée par
Lilo ou Grub au démarrage de la machine)

Les répertoires des logiciels

Il faut d'abord comprendre la différence entre /usr et /usr/local : ils sont assez
similaires et leur sous-répertoires contiennent des logiciels et tout ce dont ils ont besoin
(bibliothèques partagées, fichiers). La différence est que tous les logiciels installés par la
distributions (donc avec des packages .rpm ou .deb) vont normalement dans /usr, et les
autres logiciels (compilés soi-même par exemples) vont normalement dans /usr/local.

Répertoire Description Equivalent Windows


Logiciels installés par la distribution et disponibles
/usr/bin pour tous (par exemple The Gimp, Evolution, C:\Program Files
Konqueror, Xmms...)
bibliothèques [voir plus haut] utilisées par les
/usr/lib C:\Windows\System32
programmes de /usr/bin

/usr/sbin
Logiciels d'administration installés par la
distribution
[share = partage] contient les fichiers partagés
/usr/share/ utiles aux logiciels, par exemple les textures et les
pinceaux de The Gimp
/etc fichiers de configuration de la plupart des logiciels (base de registres)
Logiciels disponibles pour tous et qui ne sont pas
installés par la distribution (par exemple si vous
/usr/local/bin C:\Program Files
installez la démo de Quake 3 ou si vous compilez
un logiciel, il devrait s'installer ici)
bibliothèques [voir plus haut] utilisées par les
/usr/local/lib C:\Windows\System32
programmes de /usr/local/bin
/usr/local/sbin Logiciels d'administration qui ne sont pas installés
par la distribution

/usr/local/share/
contient les fichiers partagés utiles aux logiciels de
/usr/local/bin

Les répertoires des utilisateurs

Répertoire Description Equivalent Windows


/home/toto le répertoire personnel de l'utilisateur "toto" C:\Mes Documents
/root le répertoire personnel de l'utilisateur root

Les répertoires des périphériques amovibles


En fait il n'y a pas que des périphériques amovibles (disquette, zip, CDROM), mais aussi
les disques durs non Linux.

Répertoire Description Equivalent Windows


/mnt base des répertoires des périphériques amovibles
/mnt/C disque dur C: de Windows
/mnt/D disque dur D: de Windows
/mnt/floppy disquette A:
/mnt/cdrom CD-ROM D:

Autres répertoires intéressants


Equivalent
Répertoire Description
Windows
/usr/src/linux les sources de Linux
/usr/doc la documentation (manuels, HOWTO...)
/dev répertoire spécial des périphériques accessibles par l'ordinateur
répertoire spécial contenant des informations du système
/proc
(mémoire, processus...)
[opt = optionnal] logiciels "optionnels" (non intégrés à la
/opt distribution). Si vous trouvez que /usr/local est trop chargé,
vous pouvez aussi installer des nouveaux logiciels ici
/tmp fichiers temporaires des applications C:\Temp

/var
[var = variable] Répertoire des données de taille variable dans
le temps (fichiers de logs par exemple)

/var/log
les logs (fichiers texte contenant tous les problèmes rencontrés)
du système et des applications

Vous aimerez peut-être aussi