[Bug 2230] New: Undocumented sftp put -r quirk: Couldn't canonicalize: No such file or directory
bugzilla-daemon at mindrot.org
bugzilla-daemon at mindrot.org
Thu Apr 17 16:55:34 EST 2014
https://bugzilla.mindrot.org/show_bug.cgi?id=2230
Bug ID: 2230
Summary: Undocumented sftp put -r quirk: Couldn't canonicalize:
No such file or directory
Product: Portable OpenSSH
Version: 6.5p1
Hardware: amd64
OS: Linux
Status: NEW
Severity: minor
Priority: P5
Component: sftp
Assignee: unassigned-bugs at mindrot.org
Reporter: parke.nexus at gmail.com
As of OpenSSH 6.5 on Ubuntu 14.04 (package version 1:6.5p1-6), there
appears to be an undocumented requirement for the sftp "put -r"
command. In order to "put -r foo", a remote directory named "foo"
must already exist.
If a remote directory named foo does not exist, the following
(confusing) error message is displayed:
sftp> put -r foo
Uploading foo/ to /home/user/test/foo
Couldn't canonicalize: No such file or directory
Unable to canonicalize path "/home/parke/test/foo"
I recommend that this requirement be documented in the sftp manpage.
I can draft language, if needed.
The error message could also be more helpful. For example: "Required
remote directory "foo" does not exist."
There is related discussion on stack exchange:
http://unix.stackexchange.com/questions/7004/uploading-directories-with-sftp
http://stackoverflow.com/questions/17477226/what-cause-the-error-couldnt-canonicalise-no-such-file-or-directory-in-sftp
----
Damien Miller on the openssh-unix-dev at mindrot.org mailing list has an
alternative suggestion for fixing this problem:
IMO the directory should be created if it doesn't exist, just like
"cp -r" does.
--
You are receiving this mail because:
You are watching the assignee of the bug.
More information about the openssh-bugs
mailing list