Add "disable rclone link" flag for remotes

rclone_link
Is there such a thing yet?

I'd imagine it would be disastrous if someone uses "rclone link" the root of a google drive.

Not to mention once the public linking is executed, google will scan your files and potentially delete files or flag them.

Similar to "read-only" for mounts, there should be a flag that blocks linking access per remote.

1 Like

You can use the --unlink flag

 --unlink            Remove existing public link to file/folder

It isn't supported by all backends though...

Perhaps I didn't make my case clear enough, my bad.

My intention is to disable any link-making to even happen. A prevention of sorts, more examples to make it clearer:

  1. --read-only prevent any changes to mounts

  2. --dry-run prevent any changes

As you can see, there's basically no protection to prevent public link creation. This is a cause for concern for google drive as they basically turn on a swich whereby they start scanning your drives when it is publicly shared.

Another words, disable "rclone link" functionality.

If you pass in the flag --disable PublicLink then rclone link won't work.

You can also set this in an environment variable

RCLONE_DISABLE=PublicLink

Getting closer to what you want?

Thank you! This is exactly what I needed.

How is this not in the flags and rclone_link.

Or perhaps there's an environment variable wiki that I'm missing. Anyway, thanks!

It's not quite as clear as it probably could be as you have features for all the remotes and you can disable features for the remotes by the two ways @ncw described above.

rclone backend features GD:
{
	"Name": "GD",
	"Root": "",
	"String": "Google drive root ''",
	"Precision": 1000000,
	"Hashes": [
		"md5"
	],
	"Features": {
		"About": true,
		"BucketBased": false,
		"BucketBasedRootOK": false,
		"CanHaveEmptyDirectories": true,
		"CaseInsensitive": false,
		"ChangeNotify": true,
		"CleanUp": true,
		"Command": true,
		"Copy": true,
		"DirCacheFlush": true,
		"DirMove": true,
		"Disconnect": false,
		"DuplicateFiles": true,
		"GetTier": false,
		"IsLocal": false,
		"ListR": true,
		"MergeDirs": true,
		"Move": true,
		"OpenWriterAt": false,
		"PublicLink": true,
		"Purge": true,
		"PutStream": true,
		"PutUnchecked": true,
		"ReadMimeType": true,
		"ServerSideAcrossConfigs": false,
		"SetTier": false,
		"SetWrapper": false,
		"Shutdown": false,
		"SlowHash": false,
		"SlowModTime": false,
		"UnWrap": false,
		"UserInfo": false,
		"WrapFs": false,
		"WriteMimeType": true
	}
}

TIL!
I had no idea how to use this feature until now.

Apparently so since its hidden deep in rc-command.

Anyway good to know that this post will help others.

1 Like