mirror of
https://github.com/rclone/rclone.git
synced 2025-08-19 01:46:31 +02:00
Implement Gofile backend - fixes #4632
This commit is contained in:
@@ -123,6 +123,7 @@ WebDAV or S3, that work out of the box.)
|
||||
{{< provider name="Enterprise File Fabric" home="https://storagemadeeasy.com/about/" config="/filefabric/" >}}
|
||||
{{< provider name="Fastmail Files" home="https://www.fastmail.com/" config="/webdav/#fastmail-files" >}}
|
||||
{{< provider name="FTP" home="https://en.wikipedia.org/wiki/File_Transfer_Protocol" config="/ftp/" >}}
|
||||
{{< provider name="Gofile" home="https://gofile.io/" config="/gofile/" >}}
|
||||
{{< provider name="Google Cloud Storage" home="https://cloud.google.com/storage/" config="/googlecloudstorage/" >}}
|
||||
{{< provider name="Google Drive" home="https://www.google.com/drive/" config="/drive/" >}}
|
||||
{{< provider name="Google Photos" home="https://www.google.com/photos/about/" config="/googlephotos/" >}}
|
||||
|
@@ -43,6 +43,7 @@ See the following for detailed instructions for
|
||||
* [Dropbox](/dropbox/)
|
||||
* [Enterprise File Fabric](/filefabric/)
|
||||
* [FTP](/ftp/)
|
||||
* [Gofile](/gofile/)
|
||||
* [Google Cloud Storage](/googlecloudstorage/)
|
||||
* [Google Drive](/drive/)
|
||||
* [Google Photos](/googlephotos/)
|
||||
|
256
docs/content/gofile.md
Normal file
256
docs/content/gofile.md
Normal file
@@ -0,0 +1,256 @@
|
||||
---
|
||||
title: "Gofile"
|
||||
description: "Rclone docs for Gofile"
|
||||
versionIntroduced: "v1.68"
|
||||
---
|
||||
|
||||
# {{< icon "fa fa-folder" >}} Gofile
|
||||
|
||||
[Gofile](https://gofile.io) is a content storage and distribution
|
||||
platform. Its aim is to provide as much service as possible for free
|
||||
or at a very low price.
|
||||
|
||||
The initial setup for Gofile involves logging in to the web interface
|
||||
and going to the "My Profile" section. Copy the "Account API token"
|
||||
for use in the config file.
|
||||
|
||||
Note that if you wish to connect rclone to Gofile you will need a
|
||||
premium account.
|
||||
|
||||
## Configuration
|
||||
|
||||
Here is an example of how to make a remote called `remote`. First run:
|
||||
|
||||
rclone config
|
||||
|
||||
This will guide you through an interactive setup process:
|
||||
|
||||
```
|
||||
No remotes found, make a new one?
|
||||
n) New remote
|
||||
s) Set configuration password
|
||||
q) Quit config
|
||||
n/s/q> n
|
||||
|
||||
Enter name for new remote.
|
||||
name> remote
|
||||
|
||||
Option Storage.
|
||||
Type of storage to configure.
|
||||
Choose a number from below, or type in your own value.
|
||||
XX / Gofile
|
||||
\ (gofile)
|
||||
Storage> gofile
|
||||
|
||||
Option access_token.
|
||||
API Access token
|
||||
You can get this from the web control panel.
|
||||
Enter a value. Press Enter to leave empty.
|
||||
access_token> YOURACCESSTOKEN
|
||||
|
||||
Edit advanced config?
|
||||
y) Yes
|
||||
n) No (default)
|
||||
y/n> n
|
||||
|
||||
Configuration complete.
|
||||
Options:
|
||||
- type: gofile
|
||||
- access_token: YOURACCESSTOKEN
|
||||
Keep this "remote" remote?
|
||||
y) Yes this is OK (default)
|
||||
e) Edit this remote
|
||||
d) Delete this remote
|
||||
y/e/d> y
|
||||
```
|
||||
|
||||
Once configured you can then use `rclone` like this,
|
||||
|
||||
List directories and files in the top level of your Gofile
|
||||
|
||||
rclone lsf remote:
|
||||
|
||||
To copy a local directory to an Gofile directory called backup
|
||||
|
||||
rclone copy /home/source remote:backup
|
||||
|
||||
### Modification times and hashes
|
||||
|
||||
Gofile supports modification times with a resolution of 1 second.
|
||||
|
||||
Gofile supports MD5 hashes, so you can use the `--checksum` flag.
|
||||
|
||||
### Restricted filename characters
|
||||
|
||||
In addition to the [default restricted characters set](/overview/#restricted-characters)
|
||||
the following characters are also replaced:
|
||||
|
||||
| Character | Value | Replacement |
|
||||
| --------- |:-----:|:-----------:|
|
||||
| ! | 0x21 | ! |
|
||||
| " | 0x22 | " |
|
||||
| * | 0x2A | * |
|
||||
| : | 0x3A | : |
|
||||
| < | 0x3C | < |
|
||||
| > | 0x3E | > |
|
||||
| ? | 0x3F | ? |
|
||||
| \ | 0x5C | \ |
|
||||
| \| | 0x7C | | |
|
||||
|
||||
|
||||
File names can also not start or end with the following characters.
|
||||
These only get replaced if they are the first or last character in the
|
||||
name:
|
||||
|
||||
| Character | Value | Replacement |
|
||||
| --------- |:-----:|:-----------:|
|
||||
| . | 0x2E | . |
|
||||
|
||||
Invalid UTF-8 bytes will also be [replaced](/overview/#invalid-utf8),
|
||||
as they can't be used in JSON strings.
|
||||
|
||||
### Public Links
|
||||
|
||||
Gofile supports `rclone link` to make public links to files or
|
||||
directories. If you specify a directory it will download as a `zip`
|
||||
file. You can use the `--expire` flag to specify the time the link
|
||||
should be valid. Note that `rclone link --unlink` removes all the
|
||||
public links for a file.
|
||||
|
||||
### Root folder ID
|
||||
|
||||
You can set the `root_folder_id` for rclone. This is the directory
|
||||
(identified by its `Folder ID`) that rclone considers to be the root
|
||||
of your Gofile drive.
|
||||
|
||||
Normally you will leave this blank and rclone will determine the
|
||||
correct root to use itself and fill in the value in the config file.
|
||||
|
||||
However you can set this to restrict rclone to a specific folder
|
||||
hierarchy.
|
||||
|
||||
In order to do this you will have to find the `Folder ID` of the
|
||||
directory you wish rclone to display.
|
||||
|
||||
You can do this with rclone
|
||||
|
||||
```
|
||||
$ rclone lsf -Fip --dirs-only remote:
|
||||
d6341f53-ee65-4f29-9f59-d11e8070b2a0;Files/
|
||||
f4f5c9b8-6ece-478b-b03e-4538edfe5a1c;Photos/
|
||||
d50e356c-29ca-4b27-a3a7-494d91026e04;Videos/
|
||||
```
|
||||
|
||||
The ID to use is the part before the `;` so you could set
|
||||
|
||||
```
|
||||
root_folder_id = d6341f53-ee65-4f29-9f59-d11e8070b2a0
|
||||
```
|
||||
|
||||
To restrict rclone to the `Files` directory.
|
||||
|
||||
{{< rem autogenerated options start" - DO NOT EDIT - instead edit fs.RegInfo in backend/gofile/gofile.go then run make backenddocs" >}}
|
||||
### Standard options
|
||||
|
||||
Here are the Standard options specific to gofile (Gofile).
|
||||
|
||||
#### --gofile-access-token
|
||||
|
||||
API Access token
|
||||
|
||||
You can get this from the web control panel.
|
||||
|
||||
Properties:
|
||||
|
||||
- Config: access_token
|
||||
- Env Var: RCLONE_GOFILE_ACCESS_TOKEN
|
||||
- Type: string
|
||||
- Required: false
|
||||
|
||||
### Advanced options
|
||||
|
||||
Here are the Advanced options specific to gofile (Gofile).
|
||||
|
||||
#### --gofile-root-folder-id
|
||||
|
||||
ID of the root folder
|
||||
|
||||
Leave this blank normally, rclone will fill it in automatically.
|
||||
|
||||
If you want rclone to be restricted to a particular folder you can
|
||||
fill it in - see the docs for more info.
|
||||
|
||||
|
||||
Properties:
|
||||
|
||||
- Config: root_folder_id
|
||||
- Env Var: RCLONE_GOFILE_ROOT_FOLDER_ID
|
||||
- Type: string
|
||||
- Required: false
|
||||
|
||||
#### --gofile-account-id
|
||||
|
||||
Account ID
|
||||
|
||||
Leave this blank normally, rclone will fill it in automatically.
|
||||
|
||||
|
||||
Properties:
|
||||
|
||||
- Config: account_id
|
||||
- Env Var: RCLONE_GOFILE_ACCOUNT_ID
|
||||
- Type: string
|
||||
- Required: false
|
||||
|
||||
#### --gofile-encoding
|
||||
|
||||
The encoding for the backend.
|
||||
|
||||
See the [encoding section in the overview](/overview/#encoding) for more info.
|
||||
|
||||
Properties:
|
||||
|
||||
- Config: encoding
|
||||
- Env Var: RCLONE_GOFILE_ENCODING
|
||||
- Type: Encoding
|
||||
- Default: Slash,LtGt,DoubleQuote,Colon,Question,Asterisk,Pipe,BackSlash,Del,Ctl,LeftPeriod,RightPeriod,InvalidUtf8,Dot,Exclamation
|
||||
|
||||
#### --gofile-description
|
||||
|
||||
Description of the remote.
|
||||
|
||||
Properties:
|
||||
|
||||
- Config: description
|
||||
- Env Var: RCLONE_GOFILE_DESCRIPTION
|
||||
- Type: string
|
||||
- Required: false
|
||||
|
||||
{{< rem autogenerated options stop >}}
|
||||
|
||||
## Limitations
|
||||
|
||||
Gofile only supports filenames up to 255 characters in length, where a
|
||||
character is a unicode character.
|
||||
|
||||
Directories should not be cached for more than 24h otherwise files in
|
||||
the directory may not be downloadable. In practice this means when
|
||||
using a VFS based rclone command such as `rclone mount` you should
|
||||
make sure `--dir-cache-time` is less than `24h`.
|
||||
|
||||
Note that Gofile is currently limited to a total of 100,000 items. If
|
||||
you attempt to upload more than that you will get
|
||||
`error-limit-100000`. This limit may be lifted in the future.
|
||||
|
||||
### Duplicated files
|
||||
|
||||
Gofile is capable of having files with duplicated file names. For
|
||||
instance two files called `hello.txt` in the same directory.
|
||||
|
||||
Rclone cannot sync that to a normal file system but it can be fixed
|
||||
with the `rclone dedupe` command.
|
||||
|
||||
Duplicated files cause problems with the syncing and you will see
|
||||
messages in the log about duplicates.
|
||||
|
||||
Use `rclone dedupe` to fix duplicated files.
|
@@ -25,6 +25,7 @@ Here is an overview of the major features of each cloud storage system.
|
||||
| Dropbox | DBHASH ¹ | R | Yes | No | - | - |
|
||||
| Enterprise File Fabric | - | R/W | Yes | No | R/W | - |
|
||||
| FTP | - | R/W ¹⁰ | No | No | - | - |
|
||||
| Gofile | MD5 | DR/W | No | Yes | R | - |
|
||||
| Google Cloud Storage | MD5 | R/W | No | No | R/W | - |
|
||||
| Google Drive | MD5, SHA1, SHA256 | DR/W | No | Yes | R/W | DRWU |
|
||||
| Google Photos | - | - | No | Yes | R | - |
|
||||
@@ -501,6 +502,7 @@ upon backend-specific capabilities.
|
||||
| Dropbox | Yes | Yes | Yes | Yes | No | No | Yes | No | Yes | Yes | Yes |
|
||||
| Enterprise File Fabric | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes |
|
||||
| FTP | No | No | Yes | Yes | No | No | Yes | No | No | No | Yes |
|
||||
| Gofile | Yes | Yes | Yes | Yes | No | No | Yes | No | Yes | Yes | Yes |
|
||||
| Google Cloud Storage | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No |
|
||||
| Google Drive | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes |
|
||||
| Google Photos | No | No | No | No | No | No | No | No | No | No | No |
|
||||
|
Reference in New Issue
Block a user