Настройка rclone для windows

Rclone is a Go program and comes as a single binary file.

Quickstart

  • Download the relevant binary.
  • Extract the rclone executable, rclone.exe on Windows, from the archive.
  • Run rclone config to setup. See rclone config docs for more details.
  • Optionally configure automatic execution.

See below for some expanded Linux / macOS / Windows instructions.

See the usage docs for how to use rclone, or
run rclone -h.

Already installed rclone can be easily updated to the latest version
using the rclone selfupdate command.

See the release signing docs for how to verify
signatures on the release.

Script installation

To install rclone on Linux/macOS/BSD systems, run:

sudo -v ; curl https://rclone.org/install.sh | sudo bash

For beta installation, run:

sudo -v ; curl https://rclone.org/install.sh | sudo bash -s beta

Note that this script checks the version of rclone installed first and
won’t re-download if not needed.

Linux installation

Precompiled binary

Fetch and unpack

curl -O https://downloads.rclone.org/rclone-current-linux-amd64.zip
unzip rclone-current-linux-amd64.zip
cd rclone-*-linux-amd64

Copy binary file

sudo cp rclone /usr/bin/
sudo chown root:root /usr/bin/rclone
sudo chmod 755 /usr/bin/rclone

Install manpage

sudo mkdir -p /usr/local/share/man/man1
sudo cp rclone.1 /usr/local/share/man/man1/
sudo mandb

Run rclone config to setup. See rclone config docs for more details.

rclone config

macOS installation

Installation with brew

brew install rclone

