Jump to content

A How-To: Drive Sharing in Windows 10

 From time to time you may find the desire to copy a large number of files directly off one Windows machine to another or the desire to have a very basic central network location to store files for users without having to buy a NAS or learn Linux (even though it's not as hard as you might think ;)). This guide will cover how to setup Drive Sharing on Windows 10 along with a couple different ways in which you can configure it.

 

NOTE: If you want to include fault tolerance to help protect the data in the event of drive failure start by referencing 4. Redundancy/Protection Against Drive Failure (Optional) prior to starting 1. Configuring Driver Sharing

 

Index

Spoiler

1. Configuring Driver Sharing

2. Connecting to the Share

    2.1 - Prerequisites

    2.2 - Connecting Using Hostname (Easy but Unreliable)

    2.3 - Connecting Using IP Address (More Difficult but Reliable)

        2.3.1 - Reserve an IP Address in the Router

        2.3.2 - Manually Assigning a Static IP Address

3. Mapping a Network Drive (Optional)

4. Redundancy/Protection Against Drive Failure (Optional)

5. Conclusion

 

1. Configuring Driver Sharing

Spoiler

Drive sharing is a feature that has been available on Microsoft Operating Systems for quite a long time now. It's effectively a simple SMB share where clients on the network can upload and download files to/from the disk hosted on the machine. Before we get started it is highly recommended to use a system that requires a password for login or to enable the requirement of a password. This will play a roll in protecting the network share. To get started go to This PC and select the disk you plan to share. Now Right-Click -> Properties.

 

this-pc-drive-menu(edited).png.11c5a161d05511395522372492c62d40.png

 

From the menu that pops-up navigate to the Sharing tab.

 

share-tab(edited).png.ac295b572bb434b33bd32e52a079558f.png

 

Click on "Advanced Sharing...". Now from the following menu:

  1. ☑️ Share this folder
  2. Choose your Share name.
    1. Must be one word. Hyphens & underscores can be used.
  3. If you desire you can limit the number of users who can connect at one time. (Optional)
  4. Add a comment to make the share more recognizable. (Optional)

Now click on Permissions, we need to make some changes. From the following menu Select Everyone and then press Remove. Now click Add. We want to set the users who have permission to access the share.

 

permissions-page(edited).png.8c182339db451e2a425288a30fa19ec1.png permissions-page-add(edited).png.7b3b0e03afe04f97c51218720bce5875.png

 

From the following pop-up menu under Enter the object names to select (examples) type the account username for each user you plan to have access to the share (one per line) then press Check Names. This verifies the user account exists and fills in the computer's hostname that the user originates from. When you're done press OK:

 

users-or-groups-page(edited).png.02290a100dab443b861cda7c16b7471c.png

 

NOTE: User accounts can only be added according to accounts that exist on the local machine. If multiple users are required it's advised to create an account on the computer for each user.

 

After pressing OK you'll be brought back to the previous menu and the account(s) you added will be filled in the Groups or user names: box. Access to the share can be set on a per user basis with the following parameters.

  • If you want a user to have Full Control permissions [Allow or Deny]
  • If you want a user to have Change permissions [Allow or Deny]
  • If you want a user to have Read permissions [Allow or Deny]

When you're done press Apply then OK:

 

setting-permissions-for-user(edited).png.b592bb4a620bd06d4ba17e9827a27bdc.png

 

This will bring you back to the share creation menu where you can then finish it by pressing Apply then OK:

 

advanced-sharing(edited).png.3df8c0d22aba12b996e7abe43f36ae7e.png

 

The share should now be online. You'll be able to verify this when it brings you back to the Sharing tab and you see under Network File and Folder Sharing that the drive is now shared and has a Network Path:.

 

sharing-tab-configured(edited).png.0dc4e07cd83d3dd29b053923245e8a10.png

 

You will also see a small icon next to the disk on the This PC window:

 

sharing-icon(edited).png.8927d7609750343c44e86ec546e68581.png

 

This is another indicator that lets you know the drive is shared. Next-up, how to connect to it.

 

2. Connecting to the Share

Spoiler

There's two different methods to connect to the share. One is easier than the other and requires less setup but is notoriously unreliable and has plagued the Windows Operating System going all the way back to Windows Vista. The other requires more to setup but is considerably more reliable. You'll have to pick your poison.

 

2.1 - Prerequisites

Spoiler

This step may or may not be necessary depending on your setup but in some cases before Windows clients can communicate with one another on a Private network a function known as Network Discovery must be enabled on both (or all in the case of more than two) clients.

 

Enabling Network Discovery is a pretty painless process if it's not. Go to This PC and click on Network in the left column menu (near the bottom). When this page comes up it should start loading. A small pop-up across the top will appear saying:

Quote

File Sharing is turned off. Some network computers and devices might not be visible. Click to Change...

When you click on this it will give you two menu options. Clicking on Turn on network discovery and file sharing will enable you to see other clients on the network.

 

enable-network-discovery(edited).png.a4758cf09c5d2e4968d82634bbe0249f.png

 

NOTE: Don't forget to repeat this for all other clients. This includes the client hosting the share.

 

2.2 - Connecting Using Hostname (Easy but Unreliable)

Spoiler

Provided Network Discovery and Hostname Resolution are working as they're suppose to, from a different computer on the network under the Computer section of Network you should see the name of the computer hosting our share drive. If you recall it was DESKTOP-2JNQFFK.

 

network-computer-hostname(edited).png.94587be8ff9b9be8cbf0d24e050ed773.png

 

When you click on this you'll receive the following pop-up:

 

network-computer-login-hostname(edited).png.04e967f621a017f550cc577616f17881.png

 

Enter the username and password of one of the accounts on the machine hosting the share. You'll be let in and you should then see the Share Folder we created:

 

hostname-logged-in(edited).png.3752a9ece0ebaab8c6554325e79e25e4.png

 

Once you enter the folder you should then be able to read, write, and/or execute files all in co-ordinance with the permissions you set for the user account you logged in as.

 

2.3 - Connecting Using IP Address (More Difficult but Reliable)

Spoiler

This method requires a fair degree more setup but has a higher degree of dependability for a long-term deployment. To begin it's very important that the IP address of the computer doesn't change over time and there's two ways in which we can make sure that doesn't. Which route you take is really up to preference.

 

2.3.1 - Reserve an IP Address in the Router

Spoiler

In your Router there is typically an option menu to reserve IP addresses based on the requesting MAC(Media Access Control) Address. This MAC address is effectively a name that is unique to the Network Card in your computer. It's an identifier that operates one layer below IP addresses and your Router can use this to reserve an IP of your choosing to it. This is typically the easier of the two options. I cannot provide in-depth instructions because everyone's router is different however how to configure it is fairly universal.

 

First-off you need to find the MAC address that belongs to the NIC of the computer hosting the share. You can do this by opening the Start Menu and typing CMD then hitting Enter. This will bring up the Command Prompt. In here run the command ipconfig /all. This will list all the network adapters in the system and all of their accompanying information including their MAC address. In this case the MAC address goes under the name Physical Address:

 

list-mac-address(edited).png.2d6f9ebda7f0c173fa2ba1bb2e2b9b5e.png

 

So our NIC's MAC address is 66-CD-FC-62-2F-75. Take this and enter it into the Reserve IP section of your Router where it states to put the MAC Address. Next choose an IP for the computer to receive. If you would like for it to keep the IP it already has as exampled above (192.168.0.66) then put your equivalent into the IP Address field on your Router. Now click OK or Apply. The IP address is now reserved. The Router will only hand it out to that network device whenever it connects.

 

2.3.2 - Manually Assigning a Static IP Address

Spoiler

When manually assigning a Static IP address it's important that you first remove the IP from the DHCP (Dynamic Host Configuration Protocol) pool in the Router. If you don't this may cause what is known as a Duplicate Address error on the network.

 

To reserve an IP or group of IPs start by finding your way into the DHCP settings of your Router. In here it will specify the Starting and Ending range of IP addresses to be handed-out. To reserve an IP for a client simply shrink this range of addresses. You can increase the minimum number or decrease the maximum number. Then the addresses that will no longer be handed out are available for the clients that need them.

 

To set a Static IP on Windows click on the Start Menu and type network connections, then press Enter. From here right-click the Ethernet adapter that you use for network access and click Properties:

 

network-connections(edited).png.293d32715efa45a10285b95992a698a3.png

 

From the menu that pops up double-click Internet Protocol Version 4 (TCP/IPv4) in the list. On the following menu click the bubble Use the following IP address. We need to fill in all the fields:

 

ipv4-properties-empty(edited).png.bded6e2c963ea848824eae49e3063a30.png

 

  • IP Address
    • The IP that the computer will use to communicate with the rest of the network. This will be the IP you reserved in the Router.
  • Subnet mask
    • Under a majority of circumstances this will be 255.255.255.0 but if you're not sure you can verify that it is in the Router's DHCP settings or by running ipconfig /all in CMD.
  • Default gateway
    • This is the address the computer will use to talk to the Internet.
  • Preferred DNS server
    • This is the primary Domain Name Service/Server that resolves Domain Names to IP addresses. You can use the one listed in your Router or choose a 3rd party DNS provider.
  • Alternative DNS server
    • This is the backup Domain Name Service/Server used in case the Preferred server goes offline or can't be reached. You can use the one listed in your Router or choose a 3rd party DNS provider.

Once you finish filling in all the fields it will look similar to the following:

 

ipv4-properties-populated(edited).png.4ec9ef0aef8a4f666e8bdb05f9923a1c.png

 

Make sure to tick the box Validate settings upon exit. Then press OK. Then OK again on the previous menu. This may bring up a Windows Network Diagnostics page. Assuming it doesn't identify any problems you're good to go.

Now that the computer has an IP address that won't change we can connect to it from our other clients using it's IP address. To do this open This PC on a client and navigate to the Address Bar at the top. Enter: \\ip-of-computer:

 

file-explorer-entering-ip(edited).png.b0553537a8f3cacf34305567c20b10c8.png

 

Now hit Enter. If everything worked you'll be prompt with a login pop-up:

 

security-dialog(edited).png.26487788d56bf360a3542a6573e75a38.png

 

Enter the username and password of one of the accounts on the machine hosting the share. You'll be let in and you should then see the Share Folder we created:

 

ip-address-logged-in(edited).png.dc99059cebaf950d51292682baeb603b.png

 

Once you enter the folder you should then be able to read, write, or execute files all in coordinance with the permissions you set for the user account you logged in as.

 

 

3. Mapping a Network Drive (Optional)

Spoiler

Windows supports a feature that allows you to map a network folder to a Drive Letter. This enables easier accessibility and allows you to monitor the capacity (Total | Used | Free) of the drive.

 

To set this up return to the share folder and move one level up by clicking on the PC Name or IP address in the Address Bar. Now in the field below right-click the folder -> Map network drive...

 

map-network-drive(edited).png.08287f3cbda825f3438ee96204218c24.png

 

On the following menu you'll want to:

  1. Choose a Drive letter.
    1. You can pick any one you like from the drop-down list.
  2. ☑️ Reconnect at sign-in
    1. This will automatically re-connect you to the share when you start your computer.
  3. Connect using different credentials 
    1. This is optional but you can use an alternate account to the one you're logged-in as.

When you're done click Finish.

 

map-network-drive-setup(edited).png.65fe6a92ac6521cac647e01157ee9fdf.png

 

When it's done the drive will appear under Network locations under This PC. You'll be able to use it similar to any directly connected disk.

 

this-pc-network-location(edited).png.7c96588d583db27a25dffeca51513822.png

 

You can also re-name the disk by Right-click -> Rename to call it whatever you like. If the name is short enough the disk capacity will also appear under the capacity bar.

 

this-pc-rename(edited).png.abbf40bdaa4417827cd50113a18f7a2e.png

 

 

4. Redundancy/Protection Against Drive Failure (Optional)

Spoiler

If you want some protection for the data in the event there's a drive failure you can setup a feature in Windows known as Storage Spaces.

 

NOTE: This will require two or more disks, preferably of identical capacity and RPM.

 

NOTE: Storage Spaces has a number of different configuration options some of which depend on your distribution of Windows (Home/Pro/Education/Enterprise, Server 2012/2016/2019) because of this not all options may be available on your version of Windows.

 

NOTE: Despite how it may look Storage Spaces is not a back-up solution. It should not be treated as a back-up solution. It simply protects the data in the event of drive failure. If you want a proper back-up solution this is not it.

 

To begin setup click on the Start Menu and type Storage Spaces then hit Enter. You'll be brought to the initial setup page:

 

manage-storage-spaces-page(edited).png.9f5696acc8b66b5b607a42f5c18088f1.png

 

Click on Create a new pool and storage space. (You may receive a pop-up where you have to accept User Account Control)

 

From the page that follows you will be shown all your un-formatted drives. Ideally these will be what you use when you set-up the pool but it's understandable that you will likely have pre-formatted drives. By clicking on Formatted drives you can see disks that are currently in use by the system (excluding C:\)

 

create-a-storage-pool(edited).png.e3d5aa5f50c879619077846e03a6e1a0.png

 

NOTE: As the warning in the image above explains using a pre-formatted HDD will cause all the data on the disk to be lost. Be absolutely certain that the disks you use for this do not contain any data you can't afford to lose.

 

If you are using pre-formatted drives make sure to take them offline before-hand.

 

Select the two or more disks you would like to use then press Create pool. Assuming there are no errors you can move-on to the next step.

 

From the following list there will be a number of fields you will have to configure based on what you're looking to accomplish:

  1. Name
    1. Whatever you would like to call your Storage Pool
  2. Drive letter
    1. This can be any letter that is available within the list (but is typically best left alone).
  3. File system
    1. Depending on your distribution of Windows you may have only one or more than one option.
      1. NTFS
        1. The most standard File System used on most Windows boxes today. Will work fine for the overwhelming number of use cases.
      2. ReFS
        1. The latest File System available on some (but not all) versions of Windows. Comes with some additional features and can be used if you have it.
  4. Resiliency type
    1. This determines which level of redundancy the pool will have. Some are better than others. Some have performance penalties at the benefit of more usable capacity.
      1. Simple (no resiliency)
        1. This has the benefit of increased read/write performance and usable capacity at the sacrifice of fault tolerance. If a disk is lost, all the data is lost.
      2. Two-way mirror
        1. In this configuration 1/2 of the total capacity of the pool is lost to redundancy. In a 2 disk configuration 1 disk can fail and the data will remain safe.
      3. Three-way mirror
        1. Like a two-way mirror except only 1/3rd of the total capacity of the pool is usable and with 3 disks 2 disks can fail and the data will still be intact.
      4. Parity
        1. This will allow one disk in a pool of as many disks as you have to fail at the cost of read/write performance. The benefit being usable capacity with some resiliency.
  5. Size (maximum)
    1. Based on the number of disks you have and the Resiliency type you chose you will be able to create a virtual disk as big as the Total pool capacity allows.

Once you have all your desired settings dialed in click Create storage space. Windows should automatically create and mount the virtual disk and you'll be able to view it under This PC:

 

this-pc-virtual-disk-formed(edited).png.b04036d02915829028026b7fb8fd20c8.png

 

With this two disk, Two-way mirror configuration one can fail and the data will remain intact. All of this handled in the background only showing me one Virtual Disk.

 

You can view the pools configuration or create more virtual disks through the Manage Storage Spaces page:

 

storage-space-created(edited).png.b4b6e8bbfc8bcda74f2e1aacac7d92d2.png

 

You can now start Step 1. Configuring Driver Sharing.

 

5. Conclusion

Spoiler

Now there are a number of scenarios that I did not cover:

  1. What if I have both a 1Gbit and a 10Gbit network connected to the computer?
    1. How do I setup the IP's?
    2. Why is Windows using the slower NIC?
  2. What if I want to use Hardware RAID?
    1. Do I still need to setup Storage Spaces?
  3. What if I only have disks of different capacities/RPM?
    1. Is this compatible with Storage Spaces?
  4. Can I use this over the Internet?
  5. What if I don't have anywhere to temporarily put my existing data prior to making the Storage Pool?
    1. Do I have to format the drives?
  6. How do I add additional users?
  7. Will this work with earlier versions of Windows?
    1. 8/8.1?
    2. 7?
    3. Vista?

Despite not covering absolutely everything, for the majority of setups this should get you up off the ground. If you need anything that I missed, comment below. I'll help you and may add additional steps to the guide above.

 

Link to comment
Share on other sites

Link to post
Share on other sites

Quick question:  Is there a way to setup drive sharing so that only machines that exist after a switch will be visible to each other/only each other and not machines that exist on the router before the switch and wi-fi?

AMD Ryzen 5800XFractal Design S36 360 AIO w/6 Corsair SP120L fans  |  Asus Crosshair VII WiFi X470  |  G.SKILL TridentZ 4400CL19 2x8GB @ 3800MHz 14-14-14-14-30  |  EVGA 3080 FTW3 Hybrid  |  Samsung 970 EVO M.2 NVMe 500GB - Boot Drive  |  Samsung 850 EVO SSD 1TB - Game Drive  |  Seagate 1TB HDD - Media Drive  |  EVGA 650 G3 PSU | Thermaltake Core P3 Case 

Link to comment
Share on other sites

Link to post
Share on other sites

3 minutes ago, nick name said:

Quick question:  Is there a way to setup drive sharing so that only machines that exist after a switch will be visible to each other/only each other and not machines that exist on the router before the switch and wi-fi?

Unless you want to setup VLAN's on a managed switch all clients are going to be able to see each other provided they're on the same subnet. There may be ways to spoof who one client is over another but there's no simple way to hide existing clients from new clients besides disabling network discovery but this may prevent you from accessing the drive share.

Link to comment
Share on other sites

Link to post
Share on other sites

Just now, Windows7ge said:

Unless you want to setup VLAN's on a managed switch all clients are going to be able to see each other provided they're on the same subnet. There may be ways to spoof who one client is over another but there's no simple way to hide existing clients from new clients besides disabling network discovery but this may prevent you from accessing the drive share.

Thank you for addressing my question.  

AMD Ryzen 5800XFractal Design S36 360 AIO w/6 Corsair SP120L fans  |  Asus Crosshair VII WiFi X470  |  G.SKILL TridentZ 4400CL19 2x8GB @ 3800MHz 14-14-14-14-30  |  EVGA 3080 FTW3 Hybrid  |  Samsung 970 EVO M.2 NVMe 500GB - Boot Drive  |  Samsung 850 EVO SSD 1TB - Game Drive  |  Seagate 1TB HDD - Media Drive  |  EVGA 650 G3 PSU | Thermaltake Core P3 Case 

Link to comment
Share on other sites

Link to post
Share on other sites

?

(Though I would take the index out of spoiler for readability purposes when you first enter the thread)

Link to comment
Share on other sites

Link to post
Share on other sites

5 minutes ago, Den-Fi said:

?

(Though I would take the index out of spoiler for readability purposes when you first enter the thread)

Try making it look good when it's as long as the Index for my Beginners Guide to Debian CLI Based File Servers or worse my VFIO GPU Pass-though Tutorial. It'd be almost a full page of just Index so for consistency I prefer to just keep it in a spoiler.

Link to comment
Share on other sites

Link to post
Share on other sites

22 minutes ago, nick name said:

Quick question:  Is there a way to setup drive sharing so that only machines that exist after a switch will be visible to each other/only each other and not machines that exist on the router before the switch and wi-fi?

Are you talking actual router? Or just one of those all-in-one units?

 

Link to comment
Share on other sites

Link to post
Share on other sites

Just now, YoFavRussian said:

Are you talking actual router? Or just one of those all-in-one units?

 

AIO type from the ISP.  It's not terribly important to me.  If it was possible then I'd consider it.  The goal would be for two PCs to see each other and not visible to anything else on the network.  

AMD Ryzen 5800XFractal Design S36 360 AIO w/6 Corsair SP120L fans  |  Asus Crosshair VII WiFi X470  |  G.SKILL TridentZ 4400CL19 2x8GB @ 3800MHz 14-14-14-14-30  |  EVGA 3080 FTW3 Hybrid  |  Samsung 970 EVO M.2 NVMe 500GB - Boot Drive  |  Samsung 850 EVO SSD 1TB - Game Drive  |  Seagate 1TB HDD - Media Drive  |  EVGA 650 G3 PSU | Thermaltake Core P3 Case 

Link to comment
Share on other sites

Link to post
Share on other sites

Just now, nick name said:

AIO type from the ISP.  It's not terribly important to me.  If it was possible then I'd consider it.  The goal would be for two PCs to see each other and not visible to anything else on the network.  

Peer-to-Peer networking. You could install an extra NIC in your computer, set-up some static IP's (assuming Windows doesn't do it for you - though they often do) then setup drive sharing. If the computer hosting the drive share needs a path to the internet you may need to configure some firewall rules to stop the drive share from advertising on the LAN.

