main

Windows Vista to support Symbolic Links

Michael Stanclift   on 03 November 2005 - 19:38 · 72 comments & 21793 views

Advertisement (Why?)
A feature Unix/Linux users have enjoyed for quite some time will make its way into Windows Vista when it ships next year. Ward Ralston, the developer who wrote the code explains on the TechNet blog about this new feature and how it differs from a shortcut.

"In Vista/Longhorn server, the file system (NTFS) will start supporting a new filesystem object (examples of existing filesystem objects are files, folders etc.). This new object is a symbolic link. Think of a symbolic link as a pointer to another file system object (it can be a file, folder, shortcut or another symbolic link). So then you ask how is that different from a short-cut (the .lnk file)? Well, a shortcut will only work when used from within the Windows shell, it is a construct of the shell, and other apps don’t understand short-cuts. To other apps, short-cuts look just like a file. With symbolic links, this concept is taken and is implemented within the file system. Apps when they open a symbolic link will now open the target by default (i.e. what the link points to), unless they explicitly ask for the symbolic link itself to be opened. Note symbolic links are an NTFS feature."

View: General information on Symbolic Links (Unix based)
News source: Windows Server Division Weblog


When contacted for input on the issue, a Mozilla spokesperson said that with 35 languages across 3 supported platforms (Windows, Linux, and Mac) the list of bugs suspected and reported via the Bugzilla reporting and tracking tool can sometimes be massive. The spokesperson went on to state that while the Bugzilla lists can often be overwhelming, a significant number of submitted reports often times just don’t contain enough information to be of assistance when it comes to tracking down a particular problem. As I witnessed myself, there are pages of comments on this bug alone, and many of them contain no technical information to assist the developers, but merely contain frustrated comments such as “this was broke back in version x.xx and it’s still broken, when will it be fixed.” While it is understandable that posts like that are submitted by users who are at the time, frustrated with the situation, it is also true that they provide no value whatsoever to the bug tracking process. The Mozilla spokesperson also stated that of those issues reported, first priority has and will always be security issues, and then issues that are more widespread and have the potential to disrupt the usefulness of the product to the most users, which is understandable.

In the end, this bug has existed for quite some time, and Mozilla is aware of it. However it only rears its ugly head twice a year, at the change to and from Daylight Savings Time, and coupled with the fact that not everyone observes Daylight Savings Time, it just doesn’t get enough attention from the end user to warrant investing a lot of time and resources in to fixing, at least not in the current release of the software. The Mozilla spokesperson did say that v1.5 is due out in this quarter, which is rapidly drawing to a close, and that Release Candidate 1 would be released very soon. With so many changes in this new version including some significant security enhancements such as anti-phising protection, the spokesperson said that it is possible that this issue may become a non-issue once v1.5 is released. Will it be fixed in v1.5? We’ll keep you posted.

View: Bug 136049 @ Bugzilla

Post a comment · Send to friend Comments · There are 72 additional comments
#1 Chanser on 03 Nov 2005 - 19:42
Interesting .
(1 reply) #2 BigCheese on 03 Nov 2005 - 19:46
Will this only be in longhorn server or will it also be in the Vista client?
Because I can think of a few places where this would be useful.
#2.1 Rudy on 04 Nov 2005 - 01:40
better be in the client, i've wanted symbolic links ever since Windows 2000
(2 replies) #3 dotRoot on 03 Nov 2005 - 19:49
NTFS has tried to support this in the past, but has never quite got it right. Hopefully it will work again on MS' next attempt.
#3.1 Express on 03 Nov 2005 - 22:59
Its not that Microsoft got it wrong. Its just that the support was partial.
Only Directory level Symbolic links are supported through hardlinks.
File level symbolic links are new in Vista.

You can simulate file level symbolic links through shortcuts in pre-Vista although its not as transparent to apps as you want it to be.
#3.2 hosebeast on 05 Nov 2005 - 05:41
No, NTFS hardlinks are supported at the file level in NT 4.0 and later. That's what the Single Instance Storage Groveler (part of RIS in Windows 2000 Server and Windows Server 2003) uses.

