That's correct, omitting the path altogether will do the same. However, there is a bug in lftp - it does not follow RFC 1738 for ftps URL scheme. It will be fixed in the next version.
пн, 26 авг. 2019 г. в 18:26, Kevin R. Bulgrien <kev...@systemsdesignusa.com >: > Thanks, yes, a tilde following works as desired, however, I feel somewhat > disappointed that I didn't previously think about simply dropping the > trailing slash from the URL. For example: > > ftps://server.example.net vs. ftps://server.example.net/ > > -- > > Kevin R. Bulgrien > > ------------------------------ > > *From: *"Alexander Lukyanov" <lavv...@gmail.com> > *To: *"Kevin R. Bulgrien" <kev...@systemsdesignusa.com> > *Cc: *"LFTP Mailing List" <lftp@uniyar.ac.ru> > *Sent: *Saturday, August 24, 2019 4:39:21 AM > *Subject: *Re: [lftp] lftp issued “CWD /” results in error message but > the transfer does not fail > > Try adding a tilde at the end of url. > > пт, 23 авг. 2019, 18:30 Kevin R. Bulgrien <kev...@systemsdesignusa.com>: > >> In a scripted and automated process, it seems beneficial to avoid >> generating unwanted error messages that do not indicate an actual >> fault, if only to avoid confusion when someone looks at the logs. >> >> Given an lftp command similar to the following: >> >> lftp -vv -d -c set ssl:ca-file /path/to/cert/ftps_cron-bundle.crt; set >> ssl:check-hostname no; set ftp:ssl-protect-data true; set >> sftp:connect-program "ssh -a -x -o PubkeyAuthentication=no"; set >> net:max-retries 2; open -e 'put /path/to/data/upload.txt;' -u >> username:password ftps://server.example.net/ >> >> The command template works on various servers, but, on one server, >> even though the upload is successful, an error message is shown: >> >> ---- CWD path to be sent is `/' >> <--- 200 Command OPTS succeed >> ---> CWD / >> <--- 550 Permission denied >> cd: Access failed: 550 Permission denied (/) >> >> How does one prevent lftp from sending CWD / to this server >> >> <--- 230 User logged in >> ---> FEAT >> <--- 211-Extensions supported >> <--- SIZE >> <--- XMD5 >> <--- XSHA1 >> <--- XSHA256 >> <--- XSHA512 >> <--- XQUOTA >> <--- LANG EN, ES, FR, GE >> <--- MDTM >> <--- MLST size*;type*;perm*;create*;modify*; >> <--- REST STREAM >> <--- TVFS >> <--- UTF8 >> <--- AUTH SSL;TLS-P; >> <--- PBSZ >> <--- PROT C;P; >> <--- 211 end >> ---> PWD >> <--- 257 "/username/folder" is current directory >> ---> PBSZ 0 >> <--- 200 PBSZ=0 >> ---> PROT P >> <--- 200 PRIVATE data channel protection level set >> ---> LANG >> <--- 200 Default languages set to EN >> ---> OPTS UTF8 ON >> <--- 200 Command OPTS succeed >> ---> OPTS MLST size;type;perm;modify; >> ---- CWD path to be sent is `/' >> >> Note that the server automatically sets its default upload >> directory based on the username... i.e. /username/folder >> >> The upload should go to this default upload directory without >> generating an error message. It does get uploaded, but the >> log shows the error message: >> >> cd: Access failed: 550 Permission denied (/) >> ---> TYPE I >> <--- 200 Transfer mode set to BINARY >> ---> PASV >> <--- 227 Entering Passive Mode (10,10,35,21,195,225). >> ---- Address returned by PASV seemed to be incorrect and has been fixed >> ---- Connecting data socket to (nnn.nnn.nnn.nnn) port 50145 >> ---- Data connection established >> ---> ALLO 148891 >> <--- 200 Command ALLO succeed >> ---> STOR upload.txt >> <--- 150 Uploading in BINARY file upload.txt >> Certificate: ... >> Issued by: ... >> Trusted >> WARNING: Certificate verification: hostname checking disabled >> ---- Closing data socket >> <--- 226 Transfer completed >> ---> SITE UTIME 20190819100016 upload.txt >> <--- 550 Command SITE failed >> ---> QUIT >> ---- Closing control socket >> >> A number of things have been tried. For example, using various >> paths with the put command. >> >> * put -O . /path/to/data/upload.txt >> * put -O /username/folder /path/to/data/upload.txt >> >> Explicitly placing a cd /username/folder command was also attempted. >> >> Removing -vv and -d are ineffective as well. >> >> How can lftp be made to avoid automatically issuing the "CWD /" >> that causes the unwanted and confusing error message that does >> not mean an operation intended by the user actually failed? >> >> Alternatively, as opposed to stopping the issuance of the "CWD /", >> how might one at least suppress its being treated as an error >> without also suppressing real errors? >> >> Experienced on RHEL 7: >> >> $ lftp --version >> LFTP | Version 4.4.8 | Copyright (c) 1996-2013 Alexander V. Lukyanov >> ... >> Libraries used: Readline 6.2 >> >> -- >> >> Kevin R. Bulgrien >> _______________________________________________ >> lftp mailing list >> lftp@uniyar.ac.ru >> http://univ.uniyar.ac.ru/mailman/listinfo/lftp >> > > _______________________________________________ > lftp mailing list > lftp@uniyar.ac.ru > http://univ.uniyar.ac.ru/mailman/listinfo/lftp > -- Alexander.
_______________________________________________ lftp mailing list lftp@uniyar.ac.ru http://univ.uniyar.ac.ru/mailman/listinfo/lftp