mirror of
https://github.com/rclone/rclone.git
synced 2026-01-04 01:23:24 +00:00
smb: backend to support SMB - fixes #2042
This commit is contained in:
@@ -162,6 +162,7 @@ WebDAV or S3, that work out of the box.)
|
||||
{{< provider name="SeaweedFS" home="https://github.com/chrislusf/seaweedfs/" config="/s3/#seaweedfs" >}}
|
||||
{{< provider name="SFTP" home="https://en.wikipedia.org/wiki/SSH_File_Transfer_Protocol" config="/sftp/" >}}
|
||||
{{< provider name="Sia" home="https://sia.tech/" config="/sia/" >}}
|
||||
{{< provider name="SMB / CIFS" home="https://en.wikipedia.org/wiki/Server_Message_Block" config="/smb/" >}}
|
||||
{{< provider name="StackPath" home="https://www.stackpath.com/products/object-storage/" config="/s3/#stackpath" >}}
|
||||
{{< provider name="Storj" home="https://storj.io/" config="/storj/" >}}
|
||||
{{< provider name="SugarSync" home="https://sugarsync.com/" config="/sugarsync/" >}}
|
||||
|
||||
@@ -69,6 +69,7 @@ See the following for detailed instructions for
|
||||
* [Seafile](/seafile/)
|
||||
* [SFTP](/sftp/)
|
||||
* [Sia](/sia/)
|
||||
* [SMB](/smb/)
|
||||
* [Storj](/storj/)
|
||||
* [SugarSync](/sugarsync/)
|
||||
* [Union](/union/)
|
||||
|
||||
@@ -50,6 +50,7 @@ Here is an overview of the major features of each cloud storage system.
|
||||
| Seafile | - | - | No | No | - | - |
|
||||
| SFTP | MD5, SHA1 ² | R/W | Depends | No | - | - |
|
||||
| Sia | - | - | No | No | - | - |
|
||||
| SMB | - | - | Yes | No | - | - |
|
||||
| SugarSync | - | - | No | No | - | - |
|
||||
| Storj | - | R | No | No | - | - |
|
||||
| Uptobox | - | - | No | Yes | - | - |
|
||||
@@ -501,6 +502,7 @@ upon backend-specific capabilities.
|
||||
| Seafile | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
|
||||
| SFTP | No | No | Yes | Yes | No | No | Yes | No | Yes | Yes |
|
||||
| Sia | No | No | No | No | No | No | Yes | No | No | Yes |
|
||||
| SMB | No | No | Yes | Yes | No | No | Yes | No | No | Yes |
|
||||
| SugarSync | Yes | Yes | Yes | Yes | No | No | Yes | Yes | No | Yes |
|
||||
| Storj | Yes † | No | Yes | No | No | Yes | Yes | No | No | No |
|
||||
| Uptobox | No | Yes | Yes | Yes | No | No | No | No | No | No |
|
||||
|
||||
231
docs/content/smb.md
Normal file
231
docs/content/smb.md
Normal file
@@ -0,0 +1,231 @@
|
||||
---
|
||||
title: "SMB / CIFS"
|
||||
description: "Rclone docs for SMB backend"
|
||||
---
|
||||
|
||||
# {{< icon "fa fa-server" >}} SMB
|
||||
|
||||
SMB is [a communication protocol to share files over network](https://en.wikipedia.org/wiki/Server_Message_Block).
|
||||
|
||||
This relies on [go-smb2 library](https://github.com/hirochachacha/go-smb2/) for communication with SMB protocol.
|
||||
|
||||
Paths are specified as `remote:sharename` (or `remote:` for the `lsd`
|
||||
command.) You may put subdirectories in too, e.g. `remote:item/path/to/dir`.
|
||||
|
||||
## Notes
|
||||
|
||||
The first path segment must be the name of the share, which you entered when you started to share on Windows. On smbd, it's the section title in `smb.conf` (usually in `/etc/samba/`) file.
|
||||
You can find shares by quering the root if you're unsure (e.g. `rclone lsd remote:`).
|
||||
|
||||
You can't access to the shared printers from rclone, obviously.
|
||||
|
||||
You can't use Anonymous access for logging in. You have to use the `guest` user with an empty password instead.
|
||||
The rclone client tries to avoid 8.3 names when uploading files by encoding trailing spaces and periods.
|
||||
Alternatively, [the local backend](/local/#paths-on-windows) on Windows can access SMB servers using UNC paths, by `\\server\share`. This doesn't apply to non-Windows OSes, such as Linux and macOS.
|
||||
|
||||
## Configuration
|
||||
|
||||
Here is an example of making a SMB configuration.
|
||||
|
||||
First run
|
||||
|
||||
rclone config
|
||||
|
||||
This will guide you through an interactive setup process.
|
||||
|
||||
```
|
||||
No remotes found, make a new one?
|
||||
n) New remote
|
||||
s) Set configuration password
|
||||
q) Quit config
|
||||
n/s/q> n
|
||||
name> remote
|
||||
Option Storage.
|
||||
Type of storage to configure.
|
||||
Choose a number from below, or type in your own value.
|
||||
XX / SMB / CIFS
|
||||
\ (smb)
|
||||
Storage> smb
|
||||
|
||||
Option host.
|
||||
Samba hostname to connect to.
|
||||
E.g. "example.com".
|
||||
Enter a value.
|
||||
host> localhost
|
||||
|
||||
Option user.
|
||||
Samba username.
|
||||
Enter a string value. Press Enter for the default (lesmi).
|
||||
user> guest
|
||||
|
||||
Option port.
|
||||
Samba port number.
|
||||
Enter a signed integer. Press Enter for the default (445).
|
||||
port>
|
||||
|
||||
Option pass.
|
||||
Samba password.
|
||||
Choose an alternative below. Press Enter for the default (n).
|
||||
y) Yes, type in my own password
|
||||
g) Generate random password
|
||||
n) No, leave this optional password blank (default)
|
||||
y/g/n> g
|
||||
Password strength in bits.
|
||||
64 is just about memorable
|
||||
128 is secure
|
||||
1024 is the maximum
|
||||
Bits> 64
|
||||
Your password is: XXXX
|
||||
Use this password? Please note that an obscured version of this
|
||||
password (and not the password itself) will be stored under your
|
||||
configuration file, so keep this generated password in a safe place.
|
||||
y) Yes (default)
|
||||
n) No
|
||||
y/n> y
|
||||
|
||||
Option domain.
|
||||
Domain name for NTLM authentication.
|
||||
Enter a string value. Press Enter for the default (WORKGROUP).
|
||||
domain>
|
||||
|
||||
Edit advanced config?
|
||||
y) Yes
|
||||
n) No (default)
|
||||
y/n> n
|
||||
|
||||
Configuration complete.
|
||||
Options:
|
||||
- type: samba
|
||||
- host: localhost
|
||||
- user: guest
|
||||
- pass: *** ENCRYPTED ***
|
||||
Keep this "remote" remote?
|
||||
y) Yes this is OK (default)
|
||||
e) Edit this remote
|
||||
d) Delete this remote
|
||||
y/e/d> d
|
||||
```
|
||||
|
||||
{{< rem autogenerated options start" - DO NOT EDIT - instead edit fs.RegInfo in backend/smb/smb.go then run make backenddocs" >}}
|
||||
### Standard options
|
||||
|
||||
Here are the Standard options specific to smb (SMB / CIFS).
|
||||
|
||||
#### --smb-host
|
||||
|
||||
SMB server hostname to connect to.
|
||||
|
||||
E.g. "example.com".
|
||||
|
||||
Properties:
|
||||
|
||||
- Config: host
|
||||
- Env Var: RCLONE_SMB_HOST
|
||||
- Type: string
|
||||
- Required: true
|
||||
|
||||
#### --smb-user
|
||||
|
||||
SMB username.
|
||||
|
||||
Properties:
|
||||
|
||||
- Config: user
|
||||
- Env Var: RCLONE_SMB_USER
|
||||
- Type: string
|
||||
- Default: "$USER"
|
||||
|
||||
#### --smb-port
|
||||
|
||||
SMB port number.
|
||||
|
||||
Properties:
|
||||
|
||||
- Config: port
|
||||
- Env Var: RCLONE_SMB_PORT
|
||||
- Type: int
|
||||
- Default: 445
|
||||
|
||||
#### --smb-pass
|
||||
|
||||
SMB password.
|
||||
|
||||
**NB** Input to this must be obscured - see [rclone obscure](/commands/rclone_obscure/).
|
||||
|
||||
Properties:
|
||||
|
||||
- Config: pass
|
||||
- Env Var: RCLONE_SMB_PASS
|
||||
- Type: string
|
||||
- Required: false
|
||||
|
||||
#### --smb-domain
|
||||
|
||||
Domain name for NTLM authentication.
|
||||
|
||||
Properties:
|
||||
|
||||
- Config: domain
|
||||
- Env Var: RCLONE_SMB_DOMAIN
|
||||
- Type: string
|
||||
- Default: "WORKGROUP"
|
||||
|
||||
### Advanced options
|
||||
|
||||
Here are the Advanced options specific to smb (SMB / CIFS).
|
||||
|
||||
#### --smb-idle-timeout
|
||||
|
||||
Max time before closing idle connections.
|
||||
|
||||
If no connections have been returned to the connection pool in the time
|
||||
given, rclone will empty the connection pool.
|
||||
|
||||
Set to 0 to keep connections indefinitely.
|
||||
|
||||
|
||||
Properties:
|
||||
|
||||
- Config: idle_timeout
|
||||
- Env Var: RCLONE_SMB_IDLE_TIMEOUT
|
||||
- Type: Duration
|
||||
- Default: 1m0s
|
||||
|
||||
#### --smb-hide-special-share
|
||||
|
||||
Hide special shares (e.g. print$) which users aren't supposed to access.
|
||||
|
||||
Properties:
|
||||
|
||||
- Config: hide_special_share
|
||||
- Env Var: RCLONE_SMB_HIDE_SPECIAL_SHARE
|
||||
- Type: bool
|
||||
- Default: true
|
||||
|
||||
#### --smb-case-insensitive
|
||||
|
||||
Whether the server is configured to be case-insensitive.
|
||||
|
||||
Always true on Windows shares.
|
||||
|
||||
Properties:
|
||||
|
||||
- Config: case_insensitive
|
||||
- Env Var: RCLONE_SMB_CASE_INSENSITIVE
|
||||
- Type: bool
|
||||
- Default: true
|
||||
|
||||
#### --smb-encoding
|
||||
|
||||
The encoding for the backend.
|
||||
|
||||
See the [encoding section in the overview](/overview/#encoding) for more info.
|
||||
|
||||
Properties:
|
||||
|
||||
- Config: encoding
|
||||
- Env Var: RCLONE_SMB_ENCODING
|
||||
- Type: MultiEncoder
|
||||
- Default: Slash,LtGt,DoubleQuote,Colon,Question,Asterisk,Pipe,BackSlash,Ctl,RightSpace,RightPeriod,InvalidUtf8,Dot
|
||||
|
||||
{{< rem autogenerated options stop >}}
|
||||
Reference in New Issue
Block a user