Part of the confusion here is that NTFS also has "reparse points" or "junction points" which are not exactly the same thing. Reparse/junction points are directory-level only.

Check out the utils at http://schinagl.priv.at/nt/ntutils.html

(2 replies) #4 hardgiant on 03 Nov 2005 - 19:49
NT4, 2K and XP have junctions. Guess it's just another feature Microsoft will officially support.

http://ftp.novell.com/pub/forge/ntfslink/n...er/ntfslink.exe

1. Install and reboot.

2. Use the Right click drag to make a hardlink or junction.






Last edited by 2016 on 05 Nov 2005 - 09:45
#4.1 dotRoot on 03 Nov 2005 - 19:51
They aren't the same. They are similar, but junctions don't work in certain cases. One of the instances off the top of my head is that junctions won't work where the target is on a seperate harddrive. And junctions are only for folders/directories not just files I believe.
#4.2 Fantasy on 03 Nov 2005 - 20:18
That's it.
(3 replies) #5 Dark_Angel on 03 Nov 2005 - 19:51
An even better question is...

"Will Windows XP support symbolic links?"

It is an NTFS feature after all...and we've seen some things made with Vista in mind, being available for XP...
#5.1 Jugalator on 03 Nov 2005 - 20:00
NTFS 5.1 in use on XP doesn't support symbolic links, and I doubt Microsoft will somehow patch that filesystem. XP and 2000 support junctions though, but that's just for directories, hence severly limiting the usefulness of them.

I'm also suprised there hasn't been a post from a *nix user saying welcome to 1980 yet.
#5.2 thefunkymunky on 03 Nov 2005 - 20:14
Welcome to 1980.
#5.3 sphbecker on 03 Nov 2005 - 23:27
My guess is that you will see SMB2.0 back ported to XP, so that an XP client could use a Longhorn server sharing these kinds of links.

I have to agree with the first replay that I see no way MS would back port NTFS 6.0 to XP. Why would they?
#6 jimbo11883 on 03 Nov 2005 - 20:00
Finally, symbolic links! I hate having to process shortcuts.
(2 replies) #7 loc[a]lhost on 03 Nov 2005 - 20:18
How does it differ from hard links, apart from the fact those symbolic links can be used across different partitions?
If you don't know what hard links are, read here:
http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/fsutil_hardlink.mspx
#7.1 threedaysdwn on 03 Nov 2005 - 20:20
Same difference that exists between symlinks and hardlinks in Unix, I believe.
#7.2 scaife on 03 Nov 2005 - 21:03
To expand on what threedaysdwn said, a main practical difference between symbolic and hard links (although not exactly technical) is that if you have a hard link for a file, and delete the original, the hard link still works; the actual file data is still there, being linked to as if the hard link is the original file.

If you have a symbolic link for a file, and delete the original, the symbolic link will no longer work. That's because symlinks just "point" to the file they're linking to.

That also explains why hard links can't be used across partitions/harddrives, while symlinks can.

Last edited by 37017 on 03 Nov 2005 - 21:09
(7 replies) #8 protoss_chaos on 03 Nov 2005 - 20:22
um... I read about this months ago. Why did it just hit the front page now?
#8.1 Computer Guru on 03 Nov 2005 - 20:27
there is always sum n00b who read about it months ago, and thus thinks tha
1) he is better than every1 else
2) Everyone else does not deserve to read about it now.
#8.2 protoss_chaos on 03 Nov 2005 - 20:45
Don't remember saying no one else should read it, or that I was better than anyone...

Way to be an << removed >>.

As I asked earlier, why did this hit the front page now and not several months ago?
Now, << removed >> Guru, nobody asked for your << removed >> opinion

