Windows XP vs Vista: NTFS Junction points

前端 未结 6 1950
臣服心动
臣服心动 2021-02-02 12:52

Problem: I relied heavily on NTFS Junction points in Windows XP, even though they apparently were not an \"official\" feature of the operating system. Now MSFT

相关标签:
6条回答
  • 2021-02-02 13:23

    What you trying to link to? Are you linking TO your portable drive or FROM your drive? Are you using "mklink /d"?

    0 讨论(0)
  • 2021-02-02 13:29

    Junctions points within the same volume should work - they should be hardlinked directories.

    Have you tried if the USB drive works between XP machines? It might not work.

    I know that for vista the volumes are NOT identified by path (Q:) but by volume GUID. The $MFT_REPARSE_POINT format might have changed from XP to Vista to accomodate this. Under Vista, this mean that even if your Q drive is suddenly X, the junction point shoudl still work, where under XP it would be broken.

    0 讨论(0)
  • 2021-02-02 13:32

    Christoph Hochstätter made an "mklink.exe" substitute for Windows XP that can actually create genuine Vista (et al.) symlink reparse points, but warns that they may not be usable under the Windows XP OS. However, Cygwin will recognise them under XP. And, of course, Linux ntfs mounts. Not sure if this will be of much help though...

    http://www.zdnet.de/windows_system_verbessern_mklink_f_uuml_r_windows_download-39002345-30973-1.htm

    0 讨论(0)
  • 2021-02-02 13:33

    Why don't you try with this program (freeware) to create the links. Apparently Windows Vista needs a different version. I have tried both versions (XP and Vista) and they work. I know it doesn't have to do with your specific problem, but given that there are separate versions for each OS, there might be diferences in the way Junctions are created.

    The tool you have used is rather old (2007) and doesn't mention Windows Vista. I know that MSFT did change something in the Junction Points in order to add some functionality they wanted to use. Vista is more authoritative when it comes to Program Files folders and such.

    0 讨论(0)
  • 2021-02-02 13:33

    Besides the Linkmagic program already suggested in one of the previous comments, Link shell extension is another good program to manipulate (and check) links and junctions:

    http://schinagl.priv.at/nt/hardlinkshellext/hardlinkshellext.html

    Both of these programs can tell you what the existing links/junctions point to, and what they are. This may help you in figuring out what's wrong.

    0 讨论(0)
  • 2021-02-02 13:38

    Junctions and symbolic links are two different types of NTFS objects and are not exactly the same thing. Why your junctions are not recognized in Vista is a mystery, but the junction functionality still exists in Vista and it not purposefully broken.

    You can use mklink (http://technet.microsoft.com/en-us/library/cc753194.aspx) to create soft links (the default), hard links (/h), or junctions (/j). The biggest improvement of sym links over junctions is sym links can reference files OR directories (junctions are directory only) and the can reference network shares as well (junctions cannot).

    But the bottom line is they are different. Can't tell you why your existing junctions are not recognized by Vista though. You can still create them as described above.

    There freeware utility referenced in another post (LinkMagic) is your best bet to getting your junctions working again. Or recreate them with mklink.

    0 讨论(0)
提交回复
热议问题