diff --git a/technology/linux/filesystems/SSHFS.md b/technology/linux/filesystems/SSHFS.md index b2a393f..1046523 100644 --- a/technology/linux/filesystems/SSHFS.md +++ b/technology/linux/filesystems/SSHFS.md @@ -1,7 +1,9 @@ --- arch-wiki: https://wiki.archlinux.org/title/SSHFS obj: filesystem +rev: 2024-08-26 --- + # SSHFS SSHFS is a FUSE Filesystem based on the [SSH](../../applications/network/SSH.md) and SFTP Protocol. @@ -17,10 +19,30 @@ user@host:/remote/path /local/path fuse.sshfs noauto,x-systemd.automount,_netde ``` ## Options -``` --p [PORT] - SSH Port --C - Compression --o reconnect - reconnect --o idmap=TYPE - TYPE = none, user, file | Map UID and GIDs --o follow_symlinks - Symlinks -``` \ No newline at end of file +| Option | Description | +| ------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `-p PORT` | SSH Port, equivalent to `-o port=PORT` | +| `-f` | do not daemonize, stay in foreground. | +| `-s` | Single threaded operation. | +| `-C` | Enable Compression, equivalent to `-o compression=yes` | +| `-F ssh_configfile` | specifies alternative ssh configuration file | +| `-o reconnect` | automatically reconnect to server if connection is interrupted. Attempts to access files that were opened before the reconnection will give errors and need to be re-opened. | +| `-o delay_connect` | Don't immediately connect to server, wait until mountpoint is first accessed. | +| `-o sshfs_sync` | synchronous writes. This will slow things down, but may be useful in some situations. | +| `-o no_readahead` | Only read exactly the data that was requested, instead of speculatively reading more to anticipate the next read request. | +| `-o sync_readdir` | synchronous readdir. This will slow things down, but may be useful in some situations. | +| `-o idmap=TYPE` | How to map remote UID/GIDs to local values. `none`: no translation of the ID space (default). `user`: map the UID/GID of the remote user to UID/GID of the mounting user. `file`: translate UIDs/GIDs based upon the contents of `--uidfile` and `--gidfile`. | +| `-o uidfile=FILE` | file containing username:uid mappings for `-o idmap=file` | +| `-o gidfile=FILE` | file containing groupname:gid mappings for `-o idmap=file` | +| `-o ssh_command=CMD` | execute CMD instead of 'ssh' | +| `-o transform_symlinks` | transform absolute symlinks on remote side to relative symlinks. This means that if e.g. on the server side `/foo/bar/com` is a symlink to `/foo/blub`, SSHFS will transform the link target to `../blub` on the client side. | +| `-o follow_symlinks` | follow symlinks on the server, i.e. present them as regular files on the client. If a symlink is dangling (i.e, the target does not exist) the behavior depends on the remote server - the entry may appear as a symlink on the client, or it may appear as a regular file that cannot be accessed. | +| `-o no_check_root` | don't check for existence of 'dir' on server | +| `-o dir_cache=BOOL` | Enables (yes) or disables (no) the SSHFS directory cache. The directory cache holds the names of directory entries. Enabling it allows readdir system calls to be processed without network access. | +| `-o dcache_max_size=N` | sets the maximum size of the directory cache. | +| `-o dcache_timeout=N` | sets timeout for directory cache in seconds. | +| `-o dcache_{stat,link,dir}_timeout=N` | sets separate timeout for {attributes, symlinks, names} in the directory cache. | +| `-o dcache_clean_interval=N` | sets the interval for automatic cleaning of the directory cache. | +| `-o dcache_min_clean_interval=N` | sets the interval for forced cleaning of the directory cache when full. | +| `-o direct_io` | This option disables the use of page cache (file content cache) in the kernel for this filesystem. | +| `-o max_conns=N` | sets the maximum number of simultaneous SSH connections to use. Each connection is established with a separate SSH process. The primary purpose of this feature is to improve the responsiveness of the file system during large file transfers. |