Last edited by 36818 on 03 Nov 2005 - 20:57
#8.3 bryonhowley on 03 Nov 2005 - 20:52
Do not believe the name calling was need. And doesn't Neowin have a rule about bypassing the word filter?
#8.4 no-sweat on 03 Nov 2005 - 21:02
if you read it months ago why didnt you submit it to neowin? thats why it was posted months ago.. you didnt submit it.
#8.5 matt74441 on 03 Nov 2005 - 21:56
We certainly have a rule for bypassing the swear filter.
#8.6 protoss_chaos on 04 Nov 2005 - 03:59
um, there is no swearing filter here, you guys should look into that!
#8.7 no-sweat on 04 Nov 2005 - 05:57
ummmmmmmmmmm....
#9 hotdog963al on 03 Nov 2005 - 20:29
Good.
It should have always been like that.
#10 roadwarrior on 03 Nov 2005 - 20:37
Nice. I use symbolic links quite often in OS X (keeping user home folders on a second drive, sharing iPhoto and iTunes libraries between users, etc.). They can be very useful, glad to see that they will be supported in Windows.
#11 3nd3r on 03 Nov 2005 - 20:40
its about freggin time!
#12 _tux_ on 03 Nov 2005 - 20:42
yay
#13 todd on 03 Nov 2005 - 20:43
Awesome. I've been waiting for this.
#14 canofunk on 03 Nov 2005 - 20:44
linkd.exe (not the trojan) W2K/W2K3 resource kit
(7 replies) #15 Neo-Luxembourg on 03 Nov 2005 - 21:08
hey hey ... if Windows still "evolving" in this way ... Microsoft will make a Linux clone with DirectX support ...

1) Going away from the monolithic concept of the kernel
2) Don't let the main user be PowerUser / Root /Admin ...
3) The new shell that want to be the same as Bash (but it's far to be as intuitive as Bash!)
4) The story og symbolic links


... where will it stops!

