Is there such a thing as an 'overlay mount', 'unionfs' or something similar in Windows?

21
2014-04
  • Omnifarious

    Is it possible on Windows NT to have one directory sort of on top of another?

    For example I have a directory like this:

    C:\foo
    

    It has a file in it called zoo.txt

    I have another directory like this:

    C:\bar\baz
    

    It has the file museum.txt in it.

    I would like to be able to talk about C:\foo\museum.txt and automatically get C:\bar\baz\museum.txt.

    Additionally, if a file named C:\bar\baz\zoo.txt is ever created, I would like that file when referencing C:\foo\zoo.txt

    Lastly, if I create a file named C:\foo\qux.txt I would like that file to actually appear in C:\bar\baz\qux.txt and if I ever cancel the overlay mount or whatever mechanism I'm using to make this happen, it will disappear from C:\foo\qux.txt

    Are these things possible?

    Basically, I have a vendor supplied directory that needs to have some source code overlaid on top of it and compiled. But I would like the actual vendor supplied directory to remain in the state it was when it was shipped from the vendor.

    Right now a backup is kept of this directory, and it is restored from backup before the source code is built, then the current version of the source code is copied onto it. This is very inefficient and error prone.

  • Answers
  • Synetech

    You are asking about symbolic-links/hard-links/junction-points.

    What you can do is to create one of the aforementioned links/points called baz in C:\bar, and have it point to C:\foo as the target. Now you can access and treat C:\bar\baz like an ordinary directory and whatever (for the most part) you do to it will actually occur in C:\foo.


  • Related Question

    search - Indexing across a mount point in windows
  • Matthew Scouten

    I have a new windows 7 computer. The first thing I did was in stall a 2nd hard drive and mount it at C:/Users/me this seems to work just fine, except one issue.

    Search does not find and file there, and the indexing service will not index it.

    I think the latter is the cause of the former. Is there a to tell the indexer to look past the mount point?


  • Related Answers
  • Matthew Scouten

    After much searching, I found this: http://support.microsoft.com/kb/260207

    It explains that drives mounted to folders are not indexed BY DESIGN.

    It does not explain what kind of brain dead design this is, or what the reasons are.

  • Snark

    They explain a bit more about this "issue" here:

    Monitoring the USN change journal is new to WS 3.0. The benefit is that we can use the journal change log to determine file changes without rescanning the files on the drive, even if the search service is not running.

    In the thread, they give a link to a Windows Search add-in which may work with Windows 7, but only for the 32-bit versioon so I cannot confirm it.

    • Supported Operating Systems: Windows Server 2003; Windows Server 2003 Service Pack 1; Windows Vista; Windows XP Service Pack 2

      Note x64 bit installations are not supported

      • Windows Desktop Search 03.00.0000.XXXX or later versions
      • Windows Search 04.00.6001.XXXXX

    I'm not sure which version of Windows Search is included in Windows 7 though. The Indexer Gadget returns "Windows Search version 6.1.7600.16385" but that's the version of Windows 7. Maybe Windows Search doesn't have a separate version number anymore?

  • outsideblasts

    Have you check in "Indexing options", "Modify"? From there you can select drives to be indexed.

  • davor

    I had a similar problem and was recommended to install Windows Desktop Search Addin for Networks, - works well for me now. http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=f7e981d9-5a3b-4872-a07e-220761e27283