Link to comment
Share on other sites

Link to post
Share on other sites

11 minutes ago, Windows7ge said:

Peer-to-Peer networking. You could install an extra NIC in your computer, set-up some static IP's (assuming Windows doesn't do it for you - though they often do) then setup drive sharing. If the computer hosting the drive share needs a path to the internet you may need to configure some firewall rules to stop the drive share from advertising on the LAN.

One machine is a laptop.  *sad trombone*

 

Again, I appreciate y'all giving this your time.  

AMD Ryzen 5800XFractal Design S36 360 AIO w/6 Corsair SP120L fans  |  Asus Crosshair VII WiFi X470  |  G.SKILL TridentZ 4400CL19 2x8GB @ 3800MHz 14-14-14-14-30  |  EVGA 3080 FTW3 Hybrid  |  Samsung 970 EVO M.2 NVMe 500GB - Boot Drive  |  Samsung 850 EVO SSD 1TB - Game Drive  |  Seagate 1TB HDD - Media Drive  |  EVGA 650 G3 PSU | Thermaltake Core P3 Case 

Link to comment
Share on other sites

Link to post
Share on other sites

20 minutes ago, nick name said:

One machine is a laptop.  *sad trombone*

 

Again, I appreciate y'all giving this your time.  

Does it have USB3?

