Comportement:
me@local: tree
.
|-- ba
| `-- file.txt
|-- foo
| `-- file.txt -> ba/file.txt
`-- foobar
maintenant, supposons que je déplace le fichier.txt de ba
vers foobar
:
me@local: mv ba/file.txt foobar/file.txt
J'ai remarqué que le lien symbolique dans le dossier foo pointe toujours le chemin ba/file.txt
.
Il existe un moyen de créer des liens symboliques qui mettent à jour automatiquement les chemins lorsque le fichier source est déplacé?
Ou des liens symboliques supprimés lorsque je supprime le fichier source?
Sera génial.
Vous pouvez créer des liens durs.
Les liens physiques ont leurs propres inconvénients, par exemple, aucun lien vers des répertoires, aucun lien entre les systèmes de fichiers. Et ils ne sont pas supprimés lorsque vous supprimez "l'original"; En fait, ils empêchent la libération de l'espace disque et vous pouvez toujours accéder au contenu via le lien physique.
Vous ne pouvez pas créer de liens physiques dans le navigateur de fichiers (Nautilus), mais il y a n rapport de bogue à ce sujet.
Oui, vous pouvez.
Dans le shell, vous devez taper:
ln ba/file.txt foo/file.txt
c'est un lien fort, et si vous supprimez même le fichier dans ba/file.txt, il reste dans foo/file.txt (vous pouvez voir combien de liens il y a avec la commande ls -l
Si vous voulez faire ce que vous avez fait (créer un lien symbolique), vous devez taper:
ln -s ba/file.txt foo/file.txt
Autant que je sache, il n'y a aucun moyen de faire cela avec les systèmes de fichiers linux normaux.
Les liens symboliques ne sont en réalité qu'un texte idiot qui dit: "Regarde, je m'appelle vraiment Foo" - rien ne permet de vérifier que Foo existe, comme tu l'as découvert. Vous pouvez créer des liens symboliques qui pointent vers rien avec la même facilité. Vous pouvez également créer des liens symboliques pointant vers quelque chose d’utile.
Peut-être que quelqu'un ayant une connaissance plus approfondie des systèmes de fichiers autres que ext2/3/4 (comme, par exemple, jfs? Ou zfs? Ou zfs?) Pourra peut-être dire si cela est possible avec des systèmes de fichiers plus avancés que ext2/3/4. Peut-être que NTFS pourrait supporter cela même? NTFS n'a pas de lien symbolique en tant que tel, mais il existe une autre chose légèrement similaire (dont le nom m'échappe pour le moment).