mirror of
https://github.com/rclone/rclone.git
synced 2024-11-22 08:23:47 +01:00
e9cd3e5986
Background: Bisync uses lock files as a safety feature to prevent interference from other bisync runs while it is running. Bisync normally removes these lock files at the end of a run, but if bisync is abruptly interrupted, these files will be left behind. By default, they will lock out all future runs, until the user has a chance to manually check things out and remove the lock. Before this change, lock files blocked future runs indefinitely, so a single interrupted run would lock out all future runs forever (absent user intervention), and there was no way to change this behavior. After this change, a new --max-lock flag can be used to make lock files automatically expire after a certain period of time, so that future runs are not locked out forever, and auto-recovery is possible. --max-lock can be any duration 2m or greater (or 0 to disable). If set, lock files older than this will be considered "expired", and future runs will be allowed to disregard them and proceed. (Note that the --max-lock duration must be set by the process that left the lock file -- not the later one interpreting it.) If set, bisync will also "renew" these lock files every --max-lock_minus_one_minute throughout a run, for extra safety. (For example, with --max-lock 5m, bisync would renew the lock file (for another 5 minutes) every 4 minutes until the run has completed.) In other words, it should not be possible for a lock file to pass its expiration time while the process that created it is still running -- and you can therefore be reasonably sure that any _expired_ lock file you may find was left there by an interrupted run, not one that is still running and just taking awhile. If --max-lock is 0 or not set, the default is that lock files will never expire, and will block future runs (of these same two bisync paths) indefinitely. For maximum resilience from disruptions, consider setting a relatively short duration like --max-lock 2m along with --resilient and --recover, and a relatively frequent cron schedule. The result will be a very robust "set-it-and-forget-it" bisync run that can automatically bounce back from almost any interruption it might encounter, without requiring the user to get involved and run a --resync. |
||
---|---|---|
.. | ||
content | ||
i18n | ||
layouts | ||
static | ||
config.json | ||
README.md |
Docs
This directory tree is used to build all the different docs for rclone.
See the content
directory for the docs in markdown format.
Note that some of the docs are auto-generated - these should have a DO NOT EDIT marker near the top.
Use hugo to build the website.
Changing the layout
If you want to change the layout then the main files to edit are
layout/index.html
for the front pagechrome/*.html
for the HTML fragments_default/single.md
for the default templatepage/single.md
for the page template
Running make serve
in a terminal give a live preview of the website
so it is easy to tweak stuff.
What are all these files
├── config.json - hugo config file
├── content - docs and backend docs
│ ├── _index.md - the front page of rclone.org
│ ├── commands - auto-generated command docs - DO NOT EDIT
├── i18n
│ └── en.toml - hugo multilingual config
├── layouts - how the markdown gets converted into HTML
│ ├── 404.html - 404 page
│ ├── chrome - contains parts of the HTML page included elsewhere
│ │ ├── footer.copyright.html - copyright footer
│ │ ├── footer.html - footer including scripts
│ │ ├── header.html - the whole html header
│ │ ├── header.includes.html - header includes e.g. css files
│ │ ├── menu.html - left hand side menu
│ │ ├── meta.html - meta tags for the header
│ │ └── navbar.html - top navigation bar
│ ├── _default
│ │ └── single.html - the default HTML page render
│ ├── index.html - the index page of the whole site
│ ├── page
│ │ └── single.html - the render of all "page" type markdown
│ ├── partials - bits of HTML to include into layout .html files
│ │ └── version.html - the current version number
│ ├── rss.xml - template for the RSS output
│ ├── section - rendering for sections
│ │ └── commands.html - rendering for /commands/index.html
│ ├── shortcodes - shortcodes to call from markdown files
│ │ ├── cdownload.html - download the "current" version
│ │ ├── download.html - download a version with the partials/version.html number
│ │ ├── provider.html - used to make provider list on the front page
│ │ └── version.html - used to insert the current version number
│ └── sitemap.xml - sitemap template
├── public - render of the website
├── README.md - this file
├── resources - don't know!
│ └── _gen
│ ├── assets
│ └── images
└── static - static content for the website
├── css
│ ├── bootstrap.css
│ ├── custom.css - custom css goes here
│ └── font-awesome.css
├── img - images used
├── js
│ ├── bootstrap.js
│ ├── custom.js - custom javascript goes here
│ └── jquery.js
└── webfonts