rclone.org
Open in
urlscan Pro
2a02:24e0:8:61f9::1
Public Scan
URL:
https://rclone.org/onedrive/
Submission: On August 14 via manual from LU — Scanned from GB
Submission: On August 14 via manual from LU — Scanned from GB
Form analysis
1 forms found in the DOMName: search_form — https://google.com/search
<form class="form-inline" name="search_form" action="https://google.com/search" target="_blank" onsubmit="on_search();">
<input name="words" value="" type="search" placeholder="search..." class="form-control form-control-sm">
<input name="q" value="" type="hidden">
<input name="as_sitesearch" value="https://rclone.org/" type="hidden">
</form>
Text Content
* Downloads * Docs Installation Usage Filtering GUI Remote Control Changelog Bugs FAQ Flags Licence Authors Privacy Policy * Commands Overview rclone rclone about rclone authorize rclone backend rclone bisync rclone cat rclone check rclone checksum rclone cleanup rclone completion rclone config rclone copy rclone copyto rclone copyurl rclone cryptcheck rclone cryptdecode rclone dedupe rclone delete rclone deletefile rclone genautocomplete rclone gendocs rclone hashsum rclone link rclone listremotes rclone ls rclone lsd rclone lsf rclone lsjson rclone lsl rclone md5sum rclone mkdir rclone mount rclone move rclone moveto rclone ncdu rclone obscure rclone purge rclone rc rclone rcat rclone rcd rclone rmdir rclone rmdirs rclone selfupdate rclone serve rclone settier rclone sha1sum rclone size rclone sync rclone test rclone touch rclone tree rclone version * Storage Systems Overview 1Fichier Akamai NetStorage Alias Amazon Drive Amazon S3 Backblaze B2 Box Chunker (splits large files) Compress (transparent gzip compression) Combine (remotes into a directory tree) Citrix ShareFile Crypt (encrypts the others) Digi Storage Dropbox Enterprise File Fabric FTP Google Cloud Storage Google Drive Google Photos Hasher (better checksums for others) HDFS (Hadoop Distributed Filesystem) HiDrive HTTP Hubic Internet Archive Jottacloud Koofr Mail.ru Cloud Mega Memory Microsoft Azure Blob Storage Microsoft OneDrive OpenDrive QingStor Openstack Swift pCloud premiumize.me put.io Seafile SFTP Sia Storj SugarSync Uptobox Union (merge backends) WebDAV Yandex Disk Zoho WorkDrive The local filesystem * Contact * Donate MICROSOFT ONEDRIVE Paths are specified as remote:path Paths may be as deep as required, e.g. remote:directory/subdirectory. CONFIGURATION The initial setup for OneDrive involves getting a token from Microsoft which you need to do in your browser. rclone config walks you through it. 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: 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 name> remote Type of storage to configure. Enter a string value. Press Enter for the default (""). Choose a number from below, or type in your own value [snip] XX / Microsoft OneDrive \ "onedrive" [snip] Storage> onedrive Microsoft App Client Id Leave blank normally. Enter a string value. Press Enter for the default (""). client_id> Microsoft App Client Secret Leave blank normally. Enter a string value. Press Enter for the default (""). client_secret> Edit advanced config? (y/n) y) Yes n) No y/n> n Remote config Use auto config? * Say Y if not sure * Say N if you are working on a remote or headless machine y) Yes n) No y/n> y If your browser doesn't open automatically go to the following link: http://127.0.0.1:53682/auth Log in and authorize rclone for access Waiting for code... Got code Choose a number from below, or type in an existing value 1 / OneDrive Personal or Business \ "onedrive" 2 / Sharepoint site \ "sharepoint" 3 / Type in driveID \ "driveid" 4 / Type in SiteID \ "siteid" 5 / Search a Sharepoint site \ "search" Your choice> 1 Found 1 drives, please select the one you want to use: 0: OneDrive (business) id=b!Eqwertyuiopasdfghjklzxcvbnm-7mnbvcxzlkjhgfdsapoiuytrewqk Chose drive to use:> 0 Found drive 'root' of type 'business', URL: https://org-my.sharepoint.com/personal/you/Documents Is that okay? y) Yes n) No y/n> y -------------------- [remote] type = onedrive token = {"access_token":"youraccesstoken","token_type":"Bearer","refresh_token":"yourrefreshtoken","expiry":"2018-08-26T22:39:52.486512262+08:00"} drive_id = b!Eqwertyuiopasdfghjklzxcvbnm-7mnbvcxzlkjhgfdsapoiuytrewqk drive_type = business -------------------- y) Yes this is OK e) Edit this remote d) Delete this remote y/e/d> y See the remote setup docs for how to set it up on a machine with no Internet browser available. Note that rclone runs a webserver on your local machine to collect the token as returned from Microsoft. This only runs from the moment it opens your browser to the moment you get back the verification code. This is on http://127.0.0.1:53682/ and this it may require you to unblock it temporarily if you are running a host firewall. Once configured you can then use rclone like this, List directories in top level of your OneDrive rclone lsd remote: List all the files in your OneDrive rclone ls remote: To copy a local directory to an OneDrive directory called backup rclone copy /home/source remote:backup GETTING YOUR OWN CLIENT ID AND KEY rclone uses a default Client ID when talking to OneDrive, unless a custom client_id is specified in the config. The default Client ID and Key are shared by all rclone users when performing requests. You may choose to create and use your own Client ID, in case the default one does not work well for you. For example, you might see throtting. CREATING CLIENT ID FOR ONEDRIVE PERSONAL To create your own Client ID, please follow these steps: 1. Open https://portal.azure.com/#blade/Microsoft_AAD_RegisteredApps/ApplicationsListBlade and then click New registration. 2. Enter a name for your app, choose account type Accounts in any organizational directory (Any Azure AD directory - Multitenant) and personal Microsoft accounts (e.g. Skype, Xbox), select Web in Redirect URI, then type (do not copy and paste) http://localhost:53682/ and click Register. Copy and keep the Application (client) ID under the app name for later use. 3. Under manage select Certificates & secrets, click New client secret. Enter a description (can be anything) and set Expires to 24 months. Copy and keep that secret Value for later use (you won't be able to see this value afterwards). 4. Under manage select API permissions, click Add a permission and select Microsoft Graph then select delegated permissions. 5. Search and select the following permissions: Files.Read, Files.ReadWrite, Files.Read.All, Files.ReadWrite.All, offline_access, User.Read and Sites.Read.All (if custom access scopes are configured, select the permissions accordingly). Once selected click Add permissions at the bottom. Now the application is complete. Run rclone config to create or edit a OneDrive remote. Supply the app ID and password as Client ID and Secret, respectively. rclone will walk you through the remaining steps. The access_scopes option allows you to configure the permissions requested by rclone. See Microsoft Docs for more information about the different scopes. The Sites.Read.All permission is required if you need to search SharePoint sites when configuring the remote. However, if that permission is not assigned, you need to exclude Sites.Read.All from your access scopes or set disable_site_permission option to true in the advanced options. CREATING CLIENT ID FOR ONEDRIVE BUSINESS The steps for OneDrive Personal may or may not work for OneDrive Business, depending on the security settings of the organization. A common error is that the publisher of the App is not verified. You may try to verify you account, or try to limit the App to your organization only, as shown below. 1. Make sure to create the App with your business account. 2. Follow the steps above to create an App. However, we need a different account type here: Accounts in this organizational directory only (*** - Single tenant). Note that you can also change the account type aftering creating the App. 3. Find the tenant ID of your organization. 4. In the rclone config, set auth_url to https://login.microsoftonline.com/YOUR_TENANT_ID/oauth2/v2.0/authorize. 5. In the rclone config, set token_url to https://login.microsoftonline.com/YOUR_TENANT_ID/oauth2/v2.0/token. Note: If you have a special region, you may need a different host in step 4 and 5. Here are some hints. MODIFICATION TIME AND HASHES OneDrive allows modification times to be set on objects accurate to 1 second. These will be used to detect whether objects need syncing or not. OneDrive personal supports SHA1 type hashes. OneDrive for business and Sharepoint Server support QuickXorHash. For all types of OneDrive you can use the --checksum flag. RESTRICTED FILENAME CHARACTERS In addition to the default restricted characters set the following characters are also replaced: Character Value Replacement " 0x22 " * 0x2A * : 0x3A : < 0x3C < > 0x3E > ? 0x3F ? \ 0x5C \ | 0x7C | 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 ␠ . 0x2E . File names can also not begin with the following characters. These only get replaced if they are the first character in the name: Character Value Replacement SP 0x20 ␠ ~ 0x7E ~ Invalid UTF-8 bytes will also be replaced, as they can't be used in JSON strings. DELETING FILES Any files you delete with rclone will end up in the trash. Microsoft doesn't provide an API to permanently delete files, nor to empty the trash, so you will have to do that with one of Microsoft's apps or via the OneDrive website. STANDARD OPTIONS Here are the Standard options specific to onedrive (Microsoft OneDrive). --ONEDRIVE-CLIENT-ID OAuth Client Id. Leave blank normally. Properties: * Config: client_id * Env Var: RCLONE_ONEDRIVE_CLIENT_ID * Type: string * Required: false --ONEDRIVE-CLIENT-SECRET OAuth Client Secret. Leave blank normally. Properties: * Config: client_secret * Env Var: RCLONE_ONEDRIVE_CLIENT_SECRET * Type: string * Required: false --ONEDRIVE-REGION Choose national cloud region for OneDrive. Properties: * Config: region * Env Var: RCLONE_ONEDRIVE_REGION * Type: string * Default: "global" * Examples: * "global" * Microsoft Cloud Global * "us" * Microsoft Cloud for US Government * "de" * Microsoft Cloud Germany * "cn" * Azure and Office 365 operated by 21Vianet in China ADVANCED OPTIONS Here are the Advanced options specific to onedrive (Microsoft OneDrive). --ONEDRIVE-TOKEN OAuth Access Token as a JSON blob. Properties: * Config: token * Env Var: RCLONE_ONEDRIVE_TOKEN * Type: string * Required: false --ONEDRIVE-AUTH-URL Auth server URL. Leave blank to use the provider defaults. Properties: * Config: auth_url * Env Var: RCLONE_ONEDRIVE_AUTH_URL * Type: string * Required: false --ONEDRIVE-TOKEN-URL Token server url. Leave blank to use the provider defaults. Properties: * Config: token_url * Env Var: RCLONE_ONEDRIVE_TOKEN_URL * Type: string * Required: false --ONEDRIVE-CHUNK-SIZE Chunk size to upload files with - must be multiple of 320k (327,680 bytes). Above this size files will be chunked - must be multiple of 320k (327,680 bytes) and should not exceed 250M (262,144,000 bytes) else you may encounter "Microsoft.SharePoint.Client.InvalidClientQueryException: The request message is too big." Note that the chunks will be buffered into memory. Properties: * Config: chunk_size * Env Var: RCLONE_ONEDRIVE_CHUNK_SIZE * Type: SizeSuffix * Default: 10Mi --ONEDRIVE-DRIVE-ID The ID of the drive to use. Properties: * Config: drive_id * Env Var: RCLONE_ONEDRIVE_DRIVE_ID * Type: string * Required: false --ONEDRIVE-DRIVE-TYPE The type of the drive (personal | business | documentLibrary). Properties: * Config: drive_type * Env Var: RCLONE_ONEDRIVE_DRIVE_TYPE * Type: string * Required: false --ONEDRIVE-ROOT-FOLDER-ID ID of the root folder. This isn't normally needed, but in special circumstances you might know the folder ID that you wish to access but not be able to get there through a path traversal. Properties: * Config: root_folder_id * Env Var: RCLONE_ONEDRIVE_ROOT_FOLDER_ID * Type: string * Required: false --ONEDRIVE-ACCESS-SCOPES Set scopes to be requested by rclone. Choose or manually enter a custom space separated list with all scopes, that rclone should request. Properties: * Config: access_scopes * Env Var: RCLONE_ONEDRIVE_ACCESS_SCOPES * Type: SpaceSepList * Default: Files.Read Files.ReadWrite Files.Read.All Files.ReadWrite.All Sites.Read.All offline_access * Examples: * "Files.Read Files.ReadWrite Files.Read.All Files.ReadWrite.All Sites.Read.All offline_access" * Read and write access to all resources * "Files.Read Files.Read.All Sites.Read.All offline_access" * Read only access to all resources * "Files.Read Files.ReadWrite Files.Read.All Files.ReadWrite.All offline_access" * Read and write access to all resources, without the ability to browse SharePoint sites. * Same as if disable_site_permission was set to true --ONEDRIVE-DISABLE-SITE-PERMISSION Disable the request for Sites.Read.All permission. If set to true, you will no longer be able to search for a SharePoint site when configuring drive ID, because rclone will not request Sites.Read.All permission. Set it to true if your organization didn't assign Sites.Read.All permission to the application, and your organization disallows users to consent app permission request on their own. Properties: * Config: disable_site_permission * Env Var: RCLONE_ONEDRIVE_DISABLE_SITE_PERMISSION * Type: bool * Default: false --ONEDRIVE-EXPOSE-ONENOTE-FILES Set to make OneNote files show up in directory listings. By default, rclone will hide OneNote files in directory listings because operations like "Open" and "Update" won't work on them. But this behaviour may also prevent you from deleting them. If you want to delete OneNote files or otherwise want them to show up in directory listing, set this option. Properties: * Config: expose_onenote_files * Env Var: RCLONE_ONEDRIVE_EXPOSE_ONENOTE_FILES * Type: bool * Default: false --ONEDRIVE-SERVER-SIDE-ACROSS-CONFIGS Allow server-side operations (e.g. copy) to work across different onedrive configs. This will only work if you are copying between two OneDrive Personal drives AND the files to copy are already shared between them. In other cases, rclone will fall back to normal copy (which will be slightly slower). Properties: * Config: server_side_across_configs * Env Var: RCLONE_ONEDRIVE_SERVER_SIDE_ACROSS_CONFIGS * Type: bool * Default: false --ONEDRIVE-LIST-CHUNK Size of listing chunk. Properties: * Config: list_chunk * Env Var: RCLONE_ONEDRIVE_LIST_CHUNK * Type: int * Default: 1000 --ONEDRIVE-NO-VERSIONS Remove all versions on modifying operations. Onedrive for business creates versions when rclone uploads new files overwriting an existing one and when it sets the modification time. These versions take up space out of the quota. This flag checks for versions after file upload and setting modification time and removes all but the last version. NB Onedrive personal can't currently delete versions so don't use this flag there. Properties: * Config: no_versions * Env Var: RCLONE_ONEDRIVE_NO_VERSIONS * Type: bool * Default: false --ONEDRIVE-LINK-SCOPE Set the scope of the links created by the link command. Properties: * Config: link_scope * Env Var: RCLONE_ONEDRIVE_LINK_SCOPE * Type: string * Default: "anonymous" * Examples: * "anonymous" * Anyone with the link has access, without needing to sign in. * This may include people outside of your organization. * Anonymous link support may be disabled by an administrator. * "organization" * Anyone signed into your organization (tenant) can use the link to get access. * Only available in OneDrive for Business and SharePoint. --ONEDRIVE-LINK-TYPE Set the type of the links created by the link command. Properties: * Config: link_type * Env Var: RCLONE_ONEDRIVE_LINK_TYPE * Type: string * Default: "view" * Examples: * "view" * Creates a read-only link to the item. * "edit" * Creates a read-write link to the item. * "embed" * Creates an embeddable link to the item. --ONEDRIVE-LINK-PASSWORD Set the password for links created by the link command. At the time of writing this only works with OneDrive personal paid accounts. Properties: * Config: link_password * Env Var: RCLONE_ONEDRIVE_LINK_PASSWORD * Type: string * Required: false --ONEDRIVE-ENCODING The encoding for the backend. See the encoding section in the overview for more info. Properties: * Config: encoding * Env Var: RCLONE_ONEDRIVE_ENCODING * Type: MultiEncoder * Default: Slash,LtGt,DoubleQuote,Colon,Question,Asterisk,Pipe,BackSlash,Del,Ctl,LeftSpace,LeftTilde,RightSpace,RightPeriod,InvalidUtf8,Dot LIMITATIONS If you don't use rclone for 90 days the refresh token will expire. This will result in authorization problems. This is easy to fix by running the rclone config reconnect remote: command to get a new token and refresh token. NAMING Note that OneDrive is case insensitive so you can't have a file called "Hello.doc" and one called "hello.doc". There are quite a few characters that can't be in OneDrive file names. These can't occur on Windows platforms, but on non-Windows platforms they are common. Rclone will map these names to and from an identical looking unicode equivalent. For example if a file has a ? in it will be mapped to ? instead. FILE SIZES The largest allowed file size is 250 GiB for both OneDrive Personal and OneDrive for Business (Updated 13 Jan 2021). PATH LENGTH The entire path, including the file name, must contain fewer than 400 characters for OneDrive, OneDrive for Business and SharePoint Online. If you are encrypting file and folder names with rclone, you may want to pay attention to this limitation because the encrypted names are typically longer than the original ones. NUMBER OF FILES OneDrive seems to be OK with at least 50,000 files in a folder, but at 100,000 rclone will get errors listing the directory like couldn’t list files: UnknownError:. See #2707 for more info. An official document about the limitations for different types of OneDrive can be found here. VERSIONS Every change in a file OneDrive causes the service to create a new version of the the file. This counts against a users quota. For example changing the modification time of a file creates a second version, so the file apparently uses twice the space. For example the copy command is affected by this as rclone copies the file and then afterwards sets the modification time to match the source file which uses another version. You can use the rclone cleanup command (see below) to remove all old versions. Or you can set the no_versions parameter to true and rclone will remove versions after operations which create new versions. This takes extra transactions so only enable it if you need it. Note At the time of writing Onedrive Personal creates versions (but not for setting the modification time) but the API for removing them returns "API not found" so cleanup and no_versions should not be used on Onedrive Personal. DISABLING VERSIONING Starting October 2018, users will no longer be able to disable versioning by default. This is because Microsoft has brought an update to the mechanism. To change this new default setting, a PowerShell command is required to be run by a SharePoint admin. If you are an admin, you can run these commands in PowerShell to change that setting: 1. Install-Module -Name Microsoft.Online.SharePoint.PowerShell (in case you haven't installed this already) 2. Import-Module Microsoft.Online.SharePoint.PowerShell -DisableNameChecking 3. Connect-SPOService -Url https://YOURSITE-admin.sharepoint.com -Credential YOU@YOURSITE.COM (replacing YOURSITE, YOU, YOURSITE.COM with the actual values; this will prompt for your credentials) 4. Set-SPOTenant -EnableMinimumVersionRequirement $False 5. Disconnect-SPOService (to disconnect from the server) Below are the steps for normal users to disable versioning. If you don't see the "No Versioning" option, make sure the above requirements are met. User Weropol has found a method to disable versioning on OneDrive 1. Open the settings menu by clicking on the gear symbol at the top of the OneDrive Business page. 2. Click Site settings. 3. Once on the Site settings page, navigate to Site Administration > Site libraries and lists. 4. Click Customize "Documents". 5. Click General Settings > Versioning Settings. 6. Under Document Version History select the option No versioning. Note: This will disable the creation of new file versions, but will not remove any previous versions. Your documents are safe. 7. Apply the changes by clicking OK. 8. Use rclone to upload or modify files. (I also use the --no-update-modtime flag) 9. Restore the versioning settings after using rclone. (Optional) CLEANUP OneDrive supports rclone cleanup which causes rclone to look through every file under the path supplied and delete all version but the current version. Because this involves traversing all the files, then querying each file for versions it can be quite slow. Rclone does --checkers tests in parallel. The command also supports -i which is a great way to see what it would do. rclone cleanup -i remote:path/subdir # interactively remove all old version for path/subdir rclone cleanup remote:path/subdir # unconditionally remove all old version for path/subdir NB Onedrive personal can't currently delete versions TROUBLESHOOTING EXCESSIVE THROTTLING OR BLOCKED ON SHAREPOINT If you experience excessive throttling or is being blocked on SharePoint then it may help to set the user agent explicitly with a flag like this: --user-agent "ISV|rclone.org|rclone/v1.55.1" The specific details can be found in the Microsoft document: Avoid getting throttled or blocked in SharePoint Online UNEXPECTED FILE SIZE/HASH DIFFERENCES ON SHAREPOINT It is a known issue that Sharepoint (not OneDrive or OneDrive for Business) silently modifies uploaded files, mainly Office files (.docx, .xlsx, etc.), causing file size and hash checks to fail. There are also other situations that will cause OneDrive to report inconsistent file sizes. To use rclone with such affected files on Sharepoint, you may disable these checks with the following command line arguments: --ignore-checksum --ignore-size Alternatively, if you have write access to the OneDrive files, it may be possible to fix this problem for certain files, by attempting the steps below. Open the web interface for OneDrive and find the affected files (which will be in the error messages/log for rclone). Simply click on each of these files, causing OneDrive to open them on the web. This will cause each file to be converted in place to a format that is functionally equivalent but which will no longer trigger the size discrepancy. Once all problematic files are converted you will no longer need the ignore options above. REPLACING/DELETING EXISTING FILES ON SHAREPOINT GETS "ITEM NOT FOUND" It is a known issue that Sharepoint (not OneDrive or OneDrive for Business) may return "item not found" errors when users try to replace or delete uploaded files; this seems to mainly affect Office files (.docx, .xlsx, etc.) and web files (.html, .aspx, etc.). As a workaround, you may use the --backup-dir <BACKUP_DIR> command line argument so rclone moves the files to be replaced/deleted into a given backup directory (instead of directly replacing/deleting them). For example, to instruct rclone to move the files into the directory rclone-backup-dir on backend mysharepoint, you may use: --backup-dir mysharepoint:rclone-backup-dir ACCESS_DENIED (AADSTS65005) Error: access_denied Code: AADSTS65005 Description: Using application 'rclone' is currently not supported for your organization [YOUR_ORGANIZATION] because it is in an unmanaged state. An administrator needs to claim ownership of the company by DNS validation of [YOUR_ORGANIZATION] before the application rclone can be provisioned. This means that rclone can't use the OneDrive for Business API with your account. You can't do much about it, maybe write an email to your admins. However, there are other ways to interact with your OneDrive account. Have a look at the WebDAV backend: https://rclone.org/webdav/#sharepoint INVALID_GRANT (AADSTS50076) Error: invalid_grant Code: AADSTS50076 Description: Due to a configuration change made by your administrator, or because you moved to a new location, you must use multi-factor authentication to access '...'. If you see the error above after enabling multi-factor authentication for your account, you can fix it by refreshing your OAuth refresh token. To do that, run rclone config, and choose to edit your OneDrive backend. Then, you don't need to actually make any changes until you reach this question: Already have a token - refresh?. For this question, answer y and go through the process to refresh your token, just like the first time the backend is configured. After this, rclone should work again for this backend. INVALID REQUEST WHEN MAKING PUBLIC LINKS On Sharepoint and OneDrive for Business, rclone link may return an "Invalid request" error. A possible cause is that the organisation admin didn't allow public links to be made for the organisation/sharepoint library. To fix the permissions as an admin, take a look at the docs: 1, 2. Contents * Configuration * Getting your own Client ID and Key * Modification time and hashes * Restricted filename characters * Deleting files * Standard options * Advanced options * Limitations * Naming * File sizes * Path length * Number of files * Versions * Disabling versioning * Cleanup * Troubleshooting * Excessive throttling or blocked on SharePoint * Unexpected file size/hash differences on Sharepoint * Replacing/deleting existing files on Sharepoint gets "item not found" * access_denied (AADSTS65005) * invalid_grant (AADSTS50076) * Invalid request when making public links Share and Enjoy Twitter Facebook Reddit Links Rclone forum GitHub project Rclone slack Rclone Wiki Donate @njcw © Nick Craig-Wood 2014-2022 Source file onedrive.md last updated 2022-07-09 Website hosted on a MEMSET CLOUD VPS, uploaded with rclone and built with Hugo. Logo by @andy23.