Question Comment créer un lien symbolique dans Windows?


Windows Vista a ajouté la possibilité de créer des liens symboliques vers des fichiers et des répertoires. Comment créer un lien symbolique et quelles sont les versions actuelles de Windows de l'utilisateur et du serveur qui le prennent en charge?


108
2018-05-11 18:06


origine


Quelqu'un peut-il souligner les différences entre un lien symbolique et un raccourci? - tomjedrz
@tomjedrz: si vous utilisez un raccourci, toute API permettant d'ouvrir ce raccourci ouvrira un fichier texte contenant le chemin d'accès au fichier / dossier cible. Si vous utilisez des liens, toute API permettant d'ouvrir ce lien ouvrira le fichier / dossier cible. - Afriza N. Arief
Contrairement à ce que tout le monde a dit, je confirme que c'est possible utiliser liens symboliques dans Windows XP. (Je l'utilise pour installer la base de données Picasa sur le dossier partagé de la VM). Il suffit de regarder schinagl.priv.at/nt/hardlinkshellext/hardlinkshellext.htmlet accédez à la section "Liens symboliques pour Windows XP". HTH - Adam Ryczkowski


Réponses:


Vous pouvez créer un lien symbolique avec l'utilitaire de ligne de commande. mklink.

MKLINK [[/D] | [/H] | [/J]] Link Target

        /D      Creates a directory symbolic link.  Default is a file
                symbolic link.
        /H      Creates a hard link instead of a symbolic link.
        /J      Creates a Directory Junction.
        Link    specifies the new symbolic link name.
        Target  specifies the path (relative or absolute) that the new link
                refers to.

Les liens symboliques via mklink sont disponibles depuis Windows Vista et Windows Server 2008. Sous Windows XP et Windows Server 2003, vous pouvez utiliser

fsutil hardlink create <destination filename> <source filename>

Selon msdn.microsoft, Les liens symboliques ne sont PAS pris en charge sur FAT16 / 32 et exFAT. Il semble que Windows ne les supporte que depuis ou vers NTFS-Partitions. Les futurs systèmes d'exploitation Windows continueront probablement à prendre en charge mklink.

Vous pouvez lire plus d’informations sur cette nouvelle fonctionnalité sur Microsoft TechNet, Le blog de Junfeng Zhang ou howtogeek.com.


106
2018-05-11 18:20



Il serait bon d'ajouter l'URL Technet de David à votre entrée pour qu'elle soit complète. - Michael Pryor
note du site, qu'est-ce qu'une junte (option / J)? - Roy Rico
Une jonction d'annuaire est un type de lien symbolique d'annuaire. support.microsoft.com/?kbid=205524 - Lara Dougan
NTFS prend en charge les liens (avec différents noms) depuis Windows 2000, mais ils n'étaient utilisés qu'en interne, notamment dans les partages de domaine SYSVOL. certains utilitaires étaient disponibles pour les gérer, mais n'étaient pas intégrés; Vista a présenté l'outil MKLINK et l'utilisation intensive des liens sur les installations Windows par défaut. - Massimo
Serait bien de mentionner fsutil de la réponse de @ sascha ci-dessous pour fournir une solution à Windows Server 2003. - Phrogz


Sous Windows XP, vous pouvez utiliser fsutil (intégré au système d'exploitation) pour créer un lien dur

 fsutil hardlink create c:\foo.txt c:\bar.txt

Gardez à l'esprit que fsutil ne fonctionnera que si les deux sont sur le même lecteur


30
2018-05-11 23:48



Bonne réponse. Je suis sur WinXP / Win2003 et ai besoin de mklink, mais cela a résolu mon problème pour moi. J'utilise habituellement junction.exe de sysinternals, mais cela ne gère que les répertoires et dans ce cas, j'avais besoin d'un lien de fichier - s3v1
Dommage qu'un lien symbolique ne puisse pas être créé par fsutil, du moins d'après ce que j'ai lu ailleurs. C'est un lien dur et donc pas une réponse à la question. - Vlasec


Une petite chose, si vous utilisez Powershell, mklink ne fonctionne pas directement, lancez-le comme ceci:

PS C:\d\eclipseInstalls> cmd /k mklink /D antRunner 3.4.2
symbolic link created for antRunner <<===>> 3.4.2

10
2018-06-28 16:19



Cela devrait être / c, pas / k, sinon cmd.exe ne se fermera pas. - dangph


Utilisation mklink ou jonction de Sysinternals (Microsoft). je croyez  mklink fonctionnera sous Windows 2000 et supérieur, mais je ne trouve aucune documentation matérielle à ce sujet. jonction est pour Windows 2000 et supérieur.


7
2018-05-11 18:10



La commande mklink ne concerne que Vista et Server 2008 et versions ultérieures, comme je l’ai indiqué ci-dessus.


Je ne l’ai pas vu dans les réponses, mais linkd.exe (dans le kit de ressources Windows 2003 ici) vous permet de créer des jonctions, qui fonctionnent à peu près comme un lien souple / matériel sous Linux. Les jonctions sont disponibles à partir de Windows 2000 et versions ultérieures. Il suffit donc de copier linkd.exe sur le système cible pour que cela fonctionne.


4
2018-06-04 22:36



Notez que `/ linkd` ne concerne que les répertoires, pas les fichiers. - Phrogz


Si vous utilisez encore Windows, XP, 2000, 2003, etc., essayez Lien NTFS.

Je l'utilise beaucoup. Vous obtenez une option de menu clic droit du lien shell pour créer un point de jonction. Excellent truc.


3
2018-05-11 19:35



Cela fonctionnait très bien pour Windows 2003 pour la création d'un lien symbolique vers un dossier situé sur un autre lecteur. Merci! - Phil
Commentaire d'un utilisateur anonyme, modifié à l'origine dans la réponse: "Remarque: pour que XP fonctionne, il doit utiliser une partition NTFS, et non pas FAT ou FAT32. Voir aumha.org/win5/a/ntfscvt.php pour connaître les étapes à suivre pour convertir en NTFS. " - squillman


Voir TechNet entrée. Je crois que c’est une fonctionnalité de Vista / Server 2008 et plus.


2
2018-05-11 18:08



Cool, jamais connu à propos de cette fonctionnalité avant, merci pour le lien, pourrait être tellement utile !!! - Marc-Andre R.


Pour vous assurer que vos liens fonctionnent, vous pouvez vérifier la configuration de votre serveur. Des liens peuvent être créés, mais si vous n'utilisez pas le paramètre symlinkevaluation dans la commande suivante, vos liens risquent de ne pas fonctionner.

fsutil behavior set SymlinkEvaluation L2L:1 R2R:1 L2R:1 R2L:1

Voir également http://technet.microsoft.com/en-us/library/cc754077%28v=ws.10%29.aspx. Par défaut, seules les options locales sont activées.


1
2018-01-05 22:07