Skip to content

can't create repository on mounted SMB #1079

@davidak

Description

@davidak

Output of restic version

restic 0.6.1
compiled with go1.8.3 on linux/amd64

How did you start restic exactly?

restic -r "/run/user/1000/gvfs/smb-share:server=10.101.65.7,share=root/Technik/dkl/test" init

What backend/server/service did you use?

local mounted SMB (Windows Server 2008R2)

Expected behavior

use like local

Actual behavior

create key in backend at /run/user/1000/gvfs/smb-share:server=10.101.65.7,share=root/Technik/dkl/test failed: chmod /run/user/1000/gvfs/smb-share:server=10.101.65.7,share=root/Technik/dkl/test/keys/48b991b9c6b13238ae763f5fdad54b81988a7b6f2217a69c3e3e1676d1136e68: operation not supported

with strace -f:

[pid 20977] pselect6(0, NULL, NULL, NULL, {0, 10000000}, NULL) = 0 (Timeout)
[pid 20977] clock_gettime(CLOCK_MONOTONIC, {1313395, 120573217}) = 0
[pid 20977] clock_gettime(CLOCK_REALTIME, {1499082967, 890687767}) = 0
[pid 20977] pselect6(0, NULL, NULL, NULL, {0, 10000000}, NULL <unfinished ...>
[pid 20981] getrandom("\267\7\241\"gFr@7\341\335\232ntF\205\0\363\345Vj,-\233\25\204\264\363d\vU\262", 32, 0) = 32
[pid 20981] getrandom("\311I)\221\370\355\213\376\360I\367\214\3539Z,", 16, 0) = 16
[pid 20981] getrandom("m\4#\251\10\36\33\3\v\314\203\v\24|ft", 16, 0) = 16
[pid 20981] getrandom(".\222\32;\3\353\31712\327FD\255'W\322", 16, 0) = 16
[pid 20981] openat(AT_FDCWD, "/etc/localtime", O_RDONLY) = 3
[pid 20981] read(3, "TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\t\0\0\0\t\0\0\0\0"..., 4096) = 2335
[pid 20981] read(3, "", 4096)           = 0
[pid 20981] close(3)                    = 0
[pid 20981] clock_gettime(CLOCK_REALTIME, {1499082967, 894900026}) = 0
[pid 20981] openat(AT_FDCWD, "/run/user/1000/gvfs/smb-share:server=10.101.65.7,share=root/Technik/dkl/test/keys/a2a6b9ba80b25a08ad46114257e32b12797fab1d82fb919fc4f5933ec9f28924", O_WRONLY|O_CREAT|O_EXCL|O_CLOEXEC, 0600 <unfinished ...>
[pid 20977] <... pselect6 resumed> )    = 0 (Timeout)
[pid 20977] clock_gettime(CLOCK_MONOTONIC, {1313395, 130755327}) = 0
[pid 20977] clock_gettime(CLOCK_REALTIME, {1499082967, 900871833}) = 0
[pid 20977] pselect6(0, NULL, NULL, NULL, {0, 10000000}, NULL <unfinished ...>
[pid 20981] <... openat resumed> )      = 3
[pid 20981] write(3, "{\"created\":\"2017-07-03T13:56:07."..., 453) = 453
[pid 20981] fsync(3)                    = 0
[pid 20981] close(3)                    = 0
[pid 20981] stat("/run/user/1000/gvfs/smb-share:server=10.101.65.7,share=root/Technik/dkl/test/keys/a2a6b9ba80b25a08ad46114257e32b12797fab1d82fb919fc4f5933ec9f28924",  <unfinished ...>
[pid 20977] <... pselect6 resumed> )    = 0 (Timeout)
[pid 20977] clock_gettime(CLOCK_MONOTONIC, {1313395, 141053163}) = 0
[pid 20977] clock_gettime(CLOCK_REALTIME, {1499082967, 911332326}) = 0
[pid 20977] pselect6(0, NULL, NULL, NULL, {0, 10000000}, NULL <unfinished ...>
[pid 20981] <... stat resumed> {st_mode=S_IFREG|0700, st_size=453, ...}) = 0
[pid 20981] fchmodat(AT_FDCWD, "/run/user/1000/gvfs/smb-share:server=10.101.65.7,share=root/Technik/dkl/test/keys/a2a6b9ba80b25a08ad46114257e32b12797fab1d82fb919fc4f5933ec9f28924", 0500) = -1 EOPNOTSUPP (Operation not supported)
[pid 20981] write(2, "create key in backend at /run/us"..., 289create key in backend at /run/user/1000/gvfs/smb-share:server=10.101.65.7,share=root/Technik/dkl/test failed: chmod /run/user/1000/gvfs/smb-share:server=10.101.65.7,share=root/Technik/dkl/test/keys/a2a6b9ba80b25a08ad46114257e32b12797fab1d82fb919fc4f5933ec9f28924: operation not supported

) = 289
[pid 20981] ioctl(1, SNDCTL_TMR_START or TCSETS, {B38400 opost isig icanon echo ...}) = 0
[pid 20981] exit_group(1)               = ?
[pid 20982] +++ exited with 1 +++
[pid 20983] +++ exited with 1 +++
[pid 20981] +++ exited with 1 +++
[pid 20980] +++ exited with 1 +++
[pid 20979] +++ exited with 1 +++
[pid 20978] +++ exited with 1 +++
[pid 20977] +++ exited with 1 +++
+++ exited with 1 +++

Steps to reproduce the behavior

  1. mount SMB gvfs-mount smb://10.101.65.7/root < /home/davidak/.smbcreds
  2. create repo there (command like above)
  3. ???
  4. get error

Do you have any idea what may have caused this?

does restic chmod the file in this step to be read only? maybe SMB don't support that?

so maybe SMB needs to be implemented as a backend.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions