fuseftp-cli 0.1.0

CLI for mounting FTP servers as local filesystems
fuseftp-cli-0.1.0 is not a library.

fuseftp-cli

Command-line tool for mounting FTP servers as FUSE filesystems.

Installation

cargo build --release
sudo install target/release/fuseftp /usr/local/bin/

Usage

fuseftp [OPTIONS] <ADDRESS> <TARGET>

Unless --auto-unmount is passed, the filesystem must be manually unmounted with umount(8) after the process terminates.

The ADDRESS argument specifies the FTP server, optionally with a port (e.g., ftp.example.com:2121). If no port is specified, a default of 21 or 990 is used depending on security type.

The TARGET argument specifies where to mount the filesystem. This is typically a directory path, which will be created if it does not exist. Alternatively, a file descriptor path (/dev/fd/N) can be passed for socket activation.

Options

Option Description
-u, --user <USER> Username (anonymous login when omitted)
--password-file <PATH> Read password from file
--password-stdin Read password from stdin
-s, --security <MODE> plain, explicit (default), or implicit
-m, --connection-mode <MODE> active, passive (default), or extended-passive
-t, --timeout <SECONDS> Connection timeout (default: 30, 0 to disable)
-v, --verbose Show connection and mount progress
-d, --debug Show detailed internal operations
--allow-write Allow write access
--allow-exec Allow execution of binaries
--access <MODE> Who can access the mount: private (default), root, or all
--auto-unmount Unmount when the process exits
--check-permissions Enable kernel permission checking
-h, --help Print help message and exit
--version Print version information and exit

Examples

# Anonymous mount
fuseftp ftp.example.com /mnt/ftp

# Authenticated mount
fuseftp --user myuser --password-stdin ftp.example.com /mnt/ftp

# Read-write with verbose logging
fuseftp --allow-write --verbose ftp.example.com /mnt/ftp

# Implicit FTPS (defaults to port 990)
fuseftp --security implicit ftps.example.com /mnt/ftps

# Custom port
fuseftp ftp.example.com:2121 /mnt/ftp

Related Crates

License

MIT or Apache-2.0