Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
doc:systeme:ln [15/12/2012 03:05] martin_mtl [Illustration pratique] |
doc:systeme:ln [15/12/2012 04:53] martin_mtl [Modification du nom des fichiers liés :] |
||
---|---|---|---|
Ligne 76: | Ligne 76: | ||
test_lien$ | test_lien$ | ||
- | Créer dans ce répertoire deux fichiers vides, //test1.txt// et //test2.txt//, avec [[commande:touch|touch]], puis ajouter le texte //Bonjour toto// dans le premier avec [[commande:echo|echo]] ; le fichier test2.txt est laissé vide : | + | Créer dans ce répertoire un fichiers vide, //test1.txt//, avec [[commande:touch|touch]], puis ajoutez-y le texte //Bonjour toto// avec la commande [[commande:echo|echo]]. |
- | test_lien$ touch test1.txt test2.txt | + | test_lien$ touch test1.txt |
- | test_lien$ echo Bonjour toto > test1.txt | + | test_lien$ echo Bonjour Jojo > test1.txt |
On vérifie avec la commande [[commande:cat|cat]] que notre texte est bien écrit dans le fichier test1.txt : | On vérifie avec la commande [[commande:cat|cat]] que notre texte est bien écrit dans le fichier test1.txt : | ||
test_lien$ cat test1.txt | test_lien$ cat test1.txt | ||
- | Bonjour toto | + | Bonjour Jojo |
==== Créer un lien symbolique (symlink) : ==== | ==== Créer un lien symbolique (symlink) : ==== | ||
+ | |||
+ | Situation de départ : | ||
+ | <code> | ||
+ | martin@madebian:~/test_lien$ ls -l | ||
+ | total 4 | ||
+ | -rw-r--r-- 1 martin martin 13 déc 14 22:02 test1.txt | ||
+ | </code> | ||
+ | |||
+ | On crée le lien symbolique : | ||
test_lien$ ln -s test1.txt lien1.txt | test_lien$ ln -s test1.txt lien1.txt | ||
- | Visualisez le résultat : | + | Ce qui nous fait maintenant : |
<code> | <code> | ||
- | test_lien$ $ ls -l | + | martin@madebian:~/test_lien$ ls -l |
total 4 | total 4 | ||
- | lrwxrwxrwx 1 votre_user votre_user 9 jun 21 07:23 lien1.txt -> test1.txt | + | lrwxrwxrwx 1 martin martin 9 déc 14 22:05 lien1.txt -> test1.txt |
- | - rw- r-- r-- 1 votre_user votre_user 13 jun 21 07:22 test1.txt | + | -rw-r--r-- 1 martin martin 13 déc 14 22:02 test1.txt |
- | - rw- r-- r-- 1 votre_user votre_user 0 jun 21 07:22 test2.txt | + | |
</code> | </code> | ||
- | //**l**rwxrwxrwx 1 votre_user votre_user **8** jun 21 07:23 lien1.txt **-> test1.txt**// | + | Attardons-nous un peu sur la ligne : |
+ | **l**rwxrwxrwx 1 martin martin **9** déc 14 22:05 lien1.txt **->** test1.txt | ||
- **l** indique un lien symbolique sur ce fichier | - **l** indique un lien symbolique sur ce fichier | ||
- | - **8** indique l'occupation réelle du fichier sur le disque | + | - **9** indique l'occupation réelle du fichier sur le disque |
- **-> test1.txt** indique le fichier pointé par le lien symbolique | - **-> test1.txt** indique le fichier pointé par le lien symbolique | ||
- | Nous pouvons en déduire : | + | Précisons aussi que : |
* Un //fichier symbole// créé avec la commande ''ln'' ne contient pas l'occupation disque affichée qui est contenue dans le fichier cible. | * Un //fichier symbole// créé avec la commande ''ln'' ne contient pas l'occupation disque affichée qui est contenue dans le fichier cible. | ||
Ligne 125: | Ligne 135: | ||
<code> | <code> | ||
- | test_lien$ $ ls -l | + | martin@madebian:~/test_lien$ ls -l |
total 4 | total 4 | ||
- | lrwxrwxrwx 1 votre_user votre_user **9** jun 21 07:23 lien1.txt -> test1.txt | + | lrwxrwxrwx 1 martin martin 9 déc 14 22:05 lien1.txt -> test1.txt |
- | - rw- r-- r-- 1 votre_user votre_user **30** jun 21 07:22 test1.txt | + | -rw-r--r-- 1 martin martin 30 déc 14 22:08 test1.txt |
- | - rw- r-- r-- 1 votre_user votre_user 0 jun 21 07:22 test2.txt | + | |
</code> | </code> | ||
Ligne 143: | Ligne 152: | ||
À l'aide de la commande ''ls -li'', nous pouvons voir l'occupation disque générée par un lien //symlink// en constatant les chiffres indiquant les index respectifs des inodes de chacun des fichiers liés : | À l'aide de la commande ''ls -li'', nous pouvons voir l'occupation disque générée par un lien //symlink// en constatant les chiffres indiquant les index respectifs des inodes de chacun des fichiers liés : | ||
<code> | <code> | ||
- | test_lien$ ls -li | + | martin@madebian:~/test_lien$ ls -li |
- | 604494 - rw- r-- r-- 2 admijoel admijoel 32 jun 21 11:04 lien2.txt | + | total 4 |
- | 604493 - rw- r-- r-- 2 admijoel admijoel 32 jun 21 11:04 test2.txt | + | 8667148 lrwxrwxrwx 1 martin martin 9 déc 14 22:05 lien1.txt -> test1.txt |
+ | 8667139 -rw-r--r-- 1 martin martin 30 déc 14 22:08 test1.txt | ||
</code> | </code> | ||
Ligne 157: | Ligne 167: | ||
<code> | <code> | ||
- | test_lien$ $ ls -l | + | martin@madebian:~/test_lien$ ls -l |
total 4 | total 4 | ||
- | - rw- r-- r-- 1 votre_user votre_user **30** jun 21 07:22 test1.txt | + | -rw-r--r-- 1 martin martin 30 déc 14 22:08 test1.txt |
- | - rw- r-- r-- 1 votre_user votre_user 0 jun 21 07:22 test2.txt | + | |
</code> | </code> | ||
Ligne 169: | Ligne 178: | ||
<code> | <code> | ||
- | test_lien$ $ ls -l | + | martin@madebian:~/test_lien$ ls -l |
total 4 | total 4 | ||
- | l rwx rwx rwx 1 votre_user votre_user **9** jun 21 07:23 lien1.txt -> test1.txt | + | lrwxrwxrwx 1 martin martin 9 déc 14 22:13 lien1.txt -> test1.txt |
- | - rw- r-- r-- 1 votre_user votre_user **30** jun 21 07:22 test1.txt | + | -rw-r--r-- 1 martin martin 30 déc 14 22:08 test1.txt |
- | - rw- r-- r-- 1 votre_user votre_user 0 jun 21 07:22 test2.txt | + | |
</code> | </code> | ||
Ligne 182: | Ligne 190: | ||
<code> | <code> | ||
- | test_lien$ $ ls -l | + | martin@madebian:~/test_lien$ ls -l |
total 4 | total 4 | ||
- | l rwx rwx rwx 1 votre_user votre_user **9** jun 21 07:23 lien2.txt -> test1.txt | + | lrwxrwxrwx 1 martin martin 9 déc 14 22:13 lien2.txt -> test1.txt |
- | - rw- r-- r-- 1 votre_user votre_user **30** jun 21 07:22 test1.txt | + | -rw-r--r-- 1 martin martin 30 déc 14 22:08 test1.txt |
- | - rw- r-- r-- 1 votre_user votre_user 0 jun 21 07:22 test2.txt | + | |
</code> | </code> | ||
Tout reste fonctionnel et en place. :-) | Tout reste fonctionnel et en place. :-) | ||
- | <note>Pour pousuivre cette illustration dans la clarté, remettons le nommage du fichier symbole ''lien2.txt'' en ''lien1.txt''.</note> | + | <note>Pour poursuivre cette illustration dans la clarté, remettons le nommage du fichier symbole ''lien2.txt'' en ''lien1.txt''.</note> |
test_lien$ mv lien2.txt lien1.txt | test_lien$ mv lien2.txt lien1.txt | ||
=== Modifier le nom du fichier cible === | === Modifier le nom du fichier cible === | ||
- | Modifions le nommage du fichier cible ''test1.txt'' : | + | Modifions le nom du fichier cible ''test1.txt'' : |
- | test_lien$ mv test1.txt test3.txt | + | test_lien$ mv test1.txt test2.txt |
<code> | <code> | ||
- | test_lien$ $ ls -l | + | martin@madebian:~/test_lien$ ls -l |
total 4 | total 4 | ||
- | lrwxrwxrwx 1 votre_user votre_user **9** jun 21 07:23 <del>lien1.txt</del> -> <del>test1.txt</del> | + | lrwxrwxrwx 1 martin martin 9 déc 14 22:13 lien1.txt -> test1.txt |
- | - rw- r-- r-- 1 votre_user votre_user 0 jun 21 07:22 test2.txt | + | -rw-r--r-- 1 martin martin 30 déc 14 22:08 test2.txt |
- | - rw- r-- r-- 1 votre_user votre_user **30** jun 21 07:22 test3.txt | + | |
</code> | </code> | ||
- | //Patatras !// Nous voyons alors que le fichier cible ''lien1.txt'' se met en carafe (surligné et en rouge dans le terminal bash) dès le //rafraîchissement// du terminal ouvert. | + | //Patatras !// Nous voyons alors que le fichier cible ''lien1.txt'' se met en carafe - il devient écrit en rouge dans le terminal bash) dès le //rafraîchissement// du terminal ouvert. |
Il suffit : | Il suffit : |