From 0cfa89f31669fa67be723887702017d0b73903b4 Mon Sep 17 00:00:00 2001 From: edwardxml <56691903+edwardxml@users.noreply.github.com> Date: Fri, 30 Oct 2020 14:59:36 +0000 Subject: [PATCH] docs: ftp: put limitations in a single section The topic is mostly about so limitations so all of these are grouped together with a section hyperlink near the top of the page. Intention is to avoid potential duplication and make it more straightforward (there is a place and it is essentially just a list so wording doesn't need to be elegant) to add notes about limitations in future, harvested from rclone forum postings. Minor wording alterations that do not intend to change meaning --- docs/content/ftp.md | 98 ++++++++++++++++++++++----------------------- 1 file changed, 48 insertions(+), 50 deletions(-) diff --git a/docs/content/ftp.md b/docs/content/ftp.md index 1d98d5a8a..94827dba2 100644 --- a/docs/content/ftp.md +++ b/docs/content/ftp.md @@ -6,22 +6,24 @@ description: "Rclone docs for FTP backend" {{< icon "fa fa-file" >}} FTP ------------------------------ -FTP is the File Transfer Protocol. FTP support is provided using the +FTP is the File Transfer Protocol. Rclone FTP support is provided using the [github.com/jlaffaye/ftp](https://godoc.org/github.com/jlaffaye/ftp) package. +[Limitations of Rclone's FTP backend](#Limitations) + Paths are specified as `remote:path`. If the path does not begin with a `/` it is relative to the home directory of the user. An empty path `remote:` refers to the user's home directory. -Here is an example of making an FTP configuration. First run +To create an FTP configuration named `remote`, run rclone config -This will guide you through an interactive setup process. An FTP remote only -needs a host together with and a username and a password. With anonymous FTP -server, you will need to use `anonymous` as username and your email address as -the password. +Rclone config guides you through an interactive setup process. A minimal +rclone FTP remote definition only requires host, username and password. +For an anonymous FTP server, use `anonymous` as username and your email +address as password. ``` No remotes found - make a new one @@ -81,9 +83,7 @@ d) Delete this remote y/e/d> y ``` -This remote is called `remote` and can now be used like this - -See all directories in the home directory +To see all directories in the home directory of `remote` rclone lsd remote: @@ -100,45 +100,17 @@ excess files in the directory. rclone sync -i /home/local/directory remote:directory -### Modified time ### - -FTP does not support modified times. Any times you see on the server -will be time of upload. - -### Checksums ### - -FTP does not support any checksums. - -### Usage without a config file ### - -An example how to use the ftp remote without a config file: +### Example without a config file ### rclone lsf :ftp: --ftp-host=speedtest.tele2.net --ftp-user=anonymous --ftp-pass=`rclone obscure dummy` -#### Restricted filename characters - -In addition to the [default restricted characters set](/overview/#restricted-characters) -the following characters are also replaced: - -File names can also not end with the following characters. -These only get replaced if they are the last character in the name: - -| Character | Value | Replacement | -| --------- |:-----:|:-----------:| -| SP | 0x20 | ␠ | - -Note that not all FTP servers can have all characters in file names, for example: - -| FTP Server| Forbidden characters | -| --------- |:--------------------:| -| proftpd | `*` | -| pureftpd | `\ [ ]` | ### Implicit TLS ### -FTP supports implicit FTP over TLS servers (FTPS). This has to be enabled -in the config for the remote. The default FTPS port is `990` so the -port will likely have to be explicitly set in the config for the remote. +Rlone FTP supports implicit FTP over TLS servers (FTPS). This has to +be enabled in the FTP backend config for the remote, or with +`[--ftp-tls]{#ftp-tls}`. The default FTPS port is `990`, not `21` and +can be set with `[--ftp-port]{#ftp-port}`. {{< rem autogenerated options start" - DO NOT EDIT - instead edit fs.RegInfo in backend/ftp/ftp.go then run make backenddocs" >}} ### Standard Options @@ -257,15 +229,41 @@ See: the [encoding section in the overview](/overview/#encoding) for more info. ### Limitations ### -Note that FTP does have its own implementation of : `--dump headers`, -`--dump bodies`, `--dump auth` for debugging which isn't the same as -the HTTP based backends - it has less fine grained control. -Note that `--timeout` isn't supported (but `--contimeout` is). +Modified times are not supported. Times you see on the FTP server +through rclone are time of upload. -Note that `--bind` isn't supported. +Rclone's FTP backend does not support any checksums but can compare +file sizes. -FTP could support server-side move but doesn't yet. +The implementation of : `--dump headers`, +`--dump bodies`, `--dump auth` for debugging isn't the same as +for rclone HTTP based backends - it has less fine grained control. -Note that the ftp backend does not support the `ftp_proxy` environment -variable yet. +`--timeout` isn't supported (but `--contimeout` is). + +`--bind` isn't supported. + +Rclone's FTP backend could support server-side move but does not +at present. + +The `ftp_proxy` environment variable is not currently supported. + +#### Restricted filename characters + +In addition to the [default restricted characters set](/overview/#restricted-characters) +the following characters are also replaced: + +File names cannot end with the following characters. Repacement is +limited to the last character in a file name: + +| Character | Value | Replacement | +| --------- |:-----:|:-----------:| +| SP | 0x20 | ␠ | + +Not all FTP servers can have all characters in file names, for example: + +| FTP Server| Forbidden characters | +| --------- |:--------------------:| +| proftpd | `*` | +| pureftpd | `\ [ ]` |