kapitainsky / RcloneBrowser

Simple cross platform GUI for rclone. Supports macOS, GNU/Linux, BSD family and Windows.
https://github.com/kapitainsky/RcloneBrowser
MIT License
2.24k stars 215 forks source link

setting as a network drive on windows // and mounting to any unused drive letter #210

Open testxsubject opened 2 years ago

testxsubject commented 2 years ago

I see in the documentation for rclone how this can be done. Rclone Brower is great, but I'm not sure where I can add the commands necessary for this when using rclone browser to mount drives as a networked drive location from a windows filesystem. Is there an option to do this? In the documentation for rclone it describes [pasted from https://rclone.org/commands/rclone_mount/#:~:text=Mounting%20modes%20on%20windows,-Unlike%20other%20operating%20systems%2C ]: Thanks for any help getting this to work, I may have missed something. When mounting as a fixed disk drive you can either mount to an unused drive letter, or to a path representing a non-existent subdirectory of an existing parent directory or drive. Using the special value * will tell rclone to automatically assign the next available drive letter, starting with Z: and moving backward. Examples:

rclone mount remote:path/to/files * rclone mount remote:path/to/files X: rclone mount remote:path/to/files C:\path\parent\mount rclone mount remote:path/to/files X: Option --volname can be used to set a custom volume name for the mounted file system. The default is to use the remote name and path.

To mount as network drive, you can add option --network-mode to your mount command. Mounting to a directory path is not supported in this mode, it is a limitation Windows imposes on junctions, so the remote must always be mounted to a drive letter.

rclone mount remote:path/to/files X: --network-mode A volume name specified with --volname will be used to create the network share path. A complete UNC path, such as \cloud\remote, optionally with path \cloud\remote\madeup\path, will be used as is. Any other string will be used as the share part, after a default prefix \server. If no volume name is specified then \server\share will be used. You must make sure the volume name is unique when you are mounting more than one drive, or else the mount command will fail. The share name will treated as the volume label for the mapped drive, shown in Windows Explorer etc, while the complete \server\share will be reported as the remote UNC path by net use etc, just like a normal network drive mapping.

If you specify a full network share UNC path with --volname, this will implicitely set the --network-mode option, so the following two examples have same result:

rclone mount remote:path/to/files X: --network-mode rclone mount remote:path/to/files X: --volname \server\share You may also specify the network share UNC path as the mountpoint itself. Then rclone will automatically assign a drive letter, same as with * and use that as mountpoint, and instead use the UNC path specified as the volume name, as if it were specified with the --volname option. This will also implicitely set the --network-mode option. This means the following two examples have same result:

rclone mount remote:path/to/files \cloud\remote rclone mount remote:path/to/files * --volname \cloud\remote There is yet another way to enable network mode, and to set the share path, and that is to pass the "native" libfuse/WinFsp option directly: --fuse-flag --VolumePrefix=\server\share. Note that the path must be with just a single backslash prefix in this case.

Note: In previous versions of rclone this was the only supported method.

testxsubject commented 2 years ago

at what point in the step by step config would I be able to enter the flags needed? Or is there a specific entry in my config file that would work this way so that when I mount a remote it loads it like usual but with these flags ?

KaladinDMP commented 2 years ago

I just run a batch file at startup, put the batch file near your config and then a shortcut to that batch in shell:startup start /min cmd /k "rclone mount "remote:path" * [flags]" timeout 1 /NOBREAK/n taskkill /f /im conhost.exe

if you want to be able to kill the mount by closing the cmd window then remove the last line. The way this is done the remote will be mounted on startup and remain mounted. Unfortunately i couldn't find a way to do this natively with rclone browser so did it quick and dirty. May help you. obviously you could add flags as needed. You may or may not need the 1 second pause i use it because i mount 6 mirrors at once