NOTE: This version of rclone will not support mount any more (see
#5373). If mounting is wanted
on macOS, either install a precompiled binary or enable the relevant option
when installing from source.

Note that this is a third party installer not controlled by the rclone
developers so it may be out of date. Its current version is as below.

Installation with MacPorts

On macOS, rclone can also be installed via MacPorts:

sudo port install rclone

Note that this is a third party installer not controlled by the rclone
developers so it may be out of date. Its current version is as below.

More information here.

Precompiled binary, using curl

To avoid problems with macOS gatekeeper enforcing the binary to be signed and
notarized it is enough to download with curl.

Download the latest version of rclone.

cd && curl -O https://downloads.rclone.org/rclone-current-osx-amd64.zip

Unzip the download and cd to the extracted folder.

unzip -a rclone-current-osx-amd64.zip && cd rclone-*-osx-amd64

Move rclone to your $PATH. You will be prompted for your password.

sudo mkdir -p /usr/local/bin
sudo mv rclone /usr/local/bin/

(the mkdir command is safe to run, even if the directory already exists).

Remove the leftover files.

cd .. && rm -rf rclone-*-osx-amd64 rclone-current-osx-amd64.zip

Run rclone config to setup. See rclone config docs for more details.

rclone config

Precompiled binary, using a web browser

When downloading a binary with a web browser, the browser will set the macOS
gatekeeper quarantine attribute. Starting from Catalina, when attempting to run
rclone, a pop-up will appear saying:

"rclone" cannot be opened because the developer cannot be verified.
macOS cannot verify that this app is free from malware.

The simplest fix is to run

xattr -d com.apple.quarantine rclone

Windows installation

Precompiled binary

Fetch the correct binary for your processor type by clicking on these
links. If not sure, use the first link.

  • Intel/AMD — 64 Bit
  • Intel/AMD — 32 Bit
  • ARM — 64 Bit

Open this file in the Explorer and extract rclone.exe. Rclone is a
portable executable so you can place it wherever is convenient.

Open a CMD window (or powershell) and run the binary. Note that rclone
does not launch a GUI by default, it runs in the CMD Window.

  • Run rclone.exe config to setup. See rclone config docs for more details.
  • Optionally configure automatic execution.

If you are planning to use the rclone mount
feature then you will need to install the third party utility
WinFsp also.

Windows package manager (Winget)

Winget comes pre-installed with the latest versions of Windows. If not, update the App Installer package from the Microsoft store.

To install rclone

winget install Rclone.Rclone

To uninstall rclone

winget uninstall Rclone.Rclone --force

Chocolatey package manager

Make sure you have Choco installed

choco search rclone
choco install rclone

This will install rclone on your Windows machine. If you are planning
to use rclone mount then

choco install winfsp

will install that too.

Note that this is a third party installer not controlled by the rclone
developers so it may be out of date. Its current version is as below.

Scoop package manager

Make sure you have Scoop installed

scoop install rclone

Note that this is a third party installer not controlled by the rclone
developers so it may be out of date. Its current version is as below.

Package manager installation

Many Linux, Windows, macOS and other OS distributions package and
distribute rclone.

The distributed versions of rclone are often quite out of date and for
this reason we recommend one of the other installation methods if
possible.

You can get an idea of how up to date or not your OS distribution’s
package is here.

Packaging status

Docker installation

The rclone developers maintain a docker image for rclone.

These images are built as part of the release process based on a
minimal Alpine Linux.

The :latest tag will always point to the latest stable release. You
can use the :beta tag to get the latest build from master. You can
also use version tags, e.g. :1.49.1, :1.49 or :1.

$ docker pull rclone/rclone:latest
latest: Pulling from rclone/rclone
Digest: sha256:0e0ced72671989bb837fea8e88578b3fc48371aa45d209663683e24cfdaa0e11
...
$ docker run --rm rclone/rclone:latest version
rclone v1.49.1
- os/arch: linux/amd64
- go version: go1.12.9

There are a few command line options to consider when starting an rclone Docker container
from the rclone image.

  • You need to mount the host rclone config dir at /config/rclone into the Docker
    container. Due to the fact that rclone updates tokens inside its config file, and that
    the update process involves a file rename, you need to mount the whole host rclone
    config dir, not just the single host rclone config file.

  • You need to mount a host data dir at /data into the Docker container.

  • By default, the rclone binary inside a Docker container runs with UID=0 (root).
    As a result, all files created in a run will have UID=0. If your config and data files
    reside on the host with a non-root UID:GID, you need to pass these on the container
    start command line.

  • If you want to access the RC interface (either via the API or the Web UI), it is
    required to set the --rc-addr to :5572 in order to connect to it from outside
    the container. An explanation about why this is necessary is present here.

    • NOTE: Users running this container with the docker network set to host should
      probably set it to listen to localhost only, with 127.0.0.1:5572 as the value for
      --rc-addr
  • It is possible to use rclone mount inside a userspace Docker container, and expose
    the resulting fuse mount to the host. The exact docker run options to do that might
    vary slightly between hosts. See, e.g. the discussion in this
    thread.

    You also need to mount the host /etc/passwd and /etc/group for fuse to work inside
    the container.

Here are some commands tested on an Ubuntu 18.04.3 host:

# config on host at ~/.config/rclone/rclone.conf
# data on host at ~/data

# add a remote interactively
docker run --rm -it \
    --volume ~/.config/rclone:/config/rclone \
    --user $(id -u):$(id -g) \
    rclone/rclone \
    config

# make sure the config is ok by listing the remotes
docker run --rm \
    --volume ~/.config/rclone:/config/rclone \
    --user $(id -u):$(id -g) \
    rclone/rclone \
    listremotes

# perform mount inside Docker container, expose result to host
mkdir -p ~/data/mount
docker run --rm \
    --volume ~/.config/rclone:/config/rclone \
    --volume ~/data:/data:shared \
    --user $(id -u):$(id -g) \
    --volume /etc/passwd:/etc/passwd:ro --volume /etc/group:/etc/group:ro \
    --device /dev/fuse --cap-add SYS_ADMIN --security-opt apparmor:unconfined \
    rclone/rclone \
    mount dropbox:Photos /data/mount &
ls ~/data/mount
kill %1

Snap installation

Make sure you have Snapd installed

$ sudo snap install rclone

Due to the strict confinement of Snap, rclone snap cannot access real /home/$USER/.config/rclone directory, default config path is as below.

  • Default config directory:
    • /home/$USER/snap/rclone/current/.config/rclone

Note: Due to the strict confinement of Snap, rclone mount feature is not supported.

If mounting is wanted, either install a precompiled binary or enable the relevant option when installing from source.

Note that this is controlled by community maintainer not the rclone developers so it may be out of date. Its current version is as below.

Source installation

Make sure you have git and Go installed.
Go version 1.18 or newer is required, the latest release is recommended.
You can get it from your package manager, or download it from
golang.org/dl. Then you can run the following:

git clone https://github.com/rclone/rclone.git
cd rclone
go build

This will check out the rclone source in subfolder rclone, which you can later
modify and send pull requests with. Then it will build the rclone executable
in the same folder. As an initial check you can now run ./rclone version
(.\rclone version on Windows).

Note that on macOS and Windows the mount
command will not be available unless you specify an additional build tag cmount.

go build -tags cmount

This assumes you have a GCC compatible C compiler (GCC or Clang) in your PATH,
as it uses cgo. But on Windows, the
cgofuse library that the cmount
implementation is based on, also supports building
without cgo, i.e. by setting
environment variable CGO_ENABLED to value 0 (static linking). This is how the
official Windows release of rclone is being built, starting with version 1.59.
It is still possible to build with cgo on Windows as well, by using the MinGW
port of GCC, e.g. by installing it in a MSYS2
distribution (make sure you install it in the classic mingw64 subsystem, the
ucrt64 version is not compatible).

Additionally, to build with mount on Windows, you must install the third party
utility WinFsp, with the «Developer» feature selected.
If building with cgo, you must also set environment variable CPATH pointing to
the fuse include directory within the WinFsp installation
(normally C:\Program Files (x86)\WinFsp\inc\fuse).

You may add arguments -ldflags -s to omit symbol table and debug information,
making the executable file smaller, and -trimpath to remove references to
local file system paths. The official rclone releases are built with both of these.

go build -trimpath -ldflags -s -tags cmount

If you want to customize the version string, as reported by
the rclone version command, you can set one of the variables fs.Version,
fs.VersionTag (to keep default suffix but customize the number),
or fs.VersionSuffix (to keep default number but customize the suffix).
This can be done from the build command, by adding to the -ldflags
argument value as shown below.

go build -trimpath -ldflags "-s -X github.com/rclone/rclone/fs.Version=v9.9.9-test" -tags cmount

On Windows, the official executables also have the version information,
as well as a file icon, embedded as binary resources. To get that with your
own build you need to run the following command before the build command.
It generates a Windows resource system object file, with extension .syso, e.g.
resource_windows_amd64.syso, that will be automatically picked up by
future build commands.

go run bin/resource_windows.go

The above command will generate a resource file containing version information
based on the fs.Version variable in source at the time you run the command,
which means if the value of this variable changes you need to re-run the
command for it to be reflected in the version information. Also, if you
override this version variable in the build command as described above, you
need to do that also when generating the resource file, or else it will still
use the value from the source.

go run bin/resource_windows.go -version v9.9.9-test

Instead of executing the go build command directly, you can run it via the
Makefile. The default target changes the version suffix from «-DEV» to «-beta»
followed by additional commit details, embeds version information binary resources
on Windows, and copies the resulting rclone executable into your GOPATH bin folder
($(go env GOPATH)/bin, which corresponds to ~/go/bin/rclone by default).

make

To include mount command on macOS and Windows with Makefile build:

make GOTAGS=cmount

There are other make targets that can be used for more advanced builds,
such as cross-compiling for all supported os/architectures, and packaging
results into release artifacts.
See Makefile
and cross-compile.go
for details.

Another alternative method for source installation is to download the source,
build and install rclone — all in one operation, as a regular Go package.
The source will be stored it in the Go module cache, and the resulting
executable will be in your GOPATH bin folder ($(go env GOPATH)/bin,
which corresponds to ~/go/bin/rclone by default).

go install github.com/rclone/rclone@latest

In some situations, rclone executable size might be too big for deployment
in very restricted environments when all backends with large SDKs are included.
To limit binary size unused backends can be commented out in backends/all/all.go
and unused commands in cmd/all/all.go before building with go build or make

Ansible installation

This can be done with Stefan Weichinger’s ansible
role.

Instructions

  1. git clone https://github.com/stefangweichinger/ansible-rclone.git into your local roles-directory
  2. add the role to the hosts you want rclone installed to:
    - hosts: rclone-hosts
      roles:
          - rclone

Portable installation

As mentioned above, rclone is single
executable (rclone, or rclone.exe on Windows) that you can download as a
zip archive and extract into a location of your choosing. When executing different
commands, it may create files in different locations, such as a configuration file
and various temporary files. By default the locations for these are according to
your operating system, e.g. configuration file in your user profile directory and
temporary files in the standard temporary directory, but you can customize all of
them, e.g. to make a completely self-contained, portable installation.

Run the config paths command to see
the locations that rclone will use.

To override them set the corresponding options (as command-line arguments, or as
environment variables):

  • —config
  • —cache-dir
  • —temp-dir

Autostart

After installing and configuring rclone, as described above, you are ready to use rclone
as an interactive command line utility. If your goal is to perform periodic operations,
such as a regular sync, you will probably want
to configure your rclone command in your operating system’s scheduler. If you need to
expose service-like features, such as remote control,
GUI, serve
or mount, you will often want an rclone
command always running in the background, and configuring it to run in a service infrastructure
may be a better option. Below are some alternatives on how to achieve this on
different operating systems.

NOTE: Before setting up autorun it is highly recommended that you have tested your command
manually from a Command Prompt first.

Autostart on Windows

The most relevant alternatives for autostart on Windows are:

  • Run at user log on using the Startup folder
  • Run at user log on, at system startup or at schedule using Task Scheduler
  • Run at system startup using Windows service

Running in background

Rclone is a console application, so if not starting from an existing Command Prompt,
e.g. when starting rclone.exe from a shortcut, it will open a Command Prompt window.
When configuring rclone to run from task scheduler and windows service you are able
to set it to run hidden in background. From rclone version 1.54 you can also make it
run hidden from anywhere by adding option --no-console (it may still flash briefly
when the program starts). Since rclone normally writes information and any error
messages to the console, you must redirect this to a file to be able to see it.
Rclone has a built-in option --log-file for that.

Example command to run a sync in background:

c:\rclone\rclone.exe sync c:\files remote:/files --no-console --log-file c:\rclone\logs\sync_files.txt

User account

As mentioned in the mount documentation,
mounted drives created as Administrator are not visible to other accounts, not even the
account that was elevated as Administrator. By running the mount command as the
built-in SYSTEM user account, it will create drives accessible for everyone on
the system. Both scheduled task and Windows service can be used to achieve this.

NOTE: Remember that when rclone runs as the SYSTEM user, the user profile
that it sees will not be yours. This means that if you normally run rclone with
configuration file in the default location, to be able to use the same configuration
when running as the system user you must explicitly tell rclone where to find
it with the --config option,
or else it will look in the system users profile path (C:\Windows\System32\config\systemprofile).
To test your command manually from a Command Prompt, you can run it with
the PsExec
utility from Microsoft’s Sysinternals suite, which takes option -s to
execute commands as the SYSTEM user.

Start from Startup folder

To quickly execute an rclone command you can simply create a standard
Windows Explorer shortcut for the complete rclone command you want to run. If you
store this shortcut in the special «Startup» start-menu folder, Windows will
automatically run it at login. To open this folder in Windows Explorer,
enter path %APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup,
or C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp if you want
the command to start for every user that logs in.

This is the easiest approach to autostarting of rclone, but it offers no
functionality to set it to run as different user, or to set conditions or
actions on certain events. Setting up a scheduled task as described below
will often give you better results.

Start from Task Scheduler

Task Scheduler is an administrative tool built into Windows, and it can be used to
configure rclone to be started automatically in a highly configurable way, e.g.
periodically on a schedule, on user log on, or at system startup. It can run
be configured to run as the current user, or for a mount command that needs to
be available to all users it can run as the SYSTEM user.
For technical information, see
https://docs.microsoft.com/windows/win32/taskschd/task-scheduler-start-page.

Run as service

For running rclone at system startup, you can create a Windows service that executes
your rclone command, as an alternative to scheduled task configured to run at startup.

Mount command built-in service integration

For mount commands, rclone has a built-in Windows service integration via the third-party
WinFsp library it uses. Registering as a regular Windows service easy, as you just have to
execute the built-in PowerShell command New-Service (requires administrative privileges).

Example of a PowerShell command that creates a Windows service for mounting
some remote:/files as drive letter X:, for all users (service will be running as the
local system account):

New-Service -Name Rclone -BinaryPathName 'c:\rclone\rclone.exe mount remote:/files X: --config c:\rclone\config\rclone.conf --log-file c:\rclone\logs\mount.txt'

The WinFsp service infrastructure
supports incorporating services for file system implementations, such as rclone,
into its own launcher service, as kind of «child services». This has the additional
advantage that it also implements a network provider that integrates into
Windows standard methods for managing network drives. This is currently not
officially supported by Rclone, but with WinFsp version 2019.3 B2 / v1.5B2 or later
it should be possible through path rewriting as described here.

Third-party service integration

To Windows service running any rclone command, the excellent third-party utility
NSSM, the «Non-Sucking Service Manager», can be used.
It includes some advanced features such as adjusting process priority, defining
process environment variables, redirect to file anything written to stdout, and
customized response to different exit codes, with a GUI to configure everything from
(although it can also be used from command line ).

There are also several other alternatives. To mention one more,
WinSW, «Windows Service Wrapper», is worth checking out.
It requires .NET Framework, but it is preinstalled on newer versions of Windows, and it
also provides alternative standalone distributions which includes necessary runtime (.NET 5).
WinSW is a command-line only utility, where you have to manually create an XML file with
service configuration. This may be a drawback for some, but it can also be an advantage
as it is easy to back up and reuse the configuration
settings, without having go through manual steps in a GUI. One thing to note is that
by default it does not restart the service on error, one have to explicit enable this
in the configuration file (via the «onfailure» parameter).

Autostart on Linux

Start as a service

To always run rclone in background, relevant for mount commands etc,
you can use systemd to set up rclone as a system or user service. Running as a
system service ensures that it is run at startup even if the user it is running as
has no active session. Running rclone as a user service ensures that it only
starts after the configured user has logged into the system.

Run periodically from cron

To run a periodic command, such as a copy/sync, you can set up a cron job.

Как установить и использовать rclone на примере OC Windows

Для начала необходимо скачать подходящий дистрибутив программы на сайте разработчика:

https://rclone.org/downloads/

После скачивания, необходимо распаковать архив с программой в удобном месте, а затем открыть папку с ним через cmd.exe:

cd C:\Users\user1\Desktop\rclone-v1.69.1-windows-amd64

Для того, чтобы не открывать папку с rclone каждый раз, а обращаться к нему из любого места, нужно поместить rclone.exe в папку C:\Windows\system32.

Можно вывести справку о командах программы, написав rclone.exe и нажав Enter.

Для настройки rclone для работы с облачным хранилищем, необходимо произвести конфигурацию подключения с помощью команды rclone config. Создадим новую конфигурацию для выгрузки данных на Google Drive. После ввода rclone config программа уведомит нас о том, что на данный момент нет настроенных подключений и спросит, хотим ли мы создать новое подключение, установить пароль на конфигурацию или выйти из редактирования конфигурационного файла. Пишем n и жмём Enter:

No remotes found, make a new one?
n) New remote
s) Set configuration password
q) Quit config
n/s/q> n