Link to comment
Share on other sites

Link to post
Share on other sites

43 minutes ago, Windows7ge said:

Does it have USB3?

I believe so.  It's an older i7 4720HQ so I'm pretty confident it has USB 3 from that period.  Whatever it's called now I'd have to look up.  

AMD Ryzen 5800XFractal Design S36 360 AIO w/6 Corsair SP120L fans  |  Asus Crosshair VII WiFi X470  |  G.SKILL TridentZ 4400CL19 2x8GB @ 3800MHz 14-14-14-14-30  |  EVGA 3080 FTW3 Hybrid  |  Samsung 970 EVO M.2 NVMe 500GB - Boot Drive  |  Samsung 850 EVO SSD 1TB - Game Drive  |  Seagate 1TB HDD - Media Drive  |  EVGA 650 G3 PSU | Thermaltake Core P3 Case 

Link to comment
Share on other sites

Link to post
Share on other sites

4 minutes ago, nick name said:

I believe so.  It's an older i7 4720HQ so I'm pretty confident it has USB 3 from that period.  Whatever it's called now I'd have to look up.  

USB3 -> Ethernet adapter. Should work OK.

Link to comment
Share on other sites

Link to post
Share on other sites

I'll have to look up what those parts will cost.  

 

I usually watch movies and shows on my laptop while working on my PC which uses a TV as its monitor.  For shows or movies I really wanna watch without disturbance I watch on my PC.  Since everything goes on the laptop first I usually just transfer the files to the PC.

 

So the process as it is now isn't terrible.  To make it more elegant (if cheap enough) might be fun to implement though.    

AMD Ryzen 5800XFractal Design S36 360 AIO w/6 Corsair SP120L fans  |  Asus Crosshair VII WiFi X470  |  G.SKILL TridentZ 4400CL19 2x8GB @ 3800MHz 14-14-14-14-30  |  EVGA 3080 FTW3 Hybrid  |  Samsung 970 EVO M.2 NVMe 500GB - Boot Drive  |  Samsung 850 EVO SSD 1TB - Game Drive  |  Seagate 1TB HDD - Media Drive  |  EVGA 650 G3 PSU | Thermaltake Core P3 Case 

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×