How to Mount a Remote Directory on Your Local PC with sshfs
On Linux, you can also set up an automatic and resilient SSHFS mounting (systemd user services).
1. Install sshfs on Your Local PC
- On a Linux machine (e.g., Ubuntu/Debian), install the
sshfspackage:sudo apt update sudo apt install sshfs - For macOS, install
sshfsvia Homebrew:brew install macfuse brew install sshfs - For Windows, use WinFsp and SSHFS-Win.
2. Create a Local Mount Point
Create a local directory where the remote filesystem will be mounted, for example:
mkdir ~/remote_home
3. Mount the Remote Directory with sshfs
Use the following command to mount the remote directory:
sshfs username@remote_host:/path/to/remote/home ~/remote_home
- Replace
usernamewith your username on the remote server. - Replace
remote_hostwith the address of your remote server (e.g.,192.168.1.100orexample.com). - Replace
/path/to/remote/homewith the path of the directory you want to mount (e.g.,/home/user).
4. Useful Options
Here are some useful options to customize the mount:
- Verbose mode (for debugging): Add
-o debug. - Compression: Add
-o compression=yesto compress transferred data. - Read-only mode: Add
-o roto mount in read-only mode. - Custom SSH port: If the server uses a non-standard SSH port (e.g., 1234):
sshfs username@remote_host:/path/to/remote/home ~/remote_home -p 1234 - Preserve local permissions:
sshfs username@remote_host:/path/to/remote/home ~/remote_home -o uid=$(id -u),gid=$(id -g)
5. Unmount the Directory
To unmount the directory when you are done, use:
fusermount -u ~/remote_home
6. Automate with /etc/fstab (Optional)
If you want to mount the directory automatically at startup:
- Add a line to the
/etc/fstabfile:sshfs#username@remote_host:/path/to/remote/home ~/remote_home fuse.sshfs defaults,_netdev 0 0 - Set up your SSH key to avoid entering the password every time.
7. Use an SSH Configuration File (Optional)
If you have specific SSH options (such as ProxyCommand or a custom port), configure them in ~/.ssh/config. Example:
Host remote_server
HostName example.com
User username
Port 1234
ProxyCommand ssh -W %h:%p jump_host
Then, simply use:
sshfs remote_server:/path/to/remote/home ~/remote_home
If you encounter any issues or need additional help, feel free to ask!
Last updated : 15 October 2026