Rclone попросит указать имя для нового подключения, которое в дальнейшем будет использоваться для обращения к нему:

Enter name for new remote.
name> gdrive

Следующим шагом будет выбор типа хранилища для настройки конфигурации. В нашем случае выбираем 20 и жмём Enter:

Option Storage.
Type of storage to configure.
Choose a number from below, or type in your own value.
1 / 1Fichier
\ (fichier)
2 / Akamai NetStorage
\ (netstorage)
...
20 / Google Drive
\ (drive)
...
Storage> 20

На следующие два вопроса отвечаем просто нажатием Enter, оставляя значение по умолчанию:

Option client_id.
Google Application Client Id
Setting your own is recommended.
See https://rclone.org/drive/#making-your-own-client-id for how to create your own.
If you leave this blank, it will use an internal key which is low performance.
Enter a value. Press Enter to leave empty.
client_id>

Option client_secret.
OAuth Client Secret.
Leave blank normally.
Enter a value. Press Enter to leave empty.
client_secret>

Следующим шагом указываем необходимый под наши нужды доступ, который будет предоставлен через подключение в rclone:

Option scope.
Comma separated list of scopes that rclone should use when requesting access from drive.
Choose a number from below, or type in your own value.
Press Enter to leave empty.
1 / Full access all files, excluding Application Data Folder.
\ (drive)
2 / Read-only access to file metadata and file contents.
\ (drive.readonly)
/ Access to files created by rclone only.
3 | These are visible in the drive website.
| File authorization is revoked when the user deauthorizes the app.
\ (drive.file)
/ Allows read and write access to the Application Data folder.
4 | This is not visible in the drive website.
\ (drive.appfolder)
/ Allows read-only access to file metadata but
5 | does not allow any access to read or download file content.
\ (drive.metadata.readonly)
scope> 1

На следующий вопрос отвечаем также нажатием Enter, после чего программа предложит редактировать расширенную конфигурацию. Ответив на данное предложение n и нажав Enter, rclone предложит использовать браузер для автоматической аутентификации с подключением. Выбрав y и нажав Enter, откроется страница аутентификации в браузере. Нужно будет выбрать соответствующий Google аккаунт и разрешить rclone запрашиваемый доступ, после чего вернуться к командной строке:

Use web browser to automatically authenticate rclone with remote?
* Say Y if the machine running rclone has a web browser you can use
* Say N if running rclone on a (remote) machine without web browser access
If not sure try Y. If Y failed, try N.

y) Yes (default)
n) No
y/n> y

После предоставления доступа rclone предложит настроить данное подключение в качестве общего диска. Выбираем нужную вам опцию и жмём Enter:

Configure this as a Shared Drive (Team Drive)?

y) Yes
n) No (default)
y/n> n

В качестве последнего шага настройки rclone предложит проверить параметры создаваемого подключения и изменить или удалить их, в случае ошибки:

Configuration complete.
Options:
- type: drive
- scope: drive
- token: {"access_token":"***","token_type":"Bearer","refresh_token":"***","expiry":"2025-04-07T12:09:57.5633511+05:00"}
- team_drive:
Keep this "gdrive" remote?
y) Yes this is OK (default)
e) Edit this remote
d) Delete this remote
y/e/d> y

После сохранения изменений, программа выведет текущий список доступных конфигураций подключения, где мы увидим только что созданный нами конфиг для Google Drive. Нажимаем q и Enter, чтобы выйти из режима редактирования конфигурации:

Current remotes:

Name Type
==== ====
gdrive drive

e) Edit existing remote
n) New remote
d) Delete remote
r) Rename remote
c) Copy remote
s) Set configuration password
q) Quit config
e/n/d/r/c/s/q> q

Настройка окончена, теперь мы можем работать с нашим облачным хранилищем, обращаясь к нему через заданное для подключения имя.

Небольшой список команд для работы с облачным диском:

  • rclone mkdir gdrive:[folder] — создание папки в облаке
  • rclone copy [local-src] gdrive:[folder] — копирование в облако
  • rclone copy gdrive:[folder] [local-src] — копирование в локальную папку
  • rclone sync [local-src] gdrive:[folder] — синхронизация с облаком приоритет на локальной папке
  • rclone sync gdrive:[folder] [local-src] — синхронизация с облаком приоритет на облако
  • rclone lsd gdrive: — показать созданные [folder]
  • rclone ls gdrive:[folder] — показать файлы в [folder]

Пример:

  • rclone mkdir gdrive:backups – создаст на диске папку backups
  • rclone sync C:\Folder\psql_backup.zip gdrive:backups – синхронизирует с облаком архив psql_bakcup.zip с приоритетом на локальной папке
  • rclone ls gdrive:backups – покажет файлы в папке backups

Теперь добавим подключение к S3 хранилищу. Вводим команду rclone config и выбираем n, чтобы добавить новое подключение, после чего нажимаем Enter и задаём имя:

>rclone config
Current remotes:

Name Type
==== ====
gdrive drive

e) Edit existing remote
n) New remote
d) Delete remote
r) Rename remote
c) Copy remote
s) Set configuration password
q) Quit config
e/n/d/r/c/s/q> n

Enter name for new remote.
name> s3storage

В типе хранилища выбираем 4 и жмём Enter: 

Option Storage.
Type of storage to configure.
Choose a number from below, or type in your own value.
1 / 1Fichier
\ (fichier)
...
4 / Amazon S3 Compliant Storage Providers including AWS, Alibaba, ArvanCloud, Ceph, ChinaMobile, Cloudflare, DigitalOcean, Dreamhost, GCS, HuaweiOBS, IBMCOS, IDrive, IONOS, LyveCloud, Leviia, Liara, Linode, Magalu, Minio, Netease, Outscale, Petabox, RackCorp, Rclone, Scaleway, SeaweedFS, Selectel, StackPath, Storj, Synology, TencentCOS, Wasabi, Qiniu and others
\ (s3)
...
61 / seafile
\ (seafile)
Storage> 4

Следующим шагом необходимо выбрать провайдера хранилища. В случае, если вашего провайдера нет в списке, можно выбрать последнюю опцию — 34 / Any other S3 compatible provider.

Далее выбираем цифру 1 в следующем вопросе, чтобы произвести ручную настройку данных подключения:

Option env_auth.
Get AWS credentials from runtime (environment variables or EC2/ECS meta data if no env vars).
Only applies if access_key_id and secret_access_key is blank.
Choose a number from below, or type in your own boolean value (true or false).
Press Enter for the default (false).
1 / Enter AWS credentials in the next step.
\ (false)
2 / Get AWS credentials from the environment (env vars or IAM).
\ (true)
env_auth> 1

Вводим наш ключ доступа для S3:

Option access_key_id.
AWS Access Key ID.
Leave blank for anonymous access or runtime credentials.
Enter a value. Press Enter to leave empty.
access_key_id> <S3 Access Key>

И секретный ключ доступа:

Option secret_access_key.
AWS Secret Access Key (password).
Leave blank for anonymous access or runtime credentials.
Enter a value. Press Enter to leave empty.
secret_access_key> <S3 Secret Access Key>

На следующем шаге программа просит указать регион для подключения. В нашем случае мы указываем eu-01, но если вы не уверены, можете оставить поле пустым и rclone будет использовать v4 Signatures для подключения к хранилищу:

Option region.
Region to connect to.
Leave blank if you are using an S3 clone and you don't have a region.
Choose a number from below, or type in your own value.
Press Enter to leave empty.
/ Use this if unsure.
1 | Will use v4 signatures and an empty region.
\ ()
/ Use this only if v4 signatures don't work.
2 | E.g. pre Jewel/v10 CEPH.
\ (other-v2-signature)
region> eu-01

Далее rclone попросит указать URL вашего эндпоинта для доступа по протоколу S3 API:

Option endpoint.
Endpoint for S3 API.
Required when using an S3 clone.
Enter a value. Press Enter to leave empty.
endpoint> <S3 API URL>

На следующем шаге rclone предложит задать значение location_constraint – нажимаем Enter, чтобы оставить поле пустым. 

Последним шагом конфигурации подключения rclone предложит выбрать список доступа по умолчанию, который будет назначаться создаваемым бакетам и копирующимся объектам в S3 хранилище. Мы можем оставить поле пустым, в таком случае rclone выберет по умолчанию ACL private.

Option acl.
Canned ACL used when creating buckets and storing or copying objects.
This ACL is used for creating objects and if bucket_acl isn't set, for creating buckets too.
For more info visit https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#canned-acl
Note that this ACL is applied when server-side copying objects as S3
doesn't copy the ACL from the source but rather writes a fresh one.
If the acl is an empty string then no X-Amz-Acl: header is added and
the default (private) will be used.
Choose a number from below, or type in your own value.
Press Enter to leave empty.
/ Owner gets FULL_CONTROL.
1 | No one else has access rights (default).
\ (private)
/ Owner gets FULL_CONTROL.
2 | The AllUsers group gets READ access.
\ (public-read)
/ Owner gets FULL_CONTROL.
3 | The AllUsers group gets READ and WRITE access.
| Granting this on a bucket is generally not recommended.
\ (public-read-write)
/ Owner gets FULL_CONTROL.
4 | The AuthenticatedUsers group gets READ access.
\ (authenticated-read)
/ Object owner gets FULL_CONTROL.
5 | Bucket owner gets READ access.
| If you specify this canned ACL when creating a bucket, Amazon S3 ignores it.
\ (bucket-owner-read)
/ Both the object owner and the bucket owner get FULL_CONTROL over the object.
6 | If you specify this canned ACL when creating a bucket, Amazon S3 ignores it.
\ (bucket-owner-full-control)
acl>

Далее отказываемся от предложения отредактировать расширенную конфигурацию, проверяем настроенные параметры и сохраняем наше подключение:

Edit advanced config?
y) Yes
n) No (default)
y/n> n

Configuration complete.
Options:
- type: s3
- provider: Other
- access_key_id: <S3 Access Key>
- secret_access_key: <S3 Secret Key>
- region: eu-01
- endpoint: <S3 API URL>
Keep this "s3storage" remote?
y) Yes this is OK (default)
e) Edit this remote
d) Delete this remote
y/e/d> y
 

Видим, что нашего подключение было успешно добавлено в список и выходим из режима редактирования конфигурации:

Current remotes:
Name Type
==== ====
gdrive drive
s3storage s3

e) Edit existing remote
n) New remote
d) Delete remote
r) Rename remote
c) Copy remote
s) Set configuration password
q) Quit config
e/n/d/r/c/s/q> q

С помощью команды rclone lsd мы можем посмотреть список бакетов в нашем S3 хранилище:

>rclone lsd s3storage:
-1 2025-04-07 14:08:32 -1 2d1734f2-e78a77eb-e3d2-494b-995d-5fe9ba21a456

Все команды для работы с файлами в случае подключения к S3 хранилищу остаются такими же, что и при работе с облачным диском.

Резервное копирование на примере 1С

Рассмотрим возможность применения rclone в автоматизации выгрузки резервных копий файловой БД 1С на Windows. Для этой задачи нам понадобится batch скрипт, который будет делать копию файла базы данных, архивировать его и помечать датой, после чего отправлять в облачное хранилище.

Сам скрипт выглядит следующим образом:

@echo off
::Устанавливаем переменные даты и пути до папки с БД
set datetime=%DATE%_%TIME:~-11,2%-%TIME:~-8,2%
set datetime=%datetime:/=-%
set pathDB="C:\Users\user1\Documents\InfoBase"

::Запаковываем БД в zip архив и отмечаем его текущей датой
tar -acvf "%pathDB%\FDB_%datetime%.zip" "%pathDB%\1Cv8.1CD"

::Синхронизируем резервную копию с облачным хранилищем
cmd /c rclone sync "%pathDB%\FDB_%datetime%.zip" storage:test1
::Удаляем архив после выгрузки в облако
del "%pathDB%\FDB_%datetime%.zip"

pathDB – путь до файловых баз в 1С

Для баз данных из СУБД MS SQL, вы можете создавать резервные копии в директорию и выгружать с помощью этого скрипта.

Для автоматического запуска скрипта на сервере воспользуемся планировщиком задач Windows. Открываем его и в правом меню «Действия» выбираем «Создать задачу»:

В открывшемся окне задаём имя задаче:

Во вкладке «Триггеры» выбираем «Создать» и настраиваем его следующим образом, указывая необходимое вам ежедневное время запуска. Далее нажимаем ОК, чтобы сохранить изменения:

Во вкладке «Действия» нажимаем «Создать» и в открывшемся окне указываем путь до нашего файла со скриптом, после чего также нажимаем ОК:

На этом наша настройка закончена, нажимаем ОК, чтобы сохранить задачу в планировщике и ждём запуска скрипта в установленное время. После выполнения задачи, можем проверить, что архив был сохранён в облачном хранилище с текущей датой и указанным временем:

Резервное копирование на примере PostgreSQL

А теперь рассмотрим возможность автоматизации резервного копирования на Linux для СУБД PostgreSQL. В этот раз мы будем использовать bash-скрипт для автоматизации действий и планировщик crontab для ежедневного запуска скрипта на сервере. Скрипт будет выглядеть следующим образом:

#!/bin/sh
PGPASSWORD=<Пароль_пользователя_БД>
export PGPASSWORD
pathB=/mnt/backup
dbUser=<Имя_пользователя_БД>
database=<Имя_БД>
pg_dump -U $dbUser $database | gzip > $pathB/pgsql_$(date "+%Y-%m-%d").sql.gz
rclone sync $pathB/pgsql_$(date "+%Y-%m-%d").sql.gz storage:test1 --config .config/rclone/rclone.conf
rm -f $pathB/pgsql_$(date "+%Y-%m-%d").sql.gz

Скрипт создаёт резервную копию базы данных с помощью утилиты pg_dump, запаковывает её в архив с указанием даты, отправляет архив в облако и удаляет его из локальной папки. Стоит отметить, что для корректной работы данного скрипта для учётной записи пользователя БД в конфигурационном файле PostgreSQL pg_hba.conf должен быть установлен локальный метод аутентификации md5:

Теперь остаётся только добавить задачу в планировщик crontab с помощью команды crontab –e и добавить в файл строку вида:

<минуты> <час> <день месяца> <номер месяца> <день недели> bash <путь до скрипта>

В нашем случае для ежедневного запуска скрипта в 7:30 утра использована данная строка:

30 7 * * * bash /home/user1/psql_backup.sh

После этого можно закрыть файл с сохранением изменений и проверить сохранение резервной копии в облачном хранилище, когда задача выполнится:

Наш телеграм-канал

Пишем про облака, кейсы, вебинары

Подписаться

Что такое rclone

Rclone — это инструмент командной строки с открытым кодом, предназначенный для работы с объектным хранилищем. У него активное сообщество пользователей и разработчиков, что означает поддержку и постоянное обновление. На официальном сайте rclone представлена подробная документация, в которой описаны возможности использования каждой команды и опции инструмента.

Инструмент поддерживает большое количество облачных провайдеров. Вы можете легко перемещать данные между различными хранилищами без необходимости изучать различные API и инструменты для каждого провайдера.

Утилита предлагает обширный набор функций для работы с объектным хранилищем. Взаимодействие через командную строку упрощает интеграцию скриптов для автоматизации задач резервного копирования, синхронизации и управления файлами. Также при передаче данных инструмент использует многопоточность, чтобы обеспечить высокую скорость загрузки и выгрузки объектов. Дополнительно rclone поддерживает шифрование данных при передаче и хранении.

В целом, rclone — мощный и гибкий инструмент для работы с объектным хранилищем.  В нем объединяются простота использования, безопасность, высокая производительность и широкий набор функций для решения разнообразных задач.

Давайте посмотрим, как использовать rclone для монтирования контейнера объектного хранилища.

Дисклеймер
Мы написали этот текст в июне 2024, но инструменты и технологии могут меняться. На такой случай у нас есть актуальная документация с инструкцией по установке и работе rclone.

Создаем необходимые компоненты

Для работы нам понадобятся:

  • контейнер в объектном хранилище,
  • сервисный пользователь,
  • S3-ключи для авторизации,
  • хост с ОС Windows.

Теперь поочередно подготовим все необходимые элементы.

Создаем контейнер

Авторизуемся в панели управления my.selectel.ru и переходим в раздел Объектное хранилище. Затем создаем контейнер по кнопке:

Указываем параметры контейнера.

  • Имя: название латинскими буквами с нижним регистром.
  • Тип: Публичный.
  • Класс хранения: Стандартное хранение.
  • Virtual-Hosted: отмечаем галочку в чекбоксе.

И кликаем по кнопке Создать контейнер.

Создаем сервисного пользователя

Сервисный пользователь — это пользователь с учетной записью для программного доступа к продукту через API и другие инструменты автоматизации.

Чтобы его создать, переходим в раздел Управление доступом.

В подразделе Управление пользователями переходим во вкладку Сервисные пользователи и нажимаем на кнопку Добавить пользователя:

В параметрах при добавлении пользователя указываем роль Администратор объектного хранилища и проект облачной платформы, в котором находится наш контейнер. И затем нажимаем на кнопку Добавить пользователя.

Более подробную информацию о ролях сервисных пользователей вы можете узнать в документации — Типы и роли пользователей.

Выдаем S3-ключи сервисному пользователю

Кликаем по имени пользователя, в нашем случае user, и переходим в его карточку.

Для выдачи S3-ключа нажимаем кнопку Добавить ключ в разделе S3 ключи.

Указываем наименование ключа и проект, к которому он будет привязан. Для создания нажимаем кнопку Сгенерировать.

В открывшемся окне вы увидите значения:

  • Access key — Access Key ID, идентификатор ключа;
  • Secret key — Secret Access Key, секретный ключ.

Обязательно сохраните значения созданного ключа, потому что после закрытия окна вы не сможете больше увидеть значение Secret key. В панели управления будет отображаться только наименование ключа, проект, которому он принадлежит, и значение Access key.

Работаем с утилитой rclone

Устанавливаем инструмент

Для установки инструмента переходим на сайт разработчика и скачиваем архив, совместимый с ОС Windows. После окончания загрузки распаковываем его в рабочую папку. 

Рекомендуем выбрать для инструмента расположение, отличное от папки Загрузки, потому что вся дальнейшая работа с rclone будет происходить именно в разархивированной папке.

Запускаем командную строку (cmd) от имени администратора. Проверяем используемого пользователя командой whoami:

Переходим в папку с инструментом с помощью команды cd:

    cd <путь_до_папки>

Путь до папки можно скопировать в адресной строке проводника.

Настраиваем rclone

Запускаем конфигурирование инструмента следующей командой:

    rclone.exe config

При первом запуске программы вам предложат создать конфигурационный файл. Вводим n для выбора New remote — создания новой конфигурации, и указываем наименование.

Выбираем тип хранилища:

    4 / Amazon S3 Compliant Storage Providers including AWS, Alibaba, ArvanCloud, Ceph, ChinaMobile, Cloudflare, DigitalOcean, Dreamhost, GCS, HuaweiOBS, IBMCOS, IDrive, IONOS, LyveCloud, Leviia, Liara, Linode, Minio, Netease, Petabox, RackCorp, rclone, Scaleway, SeaweedFS, StackPath, Storj, Synology, TencentCOS, Wasabi, Qiniu and others 

 Вводим цифру, соответствующую номеру пункта (в нашем примере это 4):

    Storage> 4

Выбираем провайдера:

     1 / Amazon Web Services (AWS) S3                                                     
    \ (AWS) 

Вводим цифру, соответствующую номеру пункта (в нашем примере это 1):

    provider> 1

Выбираем ручной способ ввода данных аутентификации:

    1 / Enter AWS credentials in the next step.

   \ (false)

 Вводим цифру, соответствующую номеру пункта (в нашем примере это 1):

    env_auth> 1

Вводим идентификатор ключа S3 — Access Key ID, который мы получали ранее.

    access_key_id> <access_key>

Вводим секретный ключ S3 — Secret Access Key, который мы получали ранее.

    secret_access_key> <secret_key>

Вводим регион, в котором находится объектное хранилище.

    region> ru-1

Вводим URL-адрес, по которому будет происходить обращение к хранилищу.

    endpoint> s3.ru-1.storage.selcloud.ru

Остальные настройки можно оставить по умолчанию — нажимаем Enter, чтобы их пропустить.

В конце мы получаем вывод внесенных нами настроек.

    Configuration complete.
Options:
- type: s3
- provider: AWS
- access_key_id: <access_key>
- secret_access_key:  
- region: ru-1
- endpoint: s3.ru-1.storage.selcloud.ru
- server_side_encryption: .
Keep this "selectel" remote?
y) Yes this is OK (default)
e) Edit this remote
d) Delete this remote
y/e/d>

Проверяем корректность и нажимаем Enter.

На данном этапе мы закончили конфигурацию подключения под наименованием selectel.

    Current remotes:

Name                 Type
====                 ====
selectel             s3

e) Edit existing remote
n) New remote
d) Delete remote
r) Rename remote
c) Copy remote
s) Set configuration password
q) Quit config
e/n/d/r/c/s/q>

Для выхода из режима конфигурирования нажимаем q.

Тестируем настройки

Проверим внесенные настройки. Загрузим с помощью командной строки файл в контейнер и проверим, как он отображается.

Управление данными хранилища с помощью rclone выполняется через шаблонный формат команд:

    rclone <command> <remote_name>:<container>

<remote_name> — название подключения. Мы будем использовать сконфигурированное ранее подключение selectel.

 <container> — название контейнера.

<command> — исполняемая команда. 

Список других часто используемых команд:

  • mkdir — создание контейнера;
  • ls — просмотр списка объектов;
  • copy — загрузка объекта;
  • deletefile — удаление объекта.

Полный список команд представлен на сайте разработчика в статье rclone commands.

Выполним команду для загрузки файла test.txt в контейнер dino-bucket с использованием пользователя selectel:

    rclone copy test.txt selectel:dino-bucket

В контейнере через панель управления проверяем наличие загруженного объекта.

Успех! Теперь мы умеем работать с объектным хранилищем через rclone.

Монтируем контейнер

Для монтирования контейнера воспользуемся командой mount:

    rclone mount <remote_name>:<container> <disk_name> 

<disk_name> — это название, с которым будет примонтирован диск (контейнер), например: S:. Также можно использовать символ *, и система самостоятельно укажет обозначение диска.

В отличие от других операционных систем, Windows предоставляет разные типы файловой системы для сетевых и жестких дисков. ОС оптимизирует доступ, исходя из предположения, что фиксированные диски быстрые и надежные, а сетевые диски имеют относительно высокую задержку и меньшую надежность. По умолчанию rclone подключает контейнер как жесткий диск. Но если вам необходимо монтировать контейнер как сетевой диск, используйте дополнительно опцию —network-mode.

Полный список опций, которые можно использовать с командой,представлен на сайте разработчика в статье rclone mount.

Для запуска команды mount в Windows необходимо скачать и установить WinFsp. WinFsp (Windows File System Proxy) — это программное обеспечение с открытым исходным кодом, которое позволяет разработчикам реализовывать собственные файловые системы в Windows. Оно предоставляет уровень эмуляции FUSE, который rclone использует в сочетании с cgofuse.

После установки компонента переходим в командную строку и монтируем контейнер с данными, которые мы использовали ранее:

    rclone mount selectel:dino-bucket S:

В результате выполнения команды появится информация о том, что служба rclone запущена.

В проводнике открываем раздел Этот компьютер (This PC) и проверяем наличие смонтированного контейнера.

Создадим файл test2 в контейнере, чтоб проверить исправность монтирования.

Переходим в панель управления и проверяем наличие созданного файла.

Все работает надежно, как швейцарские часы!

Автоматизируем монтирование

Для настройки автоматического монтирования контейнера создадим текстовый файл и пропишем в нем команду:

    <путь_до_rclone.exe> <команда_монтирования_контейнера>

Подставим наши данные и получим следующее:

    C:\Users\Administrator\Desktop\Job\instruments-s3\rclone\rclone.exe mount selectel:dino-bucket S:

Теперь сохраняем файл и указываем расширение .cmd для создания пакетного файла.

Переходим в папку автозагрузки — Startup по пути: C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup.

Данная папка содержит программы и файлы, которые автоматически запускаются при загрузке операционной системы. Для автоматического запуска команды монтирования переносим в эту папку наш файл auto_mount.

Перезагружаем хост и проверяем настроенную автоматизацию.

Готово! Мы примонтировали контейнер объектного хранилища в Windows с помощью rclone и убедились, что все работает корректно. Теперь, когда все необходимые настройки выполнены, вы сможете напрямую взаимодействовать с вашим контейнером объектного хранилища, работая с ним, как с обычной локальной файловой системой в Windows.

Обратите внимание на недорогие виртуальные серверы в Амстердаме (Нидерланды) от «Хостера года» 2021, 2022 и 2024 годов. Оплата в рублях картами банков РФ, СБП, электронными деньгами. Подробнее.

Резервное копирование для экономных или бэкапимся в облака бесплатно

Публикуя статьи о резервном копировании я достаточно подробно описал как «готовить бэкапы» на серверах, но обошел стороной персональные компьютеры (далее ПК). А ведь данные на них не менее важны и так же нуждаются в резервировании. Тем более, что серверы есть не у всех, а ноутбук или компьютер у большинства — либо дома, либо на работе.

В этой статье я расскажу как создать в «облаке» резервную копию важных данных с диска вашего ПК используя только бесплатные инструменты.

Речь пойдет о копировании ваших документов, фотографий, программ и прочего в облачные хранилища MAIL.RU, Yandex.RU, DropBox и им подобные.

Все решения я буду демонстрировать на примере операционной системы Windows, так как она самая распространенная как на домашних ПК, так и на офисных рабочих станциях.

Утилита Rclone

Речь в статье пойдет о бесплатном инструменте по копированию данных в облачные диски — Rclone.

Основная функция rclone — это синхронизация данных между локальным компьютером и облачным хранилищем.

Rclone поддерживает более 40 облачных хранилищ, а также стандартные протоколы передачи webdav, ftp и так далее.

У Rclone мощные облачные эквиваленты unix команд rsync, cp, mv, mount, ls, ncdu, tree, rm и cat.

Так же Rclone позволяет примонтировать любую локальную, облачную или виртуальную файловую систему как диск в Windows, macOS, Linux и FreeBSD, а также предоставляет к ним доступ через SFTP, HTTP, WebDAV, FTP и DLNA.

Утилита бесплатная и распространяется по лицензии MIT.

Можно сказать, что консольная утилита (программа) Rclone является аналогом Rsync, но только для облачных хранилищ.

Где скачать бесплатную программу Rclone

Rclone поставляется в виде одного исполняемого файла. Скачать его для своей операционной системы можно с официального сайта — https://rclone.org/downloads/.

Программа Rclone работает на Windows, macOS, Linux (пакеты .deb и .rpm), FreeBSD, NetBSD, OpenBSD, Plan9, Solaris. Поддерживаются архитектуры Intel, AMD, ARM, MIPS.

Настройка Rclone для подключения к облаку Яндекс.Диск

Для настройки утилиты Rclone нужно в консоле выполнить команду: rclone config и далее ответить на несколько вопросов в зависимости от вашего облака или способа подключения.

Вот, к примеру, инструкция настройки доступа к Яндекс.Диск — https://rclone.org/yandex/.

Настройка Rclone в графическом режиме

«Консольные» настройки подробно описаны в сети и нет смысла их расписывать вновь. Гораздо интереснее «потыкать мышкой», тем более, что свежие версии Rclone экспериментально поддерживают WebGUI режим. То есть режим управления утилитой через браузер.

Для его активации выполните следующую команду в консоли из папки (директории) с установленной утилитой Rclone:

rclone rcd --rc-web-gui

И в окне браузера вы увидите примерно следующую картину:

На рисунке выше уже созданы конфигурации для доступа к облаку Mail.RU и к домашнему хранилищу по WebDav.

Кстати прямо из браузера можно получить доступ к файлам настроенного облачного хранилища. Таким образом Rclone является многофункциональной альтернативой веб-интерфейсам облачных хранилищ.

Для меня главный плюс графического режима — это начальные настройки аккаунтов для доступа к облачным хранилищам.

Где хранится файл настроек Rclone в Windows

В операционной системе Windows файл конфигурации rclone.conf создается индивидуально для каждого пользователя и сохраняется не в папке с исполняемым файлом, а по следующему пути: %APPDATA%/rclone/rclone.conf.

Чтобы увидеть полный путь к файлу rclone.conf выполните в консоли (не PowerShell) следующую команду:

cd %APPDATA%/rclone/

Основные команды Rclone

После того как вы настроили доступ к облачным хранилищам вы с помощью утилиты Rclone можете свободно оперировать с ними как с обычными папками на вашем компьютере. То есть копировать, перемещать, удалять файлы, создавать папки (директории) и синхронизировать их содержимое.

Синтаксис использования утилиты Rclone выглядит так:

rclone КОМАНДА ИСТОЧНИК ПОЛУЧАТЕЛЬ ОПЦИИ

где КОМАНДА — это одна из команд copy, sync, config и т.д.
ИСТОЧНИК и ПОЛУЧАТЕЛЬ — это локальная или сетевая папка с данными, либо название облачного хранилища. Название облачного хранилища должно заканчиваться двоеточием после которого можно указать имя папки в этом хранилище.
ОПЦИИ — это дополнительные параметры для команд.

Пример, как синхронизировать данные из локальной папки компьютера с операционной системой Windows на сетевой диск:

rclone.exe sync d:\backups \\192.168.254.224\backups\ --no-console --log-file rclone_log.txt

Здесь по команде sync синхронизируются данные между локальной и сетевой папкам. Опция —no-console запускает программу без запуска оболочки командной строки, а —log-file rclone_log.txt указывает куда писать результаты работы программы.

Синхронизация данных между локальной папкой и сетевым диском

Для синхронизации с облачным диском команда будет не на много отличаться:

rclone.exe sync d:\backups mail-ru:backups --no-console --log-file rclone_log.txt

Здесь mail-ru имя конфигурации для доступа к облаку Mail.RU. Заканчиваться должно на двоеточие, после которого можно указать папку для сохранения данных.

Чем отличаются команды SYNC и COPY

Эти команды очень похожи. COPY производит копирование с источника на получатель. SYNC копирует только новые или измененные файлы. Если планируете делать одну копию ваших данных, то используйте SYNC, операция копирования будет проходить быстрее.

Как восстановить данные из облачного хранилища

Если поменять местами источник и получатель, то есть в начале указать облачное хранилище, а затем локальный диск, то данные восстановятся из облака на локальном компьютере.

Можно ли синхронизировать два облака

Да можно, если в качестве источника и получателя использовать облачные хранилища.

Как обойти ограничение 2 ГБ на бесплатном тарифе диска от Маил РУ

К сожалению бесплатные тариф Маил Ру Диска имеет ограничение на размер закачиваемых на диск файлов, не более 2 ГБ. Обойти это ограничение нельзя, разве что поделить большие файлы на части. Но к большому сожалению Rclone не умеет это делать «на лету».

Как настроить автоматическое резервное копирование по расписанию

С помощью утилиты Rclone резервные копии можно делать автоматически по расписанию в удобное для вас время. Для этого нужно создать задание в планировщике задач Windows.

Выводы по утилите Rclone

Бесплатная утилита Rclone является мощным инструментом по копированию данных в облачные хранилища. Несложными действиями ее можно настроить для автоматического резервного копирования данных с вашего компьютера в облачные хранилища. У нее нет графического интерфейса, что может вызвать некоторые затруднения при использовании.

Инструкция по установки и настройке Rclone. Rclone сделает всю рутинную работу по копированию и выгрузке резервной копии в облачное хранилище. Rclone поддерживает большое количество облачных хранилищ, среди них:

  • Amazon Drive
  • Amazon S3
  • Backblaze B2
  • Ceph
  • Citrix ShareFile
  • Cloudflare R2
  • DigitalOcean Spaces
  • Dropbox
  • Google Cloud Storage
  • Google Drive
  • Google Photos
  • Mail.ru Cloud
  • Microsoft Azure Blob Storage
  • Microsoft OneDrive
  • Nextcloud
  • ownCloud
  • Seafile
  • Sia
  • Yandex Disk
  • Zoho WorkDrive

И позволяет осуществлять выгрузку по таким протоколам как:

  • FTP / SFTP
  • HTTP
  • SMB / CIFS
  • WebDAV

В рамках данной статья мы разберемся как устанавливать утилиту в операционную систему, как правильно настроить rclone для выгрузки ваших резервных копий.

Rclone поддерживает большое количество операционных систем. Вы можете установить Rclone на:

  • Ubuntu
  • Debian
  • Arch Linux
  • Fedora
  • FreeBSD
  • Gentoo
  • Manjaro
  • OpenBSD
  • macOS
  • Windows

Установка rclone одной командой

Самый простой вариант установки rclone — запустить установку используя скрипт который сам установит последнюю версию

sudo -v ; curl https://rclone.org/install.sh | sudo bash

Установка Rclone Linux ( Ubuntu, Debian, Fedora, Arch, Gentoo)

Установим программу unzip

sudo apt install unzip

В терминале выполним следующие команды

curl -O https://downloads.rclone.org/rclone-current-linux-amd64.zip
unzip rclone-current-linux-amd64.zip
cd rclone-*-linux-amd64

Таким образом вы скачаете архив с последней версией rclone, распакуете его и перейдет в распакованную папку.

Скопируем исполняемый файл rclone в папку /usr/bin/ и установим верные права и владельца на данном файле.

sudo cp rclone /usr/bin/
sudo chown root:root /usr/bin/rclone
sudo chmod 755 /usr/bin/rclone

Добавим информацию о rclone в базу данных man

sudo mkdir -p /usr/local/share/man/man1
sudo cp rclone.1 /usr/local/share/man/man1/
sudo mandb

Установка rclone Windows

Для установки rclone в windows вам необходимо скачать архив с утилитой с официального сайта , распаковать его и сохранить в удобнов для вас месте.

Настройка подключения в Rclone

Для начала работы с rclone, выполняем команду

rclone config

После первого запуска вам будет предложено создать файл конфигурации и добавить облако для выгрузки данных

No remotes found, make a new one?
n) New remote
s) Set configuration password
q) Quit config

Нажимаем n для создания нового подключения которому необходимо будет дать название.

Enter name for new remote.
name> UnixTest

На следующем шаге нам нужно будет выбрать тип облачного хранилища, мы будем настраивать выгрузку мы будем в OneDrive, для OneDrive вводим номер 31. Подробнее про настройку rclone для остальных типов облачного хранилища вы можете прочитать на официальном сайте.

Option Storage.
Type of storage to configure.
Choose a number from below, or type in your own value.
 1 / 1Fichier
   \ (fichier)
 2 / Akamai NetStorage
   \ (netstorage)
 3 / Alias for an existing remote
   \ (alias)
 4 / Amazon Drive
   \ (amazon cloud drive)
 5 / Amazon S3 Compliant Storage Providers including AWS, Alibaba, Ceph, China Mobile, Cloudflare, ArvanCloud, Digital Ocean, Dreamhost, Huawei OBS, IBM COS, IDrive e2, IONOS Cloud, Lyve Cloud, Minio, Netease, RackCorp, Scaleway, SeaweedFS, StackPath, Storj, Tencent COS, Qiniu and Wasabi
   \ (s3)
 6 / Backblaze B2
   \ (b2)
 7 / Better checksums for other remotes
   \ (hasher)
 8 / Box
   \ (box)
 9 / Cache a remote
   \ (cache)
10 / Citrix Sharefile
   \ (sharefile)
11 / Combine several remotes into one
   \ (combine)
12 / Compress a remote
   \ (compress)
13 / Dropbox
   \ (dropbox)
14 / Encrypt/Decrypt a remote
   \ (crypt)
15 / Enterprise File Fabric
   \ (filefabric)
16 / FTP
   \ (ftp)
17 / Google Cloud Storage (this is not Google Drive)
   \ (google cloud storage)
18 / Google Drive
   \ (drive)
19 / Google Photos
   \ (google photos)
20 / HTTP
   \ (http)
21 / Hadoop distributed file system
   \ (hdfs)
22 / HiDrive
   \ (hidrive)
23 / In memory object storage system.
   \ (memory)
24 / Internet Archive
   \ (internetarchive)
25 / Jottacloud
   \ (jottacloud)
26 / Koofr, Digi Storage and other Koofr-compatible storage providers
   \ (koofr)
27 / Local Disk
   \ (local)
28 / Mail.ru Cloud
   \ (mailru)
29 / Mega
   \ (mega)
30 / Microsoft Azure Blob Storage
   \ (azureblob)
31 / Microsoft OneDrive
   \ (onedrive)
32 / OpenDrive
   \ (opendrive)
33 / OpenStack Swift (Rackspace Cloud Files, Memset Memstore, OVH)
   \ (swift)
34 / Oracle Cloud Infrastructure Object Storage
   \ (oracleobjectstorage)
35 / Pcloud
   \ (pcloud)
36 / Put.io
   \ (putio)
37 / QingCloud Object Storage
   \ (qingstor)
38 / SMB / CIFS
   \ (smb)
39 / SSH/SFTP
   \ (sftp)
40 / Sia Decentralized Cloud
   \ (sia)
41 / Storj Decentralized Cloud Storage
   \ (storj)
42 / Sugarsync
   \ (sugarsync)
43 / Transparently chunk/split large files
   \ (chunker)
44 / Union merges the contents of several upstream fs
   \ (union)
45 / Uptobox
   \ (uptobox)
46 / WebDAV
   \ (webdav)
47 / Yandex Disk
   \ (yandex)
48 / Zoho
   \ (zoho)
49 / premiumize.me
   \ (premiumizeme)
50 / seafile
   \ (seafile)
Storage> 31

В client_id и client_secret мы ничего не указываем, в качестве региона выбираем Microsoft Cloud Global

Option region.
Choose national cloud region for OneDrive.
Choose a number from below, or type in your own string value.
Press Enter for the default (global).
 1 / Microsoft Cloud Global
   \ (global)
 2 / Microsoft Cloud for US Government
   \ (us)
 3 / Microsoft Cloud Germany
   \ (de)
 4 / Azure and Office 365 operated by Vnet Group in China
   \ (cn)
region> 1

На вопрос дополнительной настройки конфигурации отвечает No

Edit advanced config?
y) Yes
n) No (default)
y/n> n

В случаи если вы настраиваете rclone на локальном компьютере на котором есть браузер, вы можете выбрать автоматическую настройку, так как мы настраиваем все на удаленном сервере то отказываемся от автоматической настройки.

Use auto config?
 * Say Y if not sure
 * Say N if you are working on a remote or headless machine

y) Yes (default)
n) No
y/n> n

Теперь установим rclone на локальном компьютере и выполним команду которую предлагает мастер настройки rclone

For this to work, you will need rclone available on a machine that has
a web browser available.
For more help and alternate methods see: https://rclone.org/remote_setup/
Execute the following on the machine with the web browser (same rclone
version recommended):
        rclone authorize "onedrive"
Then paste the result.
Enter a value.
config_token> 

После того как вы выполните команду, у вас откроется браузер и предложит вам войти в ваш аккаунт, необходимо дать разрешения и по завершению в терминале вы получите текст который необходимо будет вставить на вашем сервере, копируем его и вставляем.

На следующем шаге выбираем 1.

Option config_type.
Type of connection
Choose a number from below, or type in an existing string value.
Press Enter for the default (onedrive).
 1 / OneDrive Personal or Business
   \ (onedrive)
 2 / Root Sharepoint site
   \ (sharepoint)
   / Sharepoint site name or URL
 3 | E.g. mysite or https://contoso.sharepoint.com/sites/mysite
   \ (url)
 4 / Search for a Sharepoint site
   \ (search)
 5 / Type in driveID (advanced)
   \ (driveid)
 6 / Type in SiteID (advanced)
   \ (siteid)
   / Sharepoint server-relative path (advanced)
 7 | E.g. /teams/hr
   \ (path)

Далее rclone определит ваш аккаунт и в конце будет выведен ваш конфиг файл, для сохранения конфигурации вводим y.

Keep this "UnixTest" remote?
y) Yes this is OK (default)
e) Edit this remote
d) Delete this remote
y/e/d> y

После этого в rclone будет сохранено подключение для резервного копирования

Current remotes:

Name                 Type
====                 ====
UnixTest            onedrive

Работа с Rclone

Для вывода списка директоий в облачном хранилище используется команда rclone lsd в которой необходимо указать имя подключения. В нашем случае имя подключения UnixTest и в конце поставить двоеточие

rclone lsd connection_name:

Для создания новой директории используется команда rclone mkdir

rclone mkdir connection_name:new_dir

Для просмотров файлов в директории

rclone lsd connection_name:new_dir

Для копирования файла используется команда copy

rclone copy file.name connection_name:dir_name

Чтобы удалить директорию на стороне облачного хранилища используйте команду rclone rmdir

rclone rmdir connection_name:/path/to/dir_name

Для синхронизации файлов локального сервера с файлами хранилища используется команда sync. В качестве /server/folder необходимо указать локальный путь папки которую вы хотите синхронизировать

rclone sync connection_name:dir_name /server/folder

Для монтирования папки облачного хранилища используется команда rclone mount.

rclone mount connection_name:dir_name /path/to/local/mount

Если же вам необходимо примонтировать папку в фоновом режиме то необходимо использовать флаг —daemon.

rclone mount --daemon connection_name:dir_name /path/to/local/mount

Для того чтобы размонтировать примонтированную папку выполняем

umount connection_name:dir_name

Веб-интерфейс для rclone

Управлять rclone можно и через веб-интерфейс. Для этого необходимо выполнить следующую команду указав вместо server_ip IP адрес вашего сервера, дополнительно можно указать любой порт. Для дополнительной защиты в —rc-user и —rc-pass укажите логин и пароль

rclone rcd --rc-web-gui --rc-addr server_ip:5572 --rc-user admin --rc-pass pass

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Vmware tool windows server 2003
  • Почему не отображается папка users в windows
  • 0xc000000e при загрузке windows 10 после клонирования
  • Не печатает принтер по локальной сети windows 10
  • Эмулятор kali linux для windows 10