Using Everything for Mapped Network drives (shared folders)

General discussion related to "Everything".
Post Reply
TypeOnKeyboard
Posts: 2
Joined: Wed May 01, 2013 11:26 am

Using Everything for Mapped Network drives (shared folders)

Post by TypeOnKeyboard »

OK, so this post is mostly to help others who might be looking to setup Everything for users on a network to be able to search an indexed folder or folders, especially for mapped network drives on the user's side.

From what I can tell, Everything may have some support for this later on, but for now the recommendation is to use the "-server-share-links" ETP link type (\\server\C\sharedfolder)

The issue with that is of course having to share the entire C drive (which can be controlled via NTFS permissions to limit access but still leaves the issue of having to remove/unshare the administrative share "C$" so that the share can be created again using only "C").

There are two ways I will suggest to overcome these small obstacles:

1. Use a symbolic link or junction by using any of the following programs (choose one that is suitable for your OS), junction.exe / linkd.exe / mklink.exe

The way to set this up would be to have a folder on the root of let's say the D: drive. Let's say this is "D:\CustomerReports\" and you have an instance of Everything indexing this folder and will allow users to connect to it via ETP.

Next, we can share the CustomerReports folder and label it "D". Now, use the junction / symbolic link program to map/create a new folder called "CustomerReports" within the existing "D:\CustomerReports" folder.

As an example, using linkd.exe

The syntax for linkd.exe is "linkd.exe <SOURCE> <DESTINATION>"
We would use this command, then:
linkd.exe "D:\CustomerReports\CustomerReports\" "D:\CustomerReports"

Now, you should have this new folder, mentioned above the command, created.

As a whole, what this has done is shared the original folder as a drive letter (D), then once the user searches Everything within the original folder, on their own machine, they will access the share itself (called "D") and then within there they will "hit" the dummy folder that will then link them back to the correct, original folder.

This method is a bit messy as you create a share with the name of a drive letter but at least don't need to share the whole drive. You are not limited to only sharing one folder via this method as you could create a folder called "EverythingSharedFolders", share this folder as the drive letter "C" or "D" or whatever and within this folder make your actual shared folders and create links for each one. Note, that there is no sharing of the "real" folders, you just share the parent folder and then would need to control access via NTFS in this scenario of having a central folder.


2. Use the "substitute" command, or "subst.exe"
This method is a lot simpler and much easier to manage as all you are doing is mapping whatever directory you want to index and share with Everything to a drive letter on the server itself.
A. Use subst.exe to map a shared folder to a drive letter that is 1. available/open on the server and 2. will be the same letter used for the users to map to (This is the key to this method working, the drive letters must be the same).
B. Have Everything.exe index the new substituted drive letter on the server (don't index the original folder, just the new drive letter.) This could even be done via the NTFS area, as the drive letter will be treated as a local disk.
C. Map the client to the same drive letter and connect to the Everything ETP server from the client using the "drive-links" ETP link type (W:\)

That's it, the user will now be able to access the folder because Everything is showing whatever it sees within the (substituted) local drive of the server, which cannot be accessed normally of course, but the client is able to due to the mapped network drive connection which points to the original folder, so the client really doesn't have anything to do with the substituted drive letter; it is there simply to let Everything index it so it can be accessed easily.

Well, hope that helps someone! Again, I don't know if this has already been suggested in the past, but I didn't find anything so hope someone finds this via some search terms.

;)
Last edited by TypeOnKeyboard on Wed May 01, 2013 12:20 pm, edited 1 time in total.
TypeOnKeyboard
Posts: 2
Joined: Wed May 01, 2013 11:26 am

Re: Using Everything for Mapped Network drives (shared folde

Post by TypeOnKeyboard »

BTW, forgot to say: Excellent, excellent, program, Void! :P
void
Developer
Posts: 15095
Joined: Fri Oct 16, 2009 11:31 pm

Re: Using Everything for Mapped Network drives (shared folde

Post by void »

Thanks for the mapped network write up.

Thanks for your support!
nothing
Posts: 20
Joined: Wed May 15, 2013 12:45 am

Re: Using Everything for Mapped Network drives (shared folde

Post by nothing »

sorry, but I do not understand what's so difficult in setting this up?

1. map networked drive to any available drive, i.e. to X:
2. in Everything select Folders and add that drive to index and update interval
3. done

alternatively you can

1. use fullpath to the share, i.e. \\server\supershare in the Folders options
2. start Everything with -server-sharelinks option
void
Developer
Posts: 15095
Joined: Fri Oct 16, 2009 11:31 pm

Re: Using Everything for Mapped Network drives (shared folde

Post by void »

These are both good ways to search a network share.
However, if a user wishes to use ETP instead of folder indexing, they can follow TypeOnKeyboard's excellent guide on using reparse points or subst'ed drives.
vurtikas
Posts: 36
Joined: Fri Jan 08, 2010 11:28 am

Re: Using Everything for Mapped Network drives (shared folde

Post by vurtikas »

I searched all over for my scenario to work (quite common scenario too i guess), but couldnt get it done.

Enviroment:
user has \\server\sharename (D:\Something\ on host machine) mapped to S:\

Goal:
make Everything work for that S:\ so when user searches in Everything, results are shown in the form of: S:\blabla\bla.txt (on host machine it is actually D:\Something\blabla\bla.txt) - clickable results that would open in My Computer.

I tried the subst method mentioned here since it seemed the cleanest.
On host machine (win2008) made S:\ with subst (with admin rights), so it would be same structure as on client. Ran Everything (with admin rights), under Volume selected S:, checked everything, but when i click Apply, i get error:
Open USN Journal - Unable to open volume \\.\S:

What am i doing wrong, and how can i get it working, whatever method, as long as it works like it is pointed out above.

Oh, and btw, fabulous program, Everything.

Thanks!
vitamin
Posts: 1
Joined: Mon Feb 24, 2014 11:20 pm

Re: Using Everything for Mapped Network drives (shared folde

Post by vitamin »

nothing wrote:sorry, but I do not understand what's so difficult in setting this up?

1. map networked drive to any available drive, i.e. to X:
2. in Everything select Folders and add that drive to index and update interval
3. done

alternatively you can

1. use fullpath to the share, i.e. \\server\supershare in the Folders options
2. start Everything with -server-sharelinks option
I have a drive networked to my computer running Everything.

When I open Everything, I don't see anything that says "Folders" so that I can add the drive? Nor do I see that the drive I have networked shows up in the available volumes to search.

What am I missing??? Thanks.

Image
vurtikas
Posts: 36
Joined: Fri Jan 08, 2010 11:28 am

Re: Using Everything for Mapped Network drives (shared folde

Post by vurtikas »

Look under Eclude. You can set folders there.

I am still waiting for some kind soul to tell me how to fix my problem.
frnortner
Posts: 4
Joined: Sat Jun 07, 2014 10:53 pm

Re: Using Everything for Mapped Network drives (shared folde

Post by frnortner »

I must agree with the gentleman who cannot make this work. Something is counterintuitive here. I want to INCLUDE the contents of drive N.
I have a drive on the network mapped as "N".
Using Tools/Options/Exlude - Add, add file and filter are all greyed out.
Tools/Options/Volumes has no method to add a drive name
If I check "Exclude files and folders, then I can Add Folder, Add File, etc. But I want to INCLUDE this drive!
If I uncheck "Exclude files and folders" My entry
TYPE VALUE APPLY TO
Include \\Ts-x104c\Testfolder This folder, subfolders and files

Still does not result in searches for items known to be on teh drive "N:\Testfolder\" do not appear in Everything.

Can you explain what we are doing wrong?

Why is there note a method under "Volumes" to enter Volumes which are not "Local NTFS Volumes", but re NTFS volumes on the network, mapped to
drive letters?

Vitamin writes of selecting Folders and add that drive to index and update interval, but I will be dipped in lukewarm gook if I can find the selections of which he speaks.

Using version 1.2.1.371

Thanks,
-- Doc
void
Developer
Posts: 15095
Joined: Fri Oct 16, 2009 11:31 pm

Re: Using Everything for Mapped Network drives (shared folde

Post by void »

frnortner
Posts: 4
Joined: Sat Jun 07, 2014 10:53 pm

Re: Using Everything for Mapped Network drives (shared folde

Post by frnortner »

Thanks to VOID for the quick reply. Your information is great, but in Tools/Options/ the only folders are general,view,volumes,exclude,etp/ftp and http.
version 1.2.1.371, which I believe is the latest version. I threw up a couple of pix at

http://drdumont.webs.com/whiteboard

Take a look. Nowhere do I see an opportunity to add folders or drives. If I am missing something, please let me know.

Drive "J" is a share from another machine on the network, and I have full permissions. But it doesn't show up on Everything.

Thanks,
-- Doc
void
Developer
Posts: 15095
Joined: Fri Oct 16, 2009 11:31 pm

Re: Using Everything for Mapped Network drives (shared folde

Post by void »

Folder indexing is only available in the beta version 1.3+
frnortner
Posts: 4
Joined: Sat Jun 07, 2014 10:53 pm

Re: Using Everything for Mapped Network drives (shared folde

Post by frnortner »

Perhaps I have not made myself clear. I ask the question "Why can I not see mapped network drives?"

I have drive C, D, E, F, and G on my machine. Drives H, I and J are drives on another computer
on my network. They are mapped to my local machine as H, I and J. I have full access rights to
these drives.

Everything makes note of drives C,D,E,F, and G, but I can find no way to make Everything see the Mapped
drives.

Why can I not have them accessible to Everything, so I can search them in the same manner in which
I can search my local drives? If I am missing something here, please let me know.

-- Doc
void
Developer
Posts: 15095
Joined: Fri Oct 16, 2009 11:31 pm

Re: Using Everything for Mapped Network drives (shared folde

Post by void »

Everything will only index local NTFS volumes.

You will need to use folder indexing to index mapped network drives.
frnortner
Posts: 4
Joined: Sat Jun 07, 2014 10:53 pm

Re: Using Everything for Mapped Network drives (shared folde

Post by frnortner »

Thanks. Finally, a direct answer.
nothing
Posts: 20
Joined: Wed May 15, 2013 12:45 am

Re: Using Everything for Mapped Network drives (shared folde

Post by nothing »

Yes, it works only in 1.3+.

You need to map network drive first (e.g. map X: to \\server\share by basic windows tools) and then go to Indexes->Folders and add path to the X:
therube
Posts: 4580
Joined: Thu Sep 03, 2009 6:48 pm

Re: Using Everything for Mapped Network drives (shared folde

Post by therube »

You need to map network drive first
Not necessarily.
You can just use the UNC path directly (so \\server\share).
nothing
Posts: 20
Joined: Wed May 15, 2013 12:45 am

Re: Using Everything for Mapped Network drives (shared folde

Post by nothing »

therube wrote:
You need to map network drive first
Not necessarily.
You can just use the UNC path directly (so \\server\share).
well ye, you can do this way too.. but for me more comfortable to map a drive first..
br5dy
Posts: 1
Joined: Sun Jul 16, 2017 10:56 pm

Re: Using Everything for Mapped Network drives (shared folders)

Post by br5dy »

Sorry to open an old topic, but I thought I'd post my findings with the latest version as of July 16, 2017.

For some reason I cannot see any mapped drives nor can I browse the 'Network' to specify a file share.

Here's how I was able to get network folders to work:
  1. In Everything, add a "placeholder" folder (that we will replace manually later), such as C:\Windows, or C:\Intel - it doesn't matter what folder
  2. Click OK, X out of Everything
  3. Close out of Everything, even from the system tray (check Task Manager to be sure)
  4. Go to Start-->Run, type in %appdata% and press enter
  5. Once inside your Application Data, Roaming folder, open the Everything folder, then open Everything.ini in Notepad
  6. Press Ctrl+F to search for filelist_monitor_changes=, then go to the line right below that, starting with folders=
  7. Find the placeholder folder you created in step 1, and replace it with the network folder
  8. The trick here is for every backslash, add an extra backslash, so for \\server, it needs to be typed as \\\\server. For \\server\share1, it needs to be \\\\server\\share1
  9. Once you've replaced the placeholder folder with your network share, save the file
  10. You then want to launch Everything.exe using the -startup -server-sharelinks parameters
  11. To edit the default startup path and parameters, go to Start-->Run, type in regedit, press enter, then go to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run, find the Everything key, and then modify it's value; for example, my value is "C:\Program Files\Everything\Everything.exe" -startup -server-sharelinks; click OK
  12. You can then either log out and log back in, or go to Start-->Run and launch Everything with the same value as you put in the Everything key in regedit
You should see Everything scanning your network folder at this point (at the bottom of Everything). After a few minutes you can test it my searching for a file on your network folder.

Hope this helps someone out!
Brady
NotNull
Posts: 5167
Joined: Wed May 24, 2017 9:22 pm

Re: Using Everything for Mapped Network drives (shared folders)

Post by NotNull »

br5dy wrote: For some reason I cannot see any mapped drives nor can I browse the 'Network' to specify a file share.
Mapped drives are "personal" per user account. Most likely you are running Everything with a different account (like: Administrator). No exerience with this (yet), but installing the service and running Everything with *your* useraccount should probably fix this issue.
( Menu:Tools > Options > General: disable "Run as administrator" and enable "Everything Service" )
[*]Press Ctrl+F to search for filelist_monitor_changes=, then go to the line right below that, starting with folders=
There are two ways an INI file can be parsed: "First entry rules" or "last entry rules".
The Windows API's for INI files act like the first one (color= blue followed by color=red yields color=blue)
Everything acts like the second one (color=red). This means that I can add an entry at the end of the INI file.
When starting Everything, It will first read color=blue, then color=red and settle on color=red. color=red gets loaded in memory and on exit Everything will write out the settings in their predefined order.
I think that's a nice feature (use it quite a lot).

Long story short: No need to search for the current entry; just add it at the end of the INI file.
N.B. This all works because there is just one INI section, [Everything]. At first I wondered why there weren't more sections - like [General] or [Indexes] - , but it is actually quite clever this way.


There is an even easier option:
In the Folders Indexes dialog box choose Add ... and type the share name in the Folder: input box.
Like this:
2017-07-17 13_41_22-Browse For Folder.png
2017-07-17 13_41_22-Browse For Folder.png (8.17 KiB) Viewed 46448 times
[*]You then want to launch Everything.exe using the -startup -server-sharelinks parameters
No need for the -server-sharelinks option. That is for the case you have an Everything (ETP) server running, to which you connect from an Everything client.
p159
Posts: 2
Joined: Mon Apr 16, 2018 8:02 pm

Re: Using Everything for Mapped Network drives (shared folders)

Post by p159 »

Everything is a great app. My only issue is that the added network folder disappears after reboot so I need to re-add and rescan the share after every boot.

I am on Windows 10 and added the network share (a SMB/CIFS share on a Debian server) via UNC and via mapped to a drive letter. Both did not persist after reboot. I also tried using a symlink, but wasn't able to get that to work. Is anyone else having this issue or any suggestions as to how to troubleshoot?
NotNull
Posts: 5167
Joined: Wed May 24, 2017 9:22 pm

Re: Using Everything for Mapped Network drives (shared folders)

Post by NotNull »

My first guess is that you don't have write-access to your Everything.ini.

From the Menu:Tools > Options > General tab, enable Store settings and data in %APPDATA%\Everything to put Everything.ini in a writable place.
(otherwise your INI is in the same folder as your Everything.exe, which in most cases is in the c:\Program Files\Everything folder, where you don't have write access as a "normal" user.
p159
Posts: 2
Joined: Mon Apr 16, 2018 8:02 pm

Re: Using Everything for Mapped Network drives (shared folders)

Post by p159 »

NotNull wrote:My first guess is that you don't have write-access to your Everything.ini.

From the Menu:Tools > Options > General tab, enable Store settings and data in %APPDATA%\Everything to put Everything.ini in a writable place.
(otherwise your INI is in the same folder as your Everything.exe, which in most cases is in the c:\Program Files\Everything folder, where you don't have write access as a "normal" user.
Thanks @NotNull. You are the best. This worked perfectly!
NotNull
Posts: 5167
Joined: Wed May 24, 2017 9:22 pm

Re: Using Everything for Mapped Network drives (shared folders)

Post by NotNull »

p159 wrote: Thanks @NotNull. You are the best. This worked perfectly!
Glad that I could help :)
Thanks for your feedback!
abu
Posts: 5
Joined: Tue Aug 21, 2018 10:33 pm

Re: Using Everything for Mapped Network drives (shared folders)

Post by abu »

Hello, I'm using Everything on my laptop as well as on my Windows server, which has multiple drives attached. I need to have a single database which includes both my laptop, and server's shared drives (all NTFS), which will be immediately updated after operations I do with files. When I connect to ETP server, I only see files on the server, the files on laptop disappear from Everything - and vice versa, when I disconnect from EFU server, files on server disappear for me. How do I have both local drives and shared networked drives in Everything simultaneously?
NotNull
Posts: 5167
Joined: Wed May 24, 2017 9:22 pm

Re: Using Everything for Mapped Network drives (shared folders)

Post by NotNull »

abu wrote:Hello, I'm using Everything on my laptop as well as on my Windows server, which has multiple drives attached. I need to have a single database which includes both my laptop, and server's shared drives (all NTFS), which will be immediately updated after operations I do with files. When I connect to ETP server, I only see files on the server, the files on laptop disappear from Everything - and vice versa, when I disconnect from EFU server, files on server disappear for me. How do I have both local drives and shared networked drives in Everything simultaneously?
So you want one single database that has real-time information about your server as well as your laptop?
I'm afraid that's not possible.
abu
Posts: 5
Joined: Tue Aug 21, 2018 10:33 pm

Re: Using Everything for Mapped Network drives (shared folders)

Post by abu »

NotNull wrote: So you want one single database that has real-time information about your server as well as your laptop?
I'm afraid that's not possible.
Thank you for clarifying. Do I have any options beside running two instances side-by-side?
NotNull
Posts: 5167
Joined: Wed May 24, 2017 9:22 pm

Re: Using Everything for Mapped Network drives (shared folders)

Post by NotNull »

abu wrote:Do I have any options beside running two instances side-by-side?
Beside that one, the most straightforward would be:
1) Everything running on your server using a local database
2) Everything running on your laptop, NTFS indexing your local disks and folder indexing your server shares (that last one is not realtime)

There are a couple of more workarounds, all a bit unconventional. Will post them when I have time (or maybe someone else steps in before that).
abu
Posts: 5
Joined: Tue Aug 21, 2018 10:33 pm

Re: Using Everything for Mapped Network drives (shared folders)

Post by abu »

NotNull wrote:Beside that one, the most straightforward would be:
1) Everything running on your server using a local database
Could you please elaborate? I am only interested in real-time. At the moment, on client I use one Everything! instance for client local stuff, and another Everything! instance connected to server's ETP server. Server has external HDDs shared so navigating is no problem at all. Is there some better solution than this?
NotNull
Posts: 5167
Joined: Wed May 24, 2017 9:22 pm

Re: Using Everything for Mapped Network drives (shared folders)

Post by NotNull »

Before there gets any confusion: what I meant with real-time is that changes to the filesystem are real-time (with 2 second margin) added t the Everything index. That out of the way ...
abu wrote:Could you please elaborate? I am only interested in real-time. At the moment, on client I use one Everything! instance for client local stuff, and another Everything! instance connected to server's ETP server. Server has external HDDs shared so navigating is no problem at all. Is there some better solution than this?
NTFS indexing of locally attached (NTFS formatted) disks will give you real-time updates.
There is also the option of Folder indexing a folder/share. Updating this is done through a schedule (like: every 3 hours/ every Thursday / .. ). Not real-time ...
BUT ...
Folder indexing also has an option to monitor changes made to that folder from the machine where that Everything.exe is running.
There is no guarantee that it will pick up on all changes, In my personal experience, Everything nevere missed a beat (that I was aware of)

So, if you have 1 laptop and 1 server and make all changes to the server's filesystem from your laptop, you can use NTFS indexing for your local laptop disk(s) and use folder indexing (combined with monitor changes) for your server shares. All running from your laptop's Everything. You don't even need to run Everything on the server in that case.

For 'safety', add an extra update schedule to pick up on changes you might have missed.


If you also make changes to the server's filesystem on the server itself and you want real-time update, your best option is the one you are currently using: multiple instances.

That might change in a future version of Everything, as it is on the 'wish-list' to be able to connect to multiple ETP servers at once.
abu
Posts: 5
Joined: Tue Aug 21, 2018 10:33 pm

Re: Using Everything for Mapped Network drives (shared folders)

Post by abu »

Can I somehow schedule second Everything! instance to save ETP index and use it when connecting to ETP server fails, so that I could at least check which files are present in it when I'm on other networks?
NotNull
Posts: 5167
Joined: Wed May 24, 2017 9:22 pm

Re: Using Everything for Mapped Network drives (shared folders)

Post by NotNull »

abu wrote:Can I somehow schedule second Everything! instance to save ETP index and use it when connecting to ETP server fails, so that I could at least check which files are present in it when I'm on other networks?
The database of the ETP server will only be saved to disk when you stop the ETP server.
But you could do a (scheduled)
everything.exe -update
on the server to save the most recent state to disk.

When you copy this database to any other computer, you can view it's contents with the command:

Code: Select all

everything.exe -db "C:\path\to\Everything.db" -read-only -instance "VIEW"
Alternatively, you could export the current state to an .EFU file. That can be automated too using command-line parameters.
Post Reply