1. Introduction
Rappel des commandes rencontrées et de leur usage basique :
commande | rôle | usage |
---|---|---|
man |
lire les pages de manuel | man nomdecommande |
apropos |
trouver des pages de manuel | apropos mot-clef |
who |
qui est connecté | who [-H] |
yppasswd |
changer de mot de passe | yppasswd |
ls |
afficher le contenu d’un dossier | ls [chemin] |
cd |
se déplacer dans l’arborescence | cd [chemin] |
mkdir |
créer un dossier | mkdir [-p] nomdossier |
pwd |
afficher le dossier courant | pwd |
rmdir |
supprimer un dossier | rmdir nomdossier |
rm |
supprimer un fichier | rm [-r] fichier |
mv |
déplacer ou renommer | mv source... dest |
touch |
créer un fichier (ou changer son timestamp) | touch fichier |
cat |
afficher le contenu d’un fichier | cat [fichier] |
chmod |
modifier les droits | chmod MODE fichier |
2. Inodes et liens
Les fichiers et dossiers sont identifiés sur le disque dur par une
adresse sous forme d’un numéro. Ce nombre est nommé inoeud (inode en
anglais). Pour connaître cet inoeud, on peut utiliser l’option -i
de
la commande ls.
Utilisons la commande suivante : ls -il
, exemple de résultat
301241 -rw-rw-rw- 1 hainry profs 36 sep 28 17:07 autre
Inode droits n proprio grp taille date nom de fichier
Où n représente le nombre de liens pointant vers le fichier. En effet, un fichier est écrit sur le disque dur au lieu pointé par l’inoeud et plusieurs noms de fichier peuvent le désigner. Ces différents noms sont des liens vers le fichier. S’il y a plusieurs liens vers un contenu, l’inoeud sera le même pour tous ces fichiers qui sont en nombre n. Notons que quand nous faisons ce que nous appelions précédemment supprimer un fichier, nous ne supprimons en réalité qu’un lien vers ce fichier, tant que le nombre de liens est supérieur à 1, le contenu est toujours acessible.
La commande ln
permet de créer des liens. Lire le manuel de la
commande ln
. Il est possible de créer des liens physiques (ou liens
durs : hard links en anglais) qui sont les liens qui nous intéressent
ici mais aussi des liens symboliques (symlinks).
2.1. Introduction aux liens symboliques et physiques
Créer un fichier
a
. Écrire quelque chose dedans. Quel est son inode ? Combien de liens pointent vers son contenu ?Créer un fichier
b
lien vers le fichiera
. Quel est son inode ? Combien de liens pointent vers son contenu ?Créer un lien symbolique
c
versa
.Aller dans un autre dossier (par exemple
~/Desktop
). Faire un lien symbolique versa
en utilisant un chemin relatif.Supprimer
a
. Quel est le contenu deb
? Celui dec
.?Les liens physiques ne peuvent pas être créés pour des dossiers, uniquement pour des fichiers. De plus, on ne peut créer de lien physique pour un fichier que sur la partition où ce fichier est. Notons enfin que certains systèmes de fichiers ne permettent pas la création de liens physiques.
Les liens symboliques par contre peuvent aller d’une partition vers une autre, ils peuvent également pointer vers un dossier.
2.2. Liens symboliques et liens physiques
Le tableau suivant présente quelques titres de films en français, anglais et en version originale, ainsi que la langue de la version originale.
Titre en vo | Titre en vf | Titre en anglais | Langue originale | Réalisateur |
---|---|---|---|---|
Lola Rennt | Cours Lola, cours | Run Lola run | allemand | Tom Tykwer |
Le fabuleux destin d’Amélie Poulain | Le fabuleux destin d’Amélie Poulain | Amelie from Montmartre | français | Jean-Pierre Jeunet |
The hangover | Very bad trip | The hangover | anglais | Todd Philips |
Il buono, il brutto, il cattivo | Le bon, la brute et le truand | The good, the bad and the ugly | italien | Sergio Leone |
Shichinin no samurai | Les sept samouraïs | The seven samurai | japonais | Akira Kurosawa |
North by Northwest | La mort aux trousses | North by Northwest | anglais | Alfred Hitchcock |
M | M le maudit | M | allemand | Fritz Lang |
Wo hu cang long | Tigre et dragon | Crouching tiger, hidden dragon | chinois | Ang Lee |
Créer, dans un dossier
films
, pour chaque film une fiche (un fichier texte) portant pour nom son titre original La fiche de chaque film pourra être de la forme suivante :Lola Rennt (Cours Lola cours) film allemand de Tom Tykwer
La création des fiches pourra être réalisée à l’aide d’un éditeur de texte (
nano
,gedit
ouleafpad
) ou bien avececho
par exemple avec une commande similaire àecho "Lola rennt (Cours Lola, cours) film allemand de Tom Tykwer" > Lola\ rennt
Cette commande écrit le texte entre guillemets dans le fichier
Lola rennt
. Le\
indique au shell que l’espace fait partie du nom de fichier et n’est pas un séparateur d’arguments. Pour plus d’informations sur ce que signifie le>
, attendre le TP sur les entrées sorties et redirectionsÀ l’aide de la commande
ln
, créer des liens pour que les différents noms de chaque film soient présents dans le dossierfilms
. Vous devez obtenir une arborescence contenant :. |-- Amelie from Montmartre |-- Cours Lola cours |-- Le fabuleux destin d'Amélie Poulain |-- Lola rennt `-- Run Lola Run
Avec “Run Lola Run”, “Lola rennt” et “Cours Lola cours” qui sont des liens physiques les uns vers les autres.
Quels sont les inodes des différents fichiers ?
Combien y a-t-il de liens pour le fichier “Lola rennt” ? Pour les autres fichiers ?
Comparer les contenus de
Lola rennt
, deCours Lola cours
et deRun Lola run
à l’aide decat
.Créer des dossiers
original
,francais
,anglais
dans lesquels vous déplacerez les fichiers dont le nom est dans la langue en question. Tous les films sont-ils représentés dans tous les dossiers ? L’arborescence à obtenir ressemblera à :. |-- anglais | |-- .... | `-- Run Lola run |-- francais | |-- .... | `-- Cours Lola cours `-- original |-- .... `-- Lola rennt
Comparer les contenus de
Lola rennt
, deCours Lola cours
et deRun Lola run
à l’aide decat
.Combien y a-t-il de liens pour le fichier
Lola rennt
? Pour les autres fichiers ?Modifier
Very bad trip
pour qu’il ne soit plus un film anglais mais américain. Quel est le contenu deThe hangover
?Ajouter à tous les films le siècle dans lequel ils ont été tournés (vingtième pour tous sauf the hangover) à l’aide d’une commande de la forme
echo "XXe siècle" >> original/Lola\ rennt
Combien de commandes sont nécessaires ?
anglais/M
a-t-il la même date queoriginal/M
?Dans le dossier
original
, créer un lien vers le dossierfrançais
en utilisant un chemin relatif. Quelle sorte de lien choisir ?Supprimer le dossier
francais
. Les contenus des fichiers sont-ils toujours accessibles ? Peut-on connaître le titres en vf de tous les films ?Créer un lien symbolique
Amelie
dans~
qui pointe versfilms/original/Le fabuleux destin d'Amélie Poulain
.Créer un dossier
vo
dans~
. Y ajouter des liens symboliques qui pointent vers les fichiers du dossieroriginal
.Comparer les contenus de
vo/Le fabuleux destin d'Amélie Poulain
,Amelie
,films/original/Le fabuleux destin d'Amélie Poulain
.Modifier
Amelie
de façon à ce qu’il pointe versvo/Le fabuleux destin d'Amélie Poulain
.Quels sont les inodes des fichiers et dossiers créés ?
Épilogue
Vu au cours de ce TP :
- les notions d’inodes, de liens symboliques et durs.
- la commandes
ln
.
À venir : les redirections, la gestion des processus, les scripts.