PS: for me this isn't a revolution nor a evolution .. it's simply coping Linux/Unix/BSD best feature and put them in Windows ... oh .. don't think it's bad ... but plz stop to TRY TO MAKE A COPY and make a Linux distro of you own .. this would rockz ! (don't forget DX support )
#15.1 PCyr on 03 Nov 2005 - 21:27
If what you said is true and all this is unique to Linux, then why can I replace every instance of 'Linux' with 'OS X'?

Wow, so they add some features that Linux already has, big whoop. They're still adding plenty of features Linux doesn't have.
#15.2 EduardValencia on 03 Nov 2005 - 22:07
it's vista not revolution,instead is vista to see what's the future of home and server computing u boobie,they never meant a revolutionary OS

MS marketing Department isn't as **** as you
#15.3 M2Ys4U on 04 Nov 2005 - 00:06
QUOTE
If what you said is true and all this is unique to Linux, then why can I replace every instance of 'Linux' with 'OS X'?


Because Linux is a UNIX clone and OSX is based on BSD, a UNIX deriviative.

IIRC.
#15.4 Cephas on 04 Nov 2005 - 00:28
You seem to be a bit confused. Windows has a microkernel, while Linux does not.
#15.5 PCyr on 04 Nov 2005 - 01:24
QUOTE
Because Linux is a UNIX clone and OSX is based on BSD, a UNIX deriviative.

IIRC.

Right, so every UNIX deriviative has the right to use this feature, regardless of how different they are from UNIX or whether or not they helped in any way to create the feature, but if MS uses it, oh no!

Holy double-standard batman!
#15.6 MrA on 04 Nov 2005 - 02:35
QUOTE
You seem to be a bit confused. Windows has a microkernel, while Linux does not.

No, I think it's you that's a bit confused. Windows has a monolithic kernel. So does Linux and OSX and Solaris and FreeBSD and AIX and... need I continue. The only resonably successful OS with a microkernel is QNX and other embedded systems. Virtually every OS has borrowed concepts from the microkernel (like loadable modules, aka drivers), but very few are actually microkernels. This is probably because of the overhead involved in IO and other typically kernel level operations (a microkernel's modules run at a lower privilage than the kernel itself).
#15.7 Neo-Luxembourg on 04 Nov 2005 - 07:44
QUOTE
but if MS uses it, oh no!


I didn't say it's bad that microsoft copy Unix ... oh no .. i would be nice to have a System that runs like Linux ... simple (i meen doing everything with a simple command -> shell), fast, an stable (your UI crashed, crtl-alt-backspace!) .... but with the simplionies that Windows users have like Installing a software, playing games ! ... so, plz Microsoft ,pimp my Windows with Unix stuff !!!!!!!!!
(5 replies) #16 flyakite on 03 Nov 2005 - 21:12
Now if they add support relative links instead of absolute I will be extremely happy.
#16.1 SlimShady on 03 Nov 2005 - 21:28
I've always wanted that. Especially when using a memory stick.
#16.2 rIaHc3 on 03 Nov 2005 - 21:58
(n00b) What are relative links?
#16.3 scaife on 04 Nov 2005 - 00:20
I can't be 100% sure, but an educated guess would say an absolute link would point to, for example, G:/file.ext, whereas a relative link could point to ./file1.ext (if it is in the same directory), so if you moved the folder they were both in (e.g. if the memory stick's drive letter changed from G to H), the link would still work.
#16.4 MrA on 04 Nov 2005 - 02:36
Isn't that what a symlink does?
#16.5 scaife on 04 Nov 2005 - 02:49
I don't know if there's a standard for this kind of stuff, but I know that in Linux at least, it depends on how you create it. That is, ln -s ../file.ext will create a 'relative' link, whereas ln -s /path/to/file.ext will create an 'absolute' link. Assuming, of course, that my educated guess was correct :b

But I suppose we'll just have to wait and see.
(1 reply) #17 Packet1009 on 03 Nov 2005 - 21:13
http://www.sysinternals.com/Utilities/Junction.html allows for the file linking functionality across drives as well today.
be nice to see it included in the os though

EDIT: nm. "file"

Last edited by 47648 on 03 Nov 2005 - 21:44
#17.1 markjensen on 03 Nov 2005 - 21:23
If you read comment #4.1, it explains that junctions only work on directories. Not individual files.
(1 reply) #18 corey1138 on 03 Nov 2005 - 21:44
Isn’t this the same as mapping a drive? You can currently map a drive letter to any part of any folder of folders on the network, or serial ports, parallel.
#18.1 benjeeeboy on 03 Nov 2005 - 22:12
No. Lets say you have your music folder in C:ABCDMusic and a file called 1.mp3 in your music folder. You could create a symbolic link to your music folder at C:Music, and then access 1.mp3 via C:Music1.mp3
#19 Echilon on 03 Nov 2005 - 21:54
That has to be the most useful feature of Vista so far!
(2 replies) #20 Morphie on 03 Nov 2005 - 22:13
lolol. This has been one of the most annoying things about windows for ever. Glad to see they are adding it finally. Go go OSX.
#20.1 rm20010 on 03 Nov 2005 - 23:42


Call me stupid, but isn't OS X's aliases the same as symbolic links?
#20.2 mr_demilord on 04 Nov 2005 - 08:59
Yes OS X has full support of the symbolic links, Windows only supports symlinks on folders

Last edited by 108898 on 04 Nov 2005 - 09:09
(3 replies) #21 mayamaniac on 03 Nov 2005 - 22:54
Didn't read the full article, but will this Symbolic link replace shortcuts, or .lnk still exists?

Also, I remember reading rumors that MS will drop the drive letters, is this still planned? Anyone know?
#21.1 todd on 03 Nov 2005 - 23:41
You probably won't see drive letters dropped in Vista, but I'd expect it sometime in the future.
#21.2 rm20010 on 03 Nov 2005 - 23:44
Microsoft probably won't drop drive letters but instead make them hidden as much as possible from everyday average Joe users. Look at Vista's (new) address bar.
#21.3 markjensen on 04 Nov 2005 - 01:39
Or, for a possible glimpse into Microsoft's direction, look into Microsoft's Services for UNIX (it is a free download from the Microsoft website).

It unifies the filesystem by placing your 'drive letters' under the /fs/ directory. So, you have /fs/C/filename.ext as the path for a file that exists in the root of your "C:" drive.
(2 replies) #22 Shadrack on 04 Nov 2005 - 00:01
Excellent! It is about freaken time!!

Symlinks are so freaken useful it is ridiculous.

For example...say your primary hard drive is full, and you have a large program in..say "c:program filesmicrosoft office"

You could move the entire folder to another drive (d:program filesmicrosoft office) and then make a symlink to it in c:program files so to every dependency of files in that folder can still find what they are looking for.

Excellent.
#22.1 Roves on 04 Nov 2005 - 00:17
thanks for the example,starting to see how it works/how useful it is
#22.2 rm20010 on 04 Nov 2005 - 02:28
This is also the death of such tools (paid and/or free) that go through your hard disks and searches for broken shortcuts.
(2 replies) #23 Kushan on 04 Nov 2005 - 02:27
Stop me if I'm sounding retarded here.

But with this feature, could I presumably install a really big game (lets say UT2007), Then move like half of the textures to a seperate hard drive (or several), place one of these fancy shortcuts in their original location that points to the new one and get a boost with loading times?

I know it's similar to a RAID set up, but would it still work almost the same?
#23.1 aristotle-dude on 04 Nov 2005 - 05:53
This is exactly what you could do. To the game it would look like the textures were in a subdirectory of the game install instead of a separate drive. Of course you could not link multiple directories to the same symlink but if the textures directory had subdirectories underneath, they could be moved to separate drives.
#23.2 SlimShady on 04 Nov 2005 - 12:42
Makes me wonder...
If you would have (hypothetically) Crogram FilesUT2007Textures
and you move that folder to another drive and make a link to E:UT2007Textures.
Would the folder E:UT2007TexturesFolder1 work if the game/application looks for Crogram FilesUT2007TexturesFolder1 ?
(1 reply) #24 darkmark327 on 04 Nov 2005 - 03:34
NTFSLink lets you do this right now, fixing the issues with hard links / junction points.
#25 aristotle-dude on 04 Nov 2005 - 04:15
Some of you guys who have never used a *nix OS do not realize how useful they are. Symbolic links are extremely useful for quick deployment of new versions of websites and network resources and applications on *nix OSes.

For example, you could have a site like say /home/webserver/wwwroot1.2/ containing all the content and code files of the 1.2 version of your e-commerce site. You could configure the server to have as the root seen as /home/webserver/www/ by the server configuration and point a symbolic link called www under /home/webserver to the wwwroot1.2 directory.

Now say that your QA releases a version 1.3 of the website and you want to have a quick switch over with minimum downtime. All you would have to do do is is install the 1.3 version in a new directory called wwwroot1.3 and then point the symbolic link www over to this new directory to launch the new version of the site.

Cool eh?
#26 tiwaris on 04 Nov 2005 - 04:44
I do not know the full details of their symlink implementation, but instead of making it a part of a filesystem, they should implement it more fundamentally (all kinds of objects should be linkable be it a file/folder network drive, some hardware device etc).
(1 reply) #27 cylonite on 04 Nov 2005 - 06:14
nice. atleast they are not pig-headed in recognising some of the advantages of linux :p
#27.1 scaife on 04 Nov 2005 - 07:01
Symbolic links have next to nothing to do with Linux. Linux has them, yes, but so does UNIX, *BSD, OS X, and no doubt many other operating systems I haven't familiarised myself with yet.

But we all know (cough) that you meant at least they're not "pig-headed" in the recognition and adoption of useful ideas which didn't originate in Redmond, no?

Edit: changed a word.

Last edited by 37017 on 04 Nov 2005 - 08:46
#28 Trix on 04 Nov 2005 - 12:44
yay for this i've been wanting it for ages.. ever since i used linux years ago
#29 Angel Blue01 on 05 Nov 2005 - 14:13
This is something I've wanted since Windows 95.
#30 cr0bar on 07 Nov 2005 - 13:24
Google a program called Winbolic, does the same thing with no restarts. used it since 2003 ps. it's free

Commenting has either been disabled on this article or you are not logged in. Click here to login or register, its free!

Note: Anonymous commenting is disabled in order to keep the quality of responses to a high standard.

Advertisement (Why?)