Ma question ne concerne pas directement Debian mais plut=C3=B4t UNIX, aussi
je m'excuse d'avance pour le hors sujet.
Ma question est sans doute assez trivial, mais je m=E2=80=99int=C3=A9resse,=
pour ma
culture personnelle, aux diff=C3=A9rents type de liens.
Tout d'abord, voici ce que je crois avoir compris :
* il existe deux types de liens : les liens hard et les liens symboliques
* deux liens hard porte sur le m=C3=AAme inode et sont donc sur la m=C3=AAm=
e
partition, et patagent les caract=C3=A9ristiques du fichier (propri=C3=A9ta=
ire,
groupe, droit etc), ce qui affecte l'un affectera l'autre
* un lien symbolique pointe sur un chemin (relatif ou absolu) que le
noyau va suivre pour trouver le fichier original
Mes questions sont alors :
* Quel est l=E2=80=99int=C3=A9r=C3=AAt des liens hard par rapport aux liens=
symboliques
(juste un gain de temps pour trouver l'inode original ?)
* Pourquoi un lien hard ne peut-il pas pointer un dossier ?
Encore une fois je vous pris de m'excuser si mes question sont trop hors su=
jet.
Et pour toute r=C3=A9ponses, je ne suis pas difficile, si vous avez des
liens :) vers des pages int=C3=A9ressante r=C3=A9pondant =C3=A0 une questio=
n, j'en
serai ravis.
Merci d'avance
Etienne
--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers debian-user-french-REQUEST@lists.debian.org
En cas de soucis, contactez EN ANGLAIS listmaster@lists.debian.org
Archive: http://lists.debian.org/CAJX_iYPKDhF05O7jkqHTHyPDud__o4o+Nagnu=n2Ytp7symmGw@mail.gmail.com
Je vous pris de m'excuser si je pose trop de question, mais cette histoire de lien me perturbe. Est ce que les liens hard ont un réel intérêt ou ont ils juste une solution élégante à un problème qui ne se pose plus ou presque pas ?
Ils ont de réels intérêts.
* Par exemple pour dupliquer une arborescence avec des hardlinks (que sur les fichiers), on utilise
cp -l src/ dest
c'est rapide et économe. Pratique pour faire des tests sur les noms des fichiers par exemple, mais attention, si on touche au contenu des fichiers, bien entendu on les modifie "de partout" (dans src et dans dest).
* Git utilise aussi les hardlinks pour cloner ses dépôts localement:
git init depot && cd depot date > fichier git add fichier && git commit cd .. git clone depot depot2
Git peut se le permettre puisque les meta-fichiers du dépôts (incréments ou blob de Git) ne seront jamais modifiés, au pire supprimés (gc) ce qui n'aura aucun effet sur la copie originale.
* Un dernier exemple: on peut ranger les fichier en plusieurs endroits en utilisant des hardlinks. Mais cela n'est pas hyper robuste dans le sens où certains programmes (comme l'éditeur de crontab "crontab -e") créent un nouveau fichier et remplacent l'ancien lorsque qu'on y fait une simple modification. Le fichier mofidié a alors un inode différent et n'est plus lié à l'inode originel.
On peut aussi voir un hardlink comme un pointeur sur inode (et ce pointeur a le bon goût d'être nommé). Un symlink pointe quant a lui un endroit dans l'arborescence (et le fichier pointé peut bien changer d'inode, le lien sera toujours valide tant que le nom est le même).
Je crois que pour bien assimiler les utilisations possibles de {sym,hard}links, il n'y a rien de tel que de la pratique et des expériences.
Nicolas
-- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists
Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe" vers En cas de soucis, contactez EN ANGLAIS Archive: http://lists.debian.org/
On 12/07/2011 17:37, Etienne CROMBEZ wrote:
Je vous pris de m'excuser si je pose trop de question, mais cette
histoire de lien me perturbe.
Est ce que les liens hard ont un réel intérêt ou ont ils juste une
solution élégante à un problème qui ne se pose plus ou presque pas ?
Ils ont de réels intérêts.
* Par exemple pour dupliquer une arborescence avec des hardlinks (que sur les fichiers),
on utilise
cp -l src/ dest
c'est rapide et économe. Pratique pour faire des tests sur les noms des fichiers par
exemple, mais attention, si on touche au contenu des fichiers, bien entendu on les modifie
"de partout" (dans src et dans dest).
* Git utilise aussi les hardlinks pour cloner ses dépôts localement:
git init depot && cd depot
date > fichier
git add fichier && git commit
cd ..
git clone depot depot2
Git peut se le permettre puisque les meta-fichiers du dépôts (incréments ou blob de Git)
ne seront jamais modifiés, au pire supprimés (gc) ce qui n'aura aucun effet sur la copie
originale.
* Un dernier exemple: on peut ranger les fichier en plusieurs endroits en utilisant des
hardlinks. Mais cela n'est pas hyper robuste dans le sens où certains programmes (comme
l'éditeur de crontab "crontab -e") créent un nouveau fichier et remplacent l'ancien
lorsque qu'on y fait une simple modification. Le fichier mofidié a alors un inode
différent et n'est plus lié à l'inode originel.
On peut aussi voir un hardlink comme un pointeur sur inode (et ce pointeur a le bon goût
d'être nommé). Un symlink pointe quant a lui un endroit dans l'arborescence (et le
fichier pointé peut bien changer d'inode, le lien sera toujours valide tant que le nom est
le même).
Je crois que pour bien assimiler les utilisations possibles de {sym,hard}links, il n'y a
rien de tel que de la pratique et des expériences.
Nicolas
--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers debian-user-french-REQUEST@lists.debian.org
En cas de soucis, contactez EN ANGLAIS listmaster@lists.debian.org
Archive: http://lists.debian.org/4E1E9CD7.2040806@yahoo.fr
Je vous pris de m'excuser si je pose trop de question, mais cette histoire de lien me perturbe. Est ce que les liens hard ont un réel intérêt ou ont ils juste une solution élégante à un problème qui ne se pose plus ou presque pas ?
Ils ont de réels intérêts.
* Par exemple pour dupliquer une arborescence avec des hardlinks (que sur les fichiers), on utilise
cp -l src/ dest
c'est rapide et économe. Pratique pour faire des tests sur les noms des fichiers par exemple, mais attention, si on touche au contenu des fichiers, bien entendu on les modifie "de partout" (dans src et dans dest).
* Git utilise aussi les hardlinks pour cloner ses dépôts localement:
git init depot && cd depot date > fichier git add fichier && git commit cd .. git clone depot depot2
Git peut se le permettre puisque les meta-fichiers du dépôts (incréments ou blob de Git) ne seront jamais modifiés, au pire supprimés (gc) ce qui n'aura aucun effet sur la copie originale.
* Un dernier exemple: on peut ranger les fichier en plusieurs endroits en utilisant des hardlinks. Mais cela n'est pas hyper robuste dans le sens où certains programmes (comme l'éditeur de crontab "crontab -e") créent un nouveau fichier et remplacent l'ancien lorsque qu'on y fait une simple modification. Le fichier mofidié a alors un inode différent et n'est plus lié à l'inode originel.
On peut aussi voir un hardlink comme un pointeur sur inode (et ce pointeur a le bon goût d'être nommé). Un symlink pointe quant a lui un endroit dans l'arborescence (et le fichier pointé peut bien changer d'inode, le lien sera toujours valide tant que le nom est le même).
Je crois que pour bien assimiler les utilisations possibles de {sym,hard}links, il n'y a rien de tel que de la pratique et des expériences.
Nicolas
-- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists
Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe" vers En cas de soucis, contactez EN ANGLAIS Archive: http://lists.debian.org/