User Tools

Site Tools


merging_drives

Merging Drives for Large Collections

RomVault does not currently have the ability to assign multiple ROM paths to a single DAT. For example, you cannot assign X:\PS2 and Y:\PS2 to your PlayStation 2 DAT at the same time. This may be problematic if you use multiple drives and a particular collection cannot fit on a single physical drive. However, you can use other applications to merge multiple drives or paths together so they appear consolidated and can be accessed as if it were a single drive.

ⓘ NOTE:
This guide should not be necessary if you use an array such as UnRAID or TrueNAS, but it may be helpful if you have several drives and do not use an array. The example below outlines one merging solution for Windows using WinFsp and rclone. There are many solutions available, but this solution should be suitable for simple use cases and allows flexibility so you do not need to change the format of any of your existing drives.


Setup WinFsp

First, you will need to download and install WinFsp which is used for mounting virtual filesystems.

  1. Go to the WinFsp site.
  2. Download the latest version for your operating system. For this example we will use the standard WinFsp Installer.
  3. Open the WinFsp installer by double clicking on the .msi file that was downloaded. If prompted with a security warning, choose the “Run” option.
  4. Install the application by following the prompts. The default settings should be sufficient.


Setup rclone

Next, you will need to download and setup rclone which is used for mounting various remote sources so they can be accessed through Windows Explorer. This may not seem intuitive at first if your drives are all connected locally with different drive letters. In this example we will be using rclone just for its merging capabilities, however it can also be used to connect to remote sources such as WebDAV, Google Drives, etc.

  1. Go to the rclone site.
  2. Download the latest version for your operating system. For this example we will use the “Intel/AMD - 64 Bit” version for Windows.
  3. Extract the contents of the .zip file to a location of your choosing. Note that rclone is like RomVault and does not have an installer. For this example we will extract the contents to C:\rclone


Configure an rclone Union remote

Next, you need to configure rclone using a special type of remote called a “Union”. The Union remote allows you to virtually merge the contents of multiple sources into a single mount point. This does not impact the filesystems of the source drives and does not require you do to do any reformatting or drive preparation.

  1. Open a command prompt by typing cmd into the Windows search bar and select Command Prompt
  2. Navigate to the rclone directory, in this case: cd C:\rclone and press Enter. Note you can also type cd then drag and drop your rclone directory onto the command line to populate the correct path.
  3. Launch rclone by typing rclone config and press Enter. A configuration wizard will display.
  4. Choose the option for “New remote” by typing n then press Enter. A name prompt will display.
  5. Give your remote a friendly name so you know what it is. For this example we will be merging two drives that contain a PlayStation 2 collection, so we will call this remote “PS2”. Press Enter and a long list of remote types will display.
  6. Choose the union option by typing the number or the word union and press Enter. The config wizard will ask for a list of upstreams, or paths to merge.
  7. Type or drag and drop the paths you want to include separated by a space, for example: "X:\PS2" "Y:\PS2". Press Enter to continue.
  8. The setup wizard will walk you through various settings for this remote:
    • action_policy: use the default (“epall”)
    • create_policy: use the default (“epmfs”)
    • search_policy: use the default (“ff”)
    • cache_time: use the default (“120”)
  9. When prompted to edit the advanced config, choose no.
  10. When prompted to keep the remote, choose yes. You will be taken back to the main menu of the remote configuration wizard.
  11. Quit the configuration wizard by typing q and press Enter.

For additional information about the rclone Union remote and the configuration options available, please refer to the rclone help documentation.


Mount the Union remote

Now that you have a union remote configured, the next step is to mount the remote to access the files. This will effectively be a shortcut to access your files through the unified view.

  1. From the command prompt in the rclone directory, launch rclone using the mount option and choose to mount the remote to a new location using the following syntax: rclone mount [remote_name]:[directory_in_remote] [mount_path] [options]. For example: rclone mount PS2:\ "C:\PS2\" --vfs-cache-mode writes and press Enter. Note that rclone for Windows not will not allow you to mount to a directory that already exists, however you must make sure all ancestor directories leading up to the mount point do exist.
  2. If everything was successful, a message should display indicating that the rclone service has started.
  3. Check that the mount exists by navigating to your mount path using Windows Explorer. The mount point will appear with a shortcut icon.
  4. Check that the contents of your drives are accessible through the remote. You should see the contents of both of your drives merged.
ⓘ NOTE:
RomVault requires write access to the remote for fix operations. Use the --vfs-cache-mode writes option while mounting the remote to enable write access.
💡 TIP:
rclone must be running for the virtual files to be populated in your mount point. You may want to create a simple batch file to launch rclone and mount your union remote so you do not need to use the command line every time.


Optional: Create a batch script to mount remotes and start RomVault

If you would like to mount your remotes when you launch RomVault, you can create a simple batch script as follows:

  1. Navigate to the directory of your RomVault executable
  2. Right click in blank space in Windows Explorer and select New > Text Document
  3. Rename the file something friendly with a .bat extension, like MountStartRV.bat
  4. Open your .bat file in Notepad by right clicking and choosing Edit
  5. Enter the contents of your batch script. You can use the following as an example:
    start "rclone" "C:\rclone\rclone.exe" mount PS2:\ C:\PS2\ --vfs-cache-mode writes
    start "" "C:\ROMVault\ROMVault35.exe"
  6. Make sure RomVault and rclone are both closed, then test your script by double clicking on your *.bat file.
  7. If everything was successful, rclone will launch and mount your remote and RomVault will also launch.

Congratulations! You can now mount your remotes and launch RomVault by clicking your batch script file. Note that closing RomVault will not stop your rclone mount. If you would like to unmount your remote, then close the rclone command prompt window.


Configure directory rules

Finally, the last step is to update your directory rule in RomVault to use your new mount point as the directory for your ROMs. In this case we will just be updating the directory rule for our PlayStation 2 collection.

merging_drives.txt · Last modified: 2022/07/30 10:43 by johnsanc