Skip to content

Instantly share code, notes, and snippets.

@gaubert
Created February 11, 2011 08:56
Show Gist options
  • Star 33 You must be signed in to star a gist
  • Fork 15 You must be signed in to fork a gist
  • Save gaubert/822090 to your computer and use it in GitHub Desktop.
Save gaubert/822090 to your computer and use it in GitHub Desktop.
~/.lftp.rc parameters detailed
########## SETTINGS
# On startup, lftp executes ~/.lftprc and ~/.lftp/rc. You can place aliases and 'set' commands
# there. Some people prefer to see full protocol debug, use 'debug' to turn the debug on.
# Certain commands and settings take a time interval parameter. It has the format Nx[Nx...], where N is time amount
# (floating point) and x is time unit: d - days, h - hours, m - minutes, s - seconds. Default unit is second. E.g.
# 5h30m or 5.5h. Also the interval can be 'infinity', 'inf', 'never', 'forever' - it means infinite interval. E.g.
# 'sleep forever' or 'set dns:cache-expire never'.
# The name of a variable can be abbreviated unless it becomes ambiguous. The prefix before ':' can be omitted too.
# You can set one variable several times for different closures, and thus you can get a particular settings for
# particular state. The closure is to be specified after variable name separated with slash '/'.
# The closure for 'dns:', 'net:', 'ftp:', 'http:', 'hftp:' domain variables is currently just the host name as you
# specify it in the 'open' command (with some exceptions where closure is meaningless, e.g. dns:cache-size). For
# some 'cmd:' domain variables the closure is current URL without path. For other variables it is not currently
# used. See examples in the sample lftp.conf.
# Boolean settings can be one of (true, on, yes, 1, +) for a True value or one of (false, off, no, 0, -) for a False
# value.
# There is also a system-wide startup file in /etc/lftp.conf. It can be in different directory, see FILES section.
# lftp has the following settable variables (you can also use 'set -a' to see all variables and their values):
# save plain text passwords in ~/.lftp/bookmarks on 'bookmark add' command. Off by default.
set bmk:save-passwords no
# The commands in string are executed before lftp exits.
set cmd:at-exit "bye"
# enables csh-like history expansion.
set cmd:csh-history no
#The value is used when 'open' is used with just host name without protocol. Default is 'ftp'.
set cmd:default-protocol ftp
# if true, exit when an unconditional (without || and && at begin) command fails.
set cmd:fail-exit no
# time of command execution, which is considered as 'long' and a beep is done before next prompt. 0 means off.
set cmd:long-running 1
# default ls argument
set cmd:ls-default "ls -lh"
# when false, lftp refuses to go to background when exiting. To force it, use 'exit bg'.
set cmd:move-background yes
# The prompt. lftp recognizes the following backslash-escaped special characters that are decoded as follows:
# \@
# insert @ if current user is not default
# \a
# an ASCII bell character (07)
# \e
# an ASCII escape character (033)
# \h
# the hostname you are connected to
# \n
# newline
# \s
# the name of the client (lftp)
# \S
# current slot name
# \u
# the username of the user you are logged in as
# \U
# the URL of the remote site (e.g., ftp://g437.ub.gu.se/home/james/src/lftp)
# \v
# the version of lftp (e.g., 2.0.3)
# \w
# the current working directory at the remote site
# \W
# the base name of the current working directory at the remote site
# \nnn
# the character corresponding to the octal number nnn
# \\
# a backslash
# \?
# skips next character if previous substitution was empty.
# \[
# begin a sequence of non-printing characters, which could be used to embed a terminal control sequence into the
# prompt
# \]
# end a sequence of non-printing characters
set cmd:prompt "\\[\\e[1;30m\\][\\[\\e[0;34m\\]f\\[\\e[1m\\]t\\[\\e[37m\\]p\\[\\e[30m\\]] \\[\\e[34m\\]\\u\\[\\e[0;34m\\]\\@\\[\\e[1m\\]\\h\\[\\e[1;30m\\]:\\[\\e[1;34m\\]\\w\\[\\e[1;30m\\]>\\[\\e[0m\\]"
# Number of jobs run in parallel in non-interactive mode. For example, this may be useful for scripts with
# multiple 'get' commands. Note that setting this to a value greater than 1 changes conditional execution behaviour,
# basically makes it inconsistent.
set cmd:parallel 1
# Number of jobs run in parallel in a queue.
set cmd:queue-parallel 1
# This setting is the default value for cls --time-style option.
set cmd:time-style "%b %e %Y|%b %e %H:%M"
# When false, empty listings are not cached.
set cache:cache-empty-listings false
# When false, cache is disabled.
set cache:enable yes
# Positive cache entries expire in this time interval.
set cache:expire 1h
# Negative cache entries expire in this time interval.
set cache:expire-negative 1h
# Maximum cache size. When exceeded, oldest cache entries will be removed from cache.
set cache:size 512
# a boolean to control whether or not lftp uses remote completion.
set cmd:remote-completion yes
# if true, lftp resolves host name immediately in 'open' command. It is also possible to skip the check for a
# single 'open' command if '&' is given, or if ^Z is pressed during the check.
set cmd:verify-host yes
# if true, lftp checks the path given in 'cd' command. It is also possible to skip the check for a single 'cd'
# command if '&' is given, or if ^Z is pressed during the check. Examples:
set cmd:verify-path no
# When false, 'cd' to a directory known from cache as existent will succeed immediately. Otherwise the
# verification will depend on cmd:verify-path setting.
set cmd:verify-path-cached no
# query for SRV records and use them before gethostbyname. The SRV records are only used if port is not explicitly
# specified. See RFC2052 for details.
set dns:SRV-query no
# enable DNS cache. If it is off, lftp resolves host name each time it reconnects.
set dns:cache-enable yes
# time to live for DNS cache entries. It has format <number><unit>+, e.g. 1d12h30m5s or just 36h. To disable
# expiration, set it to 'inf' or 'never'.
set dns:cache-expire 1h
# maximum number of DNS cache entries.
set dns:cache-size 512
# limit the time for DNS queries. If DNS server is unavailable too long, lftp will fail to resolve a given host
# name. Set to 'never' to disable.
set dns:fatal-timeout never
# sets the order of DNS queries. Default is ''inet6 inet'' which means first look up address in inet6 family, then
# inet and use them in that order. To disable inet6 (AAAA) lookup, set this variable to ''inet''.
set dns:order "inet6 inet"
# if true, lftp will fork before resolving host address. Default is true.
set dns:use-fork yes
# If zero, there is no limit on the number of times lftp will try to lookup an address. If > 0, lftp will try only
# this number of times to look up an address of each address family in dns:order.
set dns:max-retries 1000
# local character set. It is set from current locale initially.
set file:charset utf-8
# the character set used by fish server in requests, replies and file listings. Default is empty which means the
# same as local.
set fish:charset utf-8
# the program to use for connecting to remote server. It should support '-l' option for user name, '-p' for port
# number. Default is 'ssh -a -x'. You can set it to 'rsh', for example.
set fish:connect-program "ssh -a -x"
# use specified shell on server side. Default is /bin/sh. On some systems, /bin/sh exits when doing cd to a
# non-existent directory. lftp can handle that but it has to reconnect. Set it to /bin/bash for such systems if bash
# is installed.
set fish:shell /bin/sh
# Send this string in ACCT command after login. The result is ignored. The closure for this setting has format
# user@host.
set ftp:acct "!@!"
# sets the password used for anonymous ftp access authentication. Default is "-name@", where name is the username
# of the user running the program.
set ftp:anon-pass ""
# sets the user name used for anonymous ftp access authentication. Default is "anonymous".
set ftp:anon-user "anonymous"
# if first server message matches this regex, turn on sync mode for that host.
set ftp:auto-sync-mode "Microsoft FTP Service|MadGoat"
# the character set used by ftp server in requests, replies and file listings. Default is empty which means the
# same as local. This setting is only used when the server does not support UTF8.
set ftp:charset "UTF-8"
# the name of ftp client to send with CLNT command, if supported by server. If it is empty, then no CLNT command
# will be sent.
set ftp:client fart-ftp.v3
# bind data socket to the interface of control connection (in passive mode). Default is true, exception is the
# loopback interface.
set ftp:bind-data-socket yes
# if true, lftp will try to correct address returned by server for PASV command in case when server address is in
# public network and PASV returns an address from a private network. In this case lftp would substitute server
# address instead of the one returned by PASV command, port number would not be changed. Default is true.
set ftp:fix-pasv-address yes
# if true, lftp will try to set up source ftp server in passive mode first, otherwise destination one. If first
# attempt fails, lftp tries to set them up the other way. If the other disposition fails too, lftp falls back to
# plain copy. See also ftp:use-fxp.
set ftp:fxp-passive-source yes
# initial directory. Default is empty string which means auto. Set this to '/' if you don't like the look of %2F
# in ftp URLs. The closure for this setting has format user@host.
set ftp:home "/"
# If true, lftp uses control connection address instead of the one returned in PASV reply for data connection.
# This can be useful for broken NATs. Default is false.
set ftp:ignore-pasv-address yes
# if set to false, empty lists from LIST command will be treated as incorrect, and another method (NLST) will be used.
set ftp:list-empty-ok yes
# sets options which are always appended to LIST command. It can be useful to set this to '-a' if server does not
# show dot (hidden) files by default. Default is empty.
set ftp:list-options "-a"
# delay between NOOP commands when downloading tail of a file. This is useful for ftp servers which send "Transfer
# complete" message before flushing data transfer. In such cases NOOP commands can prevent connection timeout.
set ftp:nop-interval 60
# sets passive ftp mode. This can be useful if you are behind a firewall or a dumb masquerading router. In passive
# mode lftp uses PASV command, not the PORT command which is used in active mode. In passive mode lftp itself makes
# the data connection to the server; in active mode the server connects to lftp for data transfer. Passive mode is
# the default.
set ftp:passive-mode yes
# specifies an IPv4 address to send with PORT command. Default is empty which means to send the address of local
# end of control connection.
set ftp:port-ipv4 <your-ip>
# allowed port range for active mode. Format is min-max, or 'full' or 'any' to indicate any port. Default is 'full'.
set ftp:port-range <start-end>
# specifies ftp proxy to use. To disable proxy set this to empty string. Note that it is an ftp proxy which uses
# ftp protocol, not ftp over http. Default value is taken from environment variable ftp_proxy if it starts with
# ''ftp://''. If your ftp proxy requires authentication, specify user name and password in the URL. If ftp:proxy
# starts with http:// then hftp protocol (ftp over http proxy) is used instead of ftp automatically.
# set ftp:proxy (URL)
# When set to ''joined'', lftp sends ''user@proxy_user@ftp.example.org'' as user name to proxy, and
# ''password@proxy_password'' as password.
# When set to ''joined-acct'', lftp sends ''user@ftp.example.org proxy_user'' as user name to proxy. The site
# password is sent as usual and the proxy password is expected in the following ACCT command.
# When set to ''open'', lftp first sends proxy user and proxy password and then ''OPEN ftp.example.org'' followed
# by ''USER user''. The site password is then sent as usual.
# When set to ''user'' (default), lftp first sends proxy user and proxy password and then
# ''user@ftp.example.org'' as user name. The site password is then sent as usual.
# set ftp:proxy-auth-type (string)
# allow usage of REST command before LIST command. This might be useful for large directories, but some ftp
# servers silently ignore REST before LIST.
set ftp:rest-list yes
# if false, lftp will not try to use REST before STOR. This can be useful for some buggy servers which corrupt
# (fill with zeros) the file if REST followed by STOR is used.
set ftp:rest-stor yes
# Retry on server reply 530 for PASS command if text matches this regular expression. This setting should be
# useful to distinguish between overloaded server (temporary condition) and incorrect password (permanent condition).
set ftp:retry-530 "too many|overloaded|try (again |back )?later|is restricted to|maximum number|number of connect|only.*session.*allowed|more connection|already connected"
# Additional regular expression for anonymous login, like ftp:retry-530.
set ftp:retry-530-anonymous "Login incorrect"
# Send this string in SITE GROUP command after login. The result is ignored. The closure for this setting has
# format user@host.
# set ftp:site-group "user@host"
# allow sending skey/opie reply if server appears to support it. On by default.
set ftp:skey-allow yes
# do not send plain text password over the network, use skey/opie instead. If skey/opie is not available, assume
# failed login. Off by default.
set ftp:skey-force no
# if true, try to negotiate SSL connection with ftp server for non-anonymous access. Default is true. This and
# other ssl settings are only available if lftp was compiled with an ssl/tls library.
set ftp:ssl-allow yes
# if true, lftp loads ssl:key-file for protected data connection too. When false, it does not, and the server can
# match data and control connections by session ID. Default is true.
# if true, refuse to send password in clear when server does not support SSL. Default is false.
set ftp:ssl-force yes
# if true, request ssl connection for data transfers. This is cpu-intensive but provides privacy. Default is false.
set ftp:ssl-protect-data yes
# if true, request ssl connection for data transfer between two ftp servers in FXP mode. CPSV or SSCN command will
# be used in that case. If ssl connection fails for some reason, lftp would try unprotected FXP transfer unless
# ftp:ssl-force is set for any of the two servers. Default is false.
set ftp:ssl-protect-fxp yes
# if true, request ssl connection for file list transfers. Default is true.
set ftp:ssl-protect-list yes
# if true, lftp would issue CCC command after logon, thus disable ssl protection layer on control connection.
set ftp:ssl-use-ccc no
# interval between STAT commands. Default is 1 second.
set ftp:stat-interval 1
# if true, lftp will send one command at a time and wait for response. This might be useful if you are using a
# buggy ftp server or router. When it is off, lftp sends a pack of commands and waits for responses - it speeds up
# operation when round trip time is significant. Unfortunately it does not work with all ftp servers and some
# routers have troubles with it, so it is on by default.
set ftp:sync-mode yes
# Assume this timezone for time in listings returned by LIST command. This setting can be GMT offset
# [+|-]HH[:MM[:SS]] or any valid TZ value (e.g. Europe/Moscow or MSK-3MSD,M3.5.0,M10.5.0/3). The default is GMT. Set
# it to an empty value to assume local timezone specified by environment variable TZ.
set ftp:timezone "EDT"
# if false, lftp does not send ABOR command but closes data connection immediately.
set ftp:use-abor yes
# when true (default), lftp sends ALLO command before uploading a file.
set ftp:use-allo yes
# when true (default), lftp uses FEAT command to determine extended features of ftp server.
set ftp:use-feat true
# if true, lftp will try to set up direct connection between two ftp servers.
set ftp:use-fxp no
# when ftp:proxy points to an http proxy, this setting selects hftp method (GET, HEAD) when true, and CONNECT
# method when false. Default is true.
set ftp:use-hftp no
# the language selected with LANG command, if supported as indicated by FEAT response. Default is empty which
# means server default.
set ftp:lang true
# when true (default), lftp uses MDTM command to determine file modification time.
set ftp:use-mdtm no
# when true, lftp uses two argument MDTM command to set file modification time on uploaded files. Default is false.
set ftp:use-mdtm-overloaded no
# when true, lftp sends 'SITE IDLE' command with net:idle argument. Default is false.
set ftp:use-site-idle no
# when true, lftp sends 'SITE UTIME' command to set file modification time on uploaded files. Default is true.
set ftp:use-site-utime yes
# when true, lftp sends 2-argument `SITE UTIME' command to set file modification time on uploaded files.
# Default is true. If 5-argument `SITE UTIME' is also enabled, 2-argument command is tried first.
set ftp:use-site-utime2 yes
# when true (default), lftp uses SIZE command to determine file size.
set ftp:use-size yes
# if true, lftp sends STAT command in FXP mode transfer to know how much data has been transferred. See also
# ftp:stat-interval. Default is true.
set ftp:use-stat yes
# when true, lftp uses STAT instead of LIST command. By default '.' is used as STAT argument. Using STAT, lftp
# avoids creating data connection for directory listing. Some servers require special options for STAT, use
# ftp:list-options to specify them (e.g. -la).
set ftp:use-stat-for-list yes
# when true (default), lftp uses TELNET IAC command and follows TELNET protocol as specified in RFC959. When
# false, it does not follow TELNET protocol and thus does not double 255 (0xFF, 0377) character and does not prefix
# ABOR and STAT commands with TELNET IP+SYNCH signal.
set ftp:use-telnet-iac no
# if true, lftp sends QUIT before disconnecting from ftp server. Default is true.
set ftp:use-quit yes
# verify that data connection comes from the network address of control connection peer. This can possibly prevent
# data connection spoofing which can lead to data corruption. Unfortunately, this can fail for certain ftp servers
# with several network interfaces, when they do not set outgoing address on data socket, so it is disabled by
# default.
set ftp:verify-address yes
# verify that data connection has port 20 (ftp-data) on its remote end. This can possibly prevent data connection
# spoofing by users of remote host. Unfortunately, too many windows and even unix ftp servers forget to set proper
# port on data connection, thus this check is off by default.
set ftp:verify-port yes
# disconnect after closing data connection. This can be useful for totally broken ftp servers. Default is false.
set ftp:web-mode no
# specifies initial PROT setting for FTPS connections. Should be one of: C, S, E, P, or empty. Default is empty
# which means unknown, so that lftp will use PROT command unconditionally. If PROT command turns out to be
# unsupported, then Clear mode would be assumed.
set ftps:initial-prot "E"
# allow server/proxy side caching for ftp-over-http protocol.
set hftp:cache no
# specify corresponding HTTP request header.
# hftp:cache-control (string)
# specifies http proxy for ftp-over-http protocol (hftp). The protocol hftp cannot work without a http proxy,
# obviously. Default value is taken from environment variable ftp_proxy if it starts with ''http://'', otherwise
# from environment variable http_proxy. If your ftp proxy requires authentication, specify user name and password in the URL.
# hftp:proxy (URL)
# if set to off, lftp will send password as part of URL to the proxy. This may be required for some proxies (e.g.
# M-soft). Default is on, and lftp will send password as part of Authorization header.
# set hftp:use-authorization (boolean)
# if set to off, lftp will try to use 'GET' instead of 'HEAD' for hftp protocol. While this is slower, it may
# allow lftp to work with some proxies which don't understand or mishandle ''HEAD ftp://'' requests.
# set hftp:use-head (boolean)
# if set to off, lftp will try to use 'PUT' instead of 'MKCOL' to create directories with hftp protocol. Default
# is off.
# set hftp:use-mkcol (boolean)
# if set to off, lftp will not try to use 'PROPFIND' to get directory contents with hftp protocol and use 'GET'
# instead. Default is off.
# set hftp:use-propfind (boolean)
# If set to off, lftp won't try to append ';type=' to URLs passed to proxy. Some broken proxies don't handle it
# correctly. Default is on.
# http:accept, http:accept-charset, http:accept-language (string)
# specify corresponding HTTP request headers.
# set hftp:use-type (boolean)
# the authorization to use by default, when no user is specified. The format is ''user:password''. Default is
# empty which means no authorization.
set http:authorization "user:password"
# allow server/proxy side caching.
set http:cache no
# specify corresponding HTTP request header.
set http:cache-control ""
# send this cookie to server. A closure is useful here: set cookie/www.somehost.com "param=value"
# http:post-content-type (string)
# specifies value of Content-Type http request header for POST method. Default is
# ''application/x-www-form-urlencoded''.
# set http:cookie (string)
# specifies http proxy. It is used when lftp works over http protocol. Default value is taken from environment
# variable http_proxy. If your proxy requires authentication, specify user name and password in the URL.
# set http:proxy (URL)
# specifies which http method to use on put.
# set http:put-method (PUT or POST)
# specifies value of Content-Type http request header for PUT method.
# set http:put-content-type (string)
# specifies value for Referer http request header. Single dot '.' expands to current directory URL. Default is
# '.'. Set to empty string to disable Referer header.
set http:referer "."
# if true, lftp modifies http:cookie variables when Set-Cookie header is received.
set http:set-cookie no
# if set to off, lftp will try to use 'PUT' instead of 'MKCOL' to create directories with http protocol. Default is on.
set http:use-mkcol on
# if set to off, lftp will not try to use 'PROPFIND' to get directory contents with http protocol and use 'GET'
# instead. Default is on.
set http:use-propfind on
# the string lftp sends in User-Agent header of HTTP request.
set http:user-agent "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0)"
# specifies https proxy. Default value is taken from environment variable https_proxy.
# set https:proxy
# when true, mirror will dereference symbolic links by default. You can override it by --no-dereference option.
# Default if false.
# set mirror:dereference (boolean)
# specifies default exclusion pattern. You can override it by --include option.
# set mirror:exclude-regex (regex)
# specifies default inclusion pattern. It is used just after mirror:exclude-regex is applied. It is never used if mirror:exclude-regex is empty.
# set mirror:include-regex (regex)
# set mirror:order (list of patterns)
# specifies order of file transfers. E.g. setting this to "*.sfv *.sum" makes mirror to transfer files matching
# *.sfv first, then ones matching *.sum and then all other files. To process directories after other files, add "*/"
# to end of pattern list.
# if true, mirror will start processing of several directories in parallel when it is in parallel mode. Otherwise,
# it will transfer files from a single directory before moving to other directories.
# set mirror:parallel-directories (boolean)
# specifies number of parallel transfers mirror is allowed to start. Default is 1. You can override it with
# --parallel option.
# set mirror:parallel-transfer-count (number)
# When set to off, mirror won't try to copy file and directory permissions. You can override it by --perms option.
# Default is on.
# set mirror:set-permissions (boolean)
# specifies -n option for pget command used to transfer every single file under mirror. Default is 1 which disables pget.
set mirror:use-pget-n 0
# colon separated list of directories to look for modules. Can be initialized by environment variable
# LFTP_MODULE_PATH. Default is 'PKGLIBDIR/VERSION:PKGLIBDIR'.
# set module:path (string)
# maximum number of concurrent connections to the same site. 0 means unlimited.
set net:connection-limit 2
# if true, foreground connections have priority over background ones and can interrupt background transfers to
# complete a foreground operation.
set net:connection-takeover yes
# disconnect from server after this idle time. Default is 3 minutes. Setting is in seconds.
# set net:idle 500 # let the server deal with idle time
# limit transfer rate on data connection. 0 means unlimited. You can specify two numbers separated by colon to
# limit download and upload rate separately.
set net:limit-rate 0
# limit accumulating of unused limit-rate. 0 means unlimited.
set net:limit-max 0
# limit transfer rate of all connections in sum. 0 means unlimited. You can specify two numbers separated by colon
# to limit download and upload rate separately. Note that sockets have receive buffers on them, this can lead to
# network link load higher than this rate limit just after transfer beginning. You can try to set net:socket-buffer to
# relatively small value to avoid this.
set net:limit-total-rate 0
# limit accumulating of unused limit-total-rate. 0 means unlimited.
set net:limit-total-max 0
# the maximum number of sequential retries of an operation without success. 0 means unlimited.
set net:max-retries 10
# contains comma separated list of domains for which proxy should not be used. Default is taken from environment
# variable no_proxy.
# set net:no-proxy (string)
# ignore this number of hard errors. Useful to login to buggy ftp servers which reply 5xx when there is too many users.
set net:persist-retries 5
# sets the base minimal time between reconnects. Actual interval depends on net:reconnect-interval-multiplier and
# number of attempts to perform an operation.
set net:reconnect-interval-base 60
# sets maximum reconnect interval. When current interval after multiplication by net:reconnect-interval-multiplier
# reachs this value (or exceeds it), it is reset back to net:reconnect-interval-base.
set net:reconnect-interval-max 60
# sets multiplier by which base interval is multiplied each time new attempt to perform an operation fails. When
# the interval reachs maximum, it is reset to base value. See net:reconnect-interval-base and
# net:reconnect-interval-max.
# set net:reconnect-interval-multiplier (real number)
# bind all IPv4 sockets to specified address. This can be useful to select a specific network interface to use.
# Default is empty which means not to bind IPv4 sockets, operating system will choose an address automatically using
# routing table.
set net:socket-bind-ipv4 192.168.76.150
# the same for IPv6 sockets.
# set net:socket-bind-ipv6 (ipv6 address)
# use given size for SO_SNDBUF and SO_RCVBUF socket options. 0 means system default.
set net:socket-buffer 0
# use given size for TCP_MAXSEG socket option. Not all operating systems support this option, but linux does
set net:socket-maxseg 0
# sets the network protocol timeout.
set net:timeout 5
# default number of chunks to split the file to in pget.
# set pget:default-n (number)
# save pget transfer status this often. Set to 'never' to disable saving of the status file. The status is saved
# to a file with suffix .lftp-pget-status.
# pget:save-status (time interval)
# the character set used by sftp server in file names and file listings. Default is empty which means the same as
# local. This setting is only used for sftp protocol version prior to 4. Version 4 and later always use UTF-8.
set sftp:charset "utf-8"
# set program to use for connecting to remote server. It should support '-l' option for user name, '-p' for port
# number. Default is 'ssh -a -x'. You can set it to 'rsh', for example.
set sftp:connect-program "ssh -a -x"
# The maximum number of unreplied packets in flight. If round trip time is significant, you should increase this
# and size-read/size-write. Default is 16.
set sftp:max-packets-in-flight 16
# The protocol number to negotiate. Default is 4. The actual protocol version used depends on server.
set sftp:protocol-version 2
# The server program implementing SFTP protocol. If it does not contain a slash '/', it is considered a ssh2
# subsystem and -s option is used when starting connect-program. Default is 'sftp'. You can use rsh as transport
# level protocol like this:
set sftp:server-program "/usr/lib64/misc/sftp-server"
# set sftp:connect-program rsh
# set sftp:server-program /usr/libexec/openssh/sftp-server
# Similarly you can run sftp over ssh1.
# Block size for reading. Default is 0x8000.
set sftp:size-read 0x8000
# Block size for writing. Default is 0x8000.
set sftp:size-write 0x8000
# use specified file as Certificate Authority certificate.
# set ssl:ca-file (path to file)
# when true, lftp checks if the host name used to connect to the server corresponds to the host name in its
# certificate.
set ssl:check-hostname yes
# set ssl:ca-path (path to directory)
# use specified directory as Certificate Authority certificate repository.
#set ssl:ca-path "/etc/ssl/certs/"
# use specified file as Certificate Revocation List certificate.
# set ssl:crl-file (path to file)
# use specified directory as Certificate Revocation List certificate repository.
# set ssl:crl-path (path to directory)
# set specified file as your private key.
# set ssl:key-file (path to file)
# use specified file as your certificate.
# set ssl:cert-file (path to file)
# if set to yes, then verify server's certificate to be signed by a known Certificate Authority and not be on
# Certificate Revocation List.
set ssl:verify-certificate no
# if this setting is off, get commands will not overwrite existing files and generate an error instead. Default is on.
set xfer:clobber on
# This setting is used as default -O option for get and mget commands. Default is empty, which means current
# directory (no -O option).
set xfer:destination-directory "/home/user/path/to/your/stuff"
# the period over which weighted average rate is calculated to produce ETA.
set xfer:eta-period 3
# show terse ETA (only high order parts). Default is true.
set xfer:eta-terse yes
# when true, lftp logs transfers to ~/.lftp/transfer_log.
set xfer:log yes
# maximum number of redirections. This can be useful for downloading over HTTP. 0 prohibits redirections.
set xfer:max-redirections 0
# the period over which weighted average rate is calculated to be shown.
set xfer:rate-period 3
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment