The Tool Desk
Outbyte PC Repair FREERepair Windows errors before they cause bigger problemsFix Now →Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more
Need a server to try this on? Antihost offers Linux VPS plans with NVMe storage, full root access and a 14-day free trial.
SSHFS mounts a directory on an SSH server into your local file tree through SFTP. On Linux, create a local directory and run sshfs user@example.com:/remote/path ~/mnt/remote; work with the files normally, then detach it with fusermount3 -u ~/mnt/remote. macOS and FreeBSD use umount ~/mnt/remote for detaching.
The method requires an SSH-capable client, working credentials, an SFTP subsystem on the server, SSHFS/FUSE installed locally, and a mountpoint you own. No SSHFS-specific daemon is normally needed on the remote host.
What SSHFS does
SSHFS is a FUSE filesystem client that presents a remote directory through an SSH connection’s SFTP subsystem. The libfuse SSHFS project describes it simply: “SSHFS allows you to mount a remote filesystem using SFTP.” Your local operating system sees a mounted directory, while file operations are translated into SFTP requests and carried over the authenticated SSH connection.
Most SSH servers support and enable SFTP by default. That means the server normally needs an ordinary SSH account and an enabled SFTP subsystem, not a separate SSHFS server program. If the administrator has disabled SFTP, restricted the account to another subsystem, or denied access to the requested directory, SSHFS cannot mount that path even when ordinary SSH networking is available.
#1 Best Overall
- Easily store and access 2TB to content on the go with the Seagate Portable Drive, a USB external hard drive
- Designed to work with Windows or Mac computers, this external hard drive makes backup a snap just drag and drop
- To get set up, connect the portable hard drive to a computer for automatic recognition no software required
- This USB drive provides plug and play simplicity with the included 18 inch USB 3.0 cable
- The available storage capacity may vary.
SSHFS is useful when applications need a filesystem-shaped path rather than a sequence of manual uploads and downloads. You can browse the remote tree with normal shell commands, edit a document through a local application, or copy files with standard tools. The connection remains dependent on the network and the remote SSH service, so it should not be treated as a local-disk replacement.
Prerequisites
Client software
Install SSHFS and the local FUSE implementation with your operating system’s package manager where one is available. The project recommends running SSHFS as the regular user who owns the mountpoint, rather than starting it as root without a specific system-design reason.
Do these 3 things before closing this tab:
1Repair Windows errors before they cause bigger problems2Scan for outdated or missing drivers - takes under a minute3Clear out junk files and repair common Windows errorsIf you compile SSHFS instead of using a package, the project specifies libfuse 3.1.0 or newer (or a compatible libfuse3 implementation), GLib development headers, Meson 0.38 or newer, and Ninja. A source build still needs the ordinary compiler and development environment required by your operating system.
Remote access
- An SSH-capable client on the local computer.
- A username and authentication method that can log in to the remote host. Password authentication works when the server permits it; SSH keys and normal SSH configuration are also followed.
- An SFTP subsystem on the remote SSH server.
- Permission for the remote account to access the directory you intend to mount.
- A local directory that the mounting user owns or can write to.
Choose a mountpoint
A mountpoint is an existing local directory that becomes the visible entry point for the remote tree. A directory under your home directory avoids most privilege and ownership problems:
mkdir -p ~/mnt/remote
Do not place important local files inside a directory that you plan to use as a mountpoint. While the mount is active, the remote filesystem hides the directory’s previous contents; those local files become visible again after unmounting.
Mount a remote directory on Linux
1. Create the local directory
mkdir -p ~/mnt/remote
The command is harmless if the directory already exists. Confirm that the account you will use for SSHFS can access it.
Quick wins for a faster PC:
Repair Windows errors before they cause bigger problemsFix Now →Scan for outdated or missing drivers - takes under a minuteDriver Scan →2. Run the SSHFS command
sshfs user@example.com:/remote/path ~/mnt/remote
The documented form is:
sshfs [user@]host:[dir] mountpoint [options]
In the example, user@example.com identifies the remote login, /remote/path is the directory exported through SFTP, and ~/mnt/remote is the local mountpoint. SSHFS asks for a password through SSH when one is needed. If your SSH keys, agent, host aliases, or other settings are already configured for ordinary SSH, SSHFS uses those settings as well.
You can omit the username when the remote login name is the same as your local username:
Rank #2
- Easily store and access 5TB of content on the go with the Seagate portable drive, a USB external hard Drive
- Designed to work with Windows or Mac computers, this external hard drive makes backup a snap just drag and drop
- To get set up, connect the portable hard drive to a computer for automatic recognition software required
- This USB drive provides plug and play simplicity with the included 18 inch USB 3.0 cable
- The available storage capacity may vary.
sshfs example.com:/remote/path ~/mnt/remote
If you omit the remote directory after the colon, SSHFS mounts the remote account’s home directory:
sshfs user@example.com: ~/mnt/remote
For an SSH server listening on a non-default port, pass the port as an SSHFS option:
sshfs -o port=PORT user@example.com:/remote/path ~/mnt/remote
Replace PORT with the server’s actual SSH port. Other SSH and SSHFS options can be added after the mountpoint; check the manual for the exact option name and value before using one in an automated mount.
3. Verify the mount
After a successful command, list the mountpoint and create a harmless test listing:
ls -la ~/mnt/remote
The output should show the remote directory’s contents. Commands such as cd, cp, mv, find, and editors can then use the path as they would any other directory. The data is still being requested from the remote host, so operations that scan many files or transfer large amounts of data can take substantially longer than the equivalent operation on a local disk.
4. Unmount when finished
On Linux, detach the filesystem with:
fusermount3 -u ~/mnt/remote
Run the command as the user who mounted the filesystem. Once it succeeds, the underlying local directory is visible again and can be reused for another mount.
Understand permissions and multi-user access
SSHFS permission behavior is easy to misunderstand because two permission systems are involved: the remote account’s permissions and optional local FUSE checks. The current SSHFS manual says file permissions are ignored by default. In practical terms, a user who can access the mounted filesystem can perform operations allowed to the remote account that established the SFTP session. A local mode bit that appears restrictive does not, by itself, change what that remote account can do.
By default, only the user who mounted the filesystem can access the mount. This is the safest starting point for a personal mount. If local permission checks are required, add:
Rank #3
- Easily store and access 1TB to content on the go with the Seagate Portable Drive, a USB external hard drive.Specific uses: Personal
- Designed to work with Windows or Mac computers, this external hard drive makes backup a snap just drag and drop. Reformatting may be required for Mac
- To get set up, connect the portable hard drive to a computer for automatic recognition no software required
- This USB drive provides plug and play simplicity with the included 18 inch USB 3.0 cable
- The available storage capacity may vary.
-o default_permissions
With that option, the local kernel also evaluates the presented permission bits before allowing an operation. It does not grant the remote account additional rights on the server.
To make a mount available to other local users, SSHFS provides:
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
-o allow_other
The manual recommends pairing allow_other with default_permissions. A typical command therefore looks like:
sshfs -o allow_other,default_permissions user@example.com:/remote/path ~/mnt/remote
Use broader access deliberately. Every local user who can reach the mount may be able to request operations through the same remote account, and the remote server will see those operations as that account. Do not change local ownership or permissions blindly to solve an access problem; first decide whether the mount should remain private or whether a controlled multi-user design is actually required.
macOS and FreeBSD
The SSHFS mount syntax is the same basic pattern on systems that provide an SSHFS/FUSE implementation:
sshfs user@example.com:/remote/path ~/mnt/remote
Create a local mountpoint, install the platform’s SSHFS and FUSE components, and run the command as the user who owns that directory. Authentication and SFTP requirements remain the same because the remote side is still reached through SSH.
Free tools Windows power users keep installed
One-click scans. No signup required.
The unmount command differs from Linux. On macOS or FreeBSD, use:
umount ~/mnt/remote
On Linux, use fusermount3 -u instead. If a platform’s FUSE package supplies an additional convenience command, follow that package’s documentation, but do not substitute a Linux-specific fusermount3 command on macOS or FreeBSD.
Rank #4
- 【Versatile Storage Expansion – For Gaming, Work & Everyday Use】 Running out of space on your PS5 or Xbox Series X/S? This external hard drive lets you store and play PS4 / Xbox One games directly, instantly freeing up your console’s internal storage for next‑gen titles. At the same time, it handles work file backups, media libraries, and cross‑device data transfers with ease. One drive, all your needs. *(Note: PS5 / Xbox Series X|S games cannot be run or stored directly from the external hard drive. However, by offloading your PS4 / Xbox One games, you can free up valuable space for newer titles.)*
- 【Patented Silicone Sleeve – Data Protection You Can Count On】 Worried about drops? We’ve got you covered. The patented built‑in silicone sleeve acts like a shock‑absorbing armor, cushioning your drive against bumps and falls. Whether it’s important work documents, precious family photos, or hard‑earned game saves, your data deserves this level of protection.
- 【Plug & Play, Compatible with Computers & Consoles】 No complicated setup—just plug in and go. Works seamlessly with Windows, Mac, and Linux computers, as well as PS4, PS5, Xbox One, and Xbox Series X/S. Process files at the office, back up data at home, or enjoy gaming in your downtime—one drive handles all your devices, simply and hassle‑free.
- 【USB 3.0 Ultra‑Fast Transfer – No More Waiting】 Tired of watching progress bars crawl? With USB 3.0 speeds up to 5Gbps, large files transfer in seconds. Whether you’re moving work documents, transferring hundreds of gigs of games, or backing up a year’s worth of photos, you get more done in less time.
- 【Sleek, Lightweight, and Ready to Go】 Weighing just 0.16 kg—lighter than a can of soda—this compact drive features a stylish mirror‑and‑frosted finish. Toss it in your bag and go, whether you’re heading to the office, visiting a friend for a gaming session, or giving a presentation on the road.
Use SSH keys, host aliases, and non-default SSH settings
SSHFS follows the normal SSH authentication path. Before troubleshooting SSHFS-specific behavior, test the same destination with ordinary SSH:
ssh user@example.com
If that login fails, fix the username, hostname, network route, host-key prompt, password or key configuration, and server-side account restrictions first. SSHFS cannot succeed when the underlying SSH session cannot authenticate.
Recommended Free Tools
When you use a host alias or identity selected by your SSH configuration, use the alias in the SSHFS command just as you would with ssh:
sshfs work-server:/remote/path ~/mnt/remote
For a server on another port, the explicit option form is:
sshfs -o port=PORT user@example.com:/remote/path ~/mnt/remote
Keep private keys protected and avoid placing passwords directly in shell history or scripts. Persistent mounts introduce additional credential-handling decisions; verify an interactive mount before automating anything.
Set up a persistent mount with /etc/fstab
The SSHFS manual documents /etc/fstab support using sshfs as the filesystem type. The older fuse.sshfs type remains available for backward compatibility. An entry describes the remote source, local mountpoint, filesystem type, mount options, and the usual filesystem table fields.
Windows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallCrashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minuteDo not begin with an automatic mount at boot. First prove that the exact SSHFS command works interactively, that the remote path is correct, and that authentication does not depend on an unavailable prompt. Then add the corresponding entry to /etc/fstab using the syntax and options documented for your installed SSHFS version.
Boot-time mounts add two operational concerns:
- Credentials: the system may not have an interactive password prompt, and a key or agent may not be available at the moment the mount is attempted.
- Availability: the network, DNS, VPN, or remote SSH service may not be ready when the operating system processes the table.
Plan how a failed mount should affect startup, and provide a deliberate recovery path rather than assuming the remote host is always reachable.
Best Value
- High capacity in a small enclosure – The small, lightweight design offers up to 6TB* capacity, making WD Elements portable hard drives the ideal companion for consumers on the go.
- Plug-and-play expandability
- Vast capacities up to 6TB[1] to store your photos, videos, music, important documents and more
- SuperSpeed USB 3.2 Gen 1 (5Gbps)
Troubleshoot a failed or unusable mount
The command cannot connect or authenticate
- Run ordinary SSH against the same host and username.
- Confirm the hostname resolves and the network path is available.
- Check that you are using the intended key, password, SSH alias, and port.
- Ask the server administrator whether the account is allowed to use SFTP.
SSHFS depends on the same host, username, network reachability, and authentication path as SSH, so a failed SSH login is the first fault to correct.
The remote path is rejected
Check the spelling and case of the remote directory. A path that exists for one account may not exist in another account’s namespace, and an account may be permitted to log in while being denied access to a particular directory. Test a simpler path, such as the remote home directory, when the server policy allows it.
The local mountpoint cannot be used
Verify the local path spelling and confirm that the account running SSHFS owns the directory or can write to it. Choose an empty directory under that account’s home directory while diagnosing the problem. If a previous mount is still attached, unmount it with the platform-appropriate command before trying again.
Another local user cannot see or use the mount
Private access is the default. Review whether you actually need multi-user access, then evaluate allow_other and default_permissions together. Changing unrelated directory permissions can expose more data without solving the remote-account authorization issue.
The mount appears frozen
An SSHFS operation can wait when the SSH connection, network route, or remote server is unavailable. Resolve the underlying SSH or network problem before repeatedly killing mount processes. Repeated forceful termination can leave applications waiting on file operations and can complicate a clean detach. Once the connection is healthy, retry the normal unmount command; if the problem persists, inspect the SSHFS and operating-system diagnostics for the specific release you installed.
SFTP is disabled on the server
SSH access alone is not enough. The remote SSH service must expose its SFTP subsystem, and the account must be allowed to use it. This is a server-side configuration issue; a local SSHFS option cannot create an SFTP subsystem that the server has disabled.
SSHFS compared with other ways to work with remote files
SSHFS is one choice among several remote-file workflows. Select it when a mounted path is valuable and the server already provides SSH/SFTP. Select a transfer client when you only need explicit uploads and downloads and do not want applications traversing a network filesystem. A separate file-sharing service may be preferable when an organization needs service-specific locking, identity management, or availability behavior that SSH/SFTP does not provide.
| Workflow | Transport and encryption | Server requirement | Local integration | Permission model | Network behavior |
|---|---|---|---|---|---|
| SSHFS | SSH connection carrying SFTP requests | Existing SSH access with an enabled SFTP subsystem | FUSE-mounted directory used by normal file commands and applications | Remote account drives operations by default; local checks are optional with default_permissions |
Interactive file operations depend on connection responsiveness and can wait when the network fails |
| SFTP transfer client | SFTP over SSH when the client uses SFTP | SSH access with SFTP enabled | Files are selected and transferred through the client rather than exposed as a local mount | Actions are performed as the authenticated remote account | Transfers can be retried as discrete jobs instead of leaving a mounted path in applications |
| Separate file-sharing service | Defined by that service and its security configuration | A server component for the chosen file-sharing protocol | Depends on the protocol and client; it may provide a mount, synchronization, or a specialized application | Defined by the service’s identity and authorization system | Resilience, latency, and locking behavior depend on the service and workload |
There is no universal SSHFS speed or latency number that applies to every network, server, file mix, or application. Measure the operations that matter to you—small-file metadata scans, sequential reads and writes, or concurrent access—on the actual route and server. Encryption, round trips, server storage, congestion, and application access patterns all affect the result.
Quick Recap
Operational practices that prevent surprises
- Mount as the owning user: this aligns the FUSE mount with the local directory’s ownership and avoids unnecessary privilege escalation.
- Use a dedicated mountpoint: keeping the directory separate makes it clear which files are remote and prevents accidental writes to hidden local contents.
- Keep the remote account narrow: SSHFS cannot grant more authority than the account has, so use an account whose remote permissions match the data and operations required.
- Unmount before shutting down tools: close editors, shells, and file managers using the path, then detach the filesystem normally.
- Test persistence separately: an interactive success proves connectivity and authentication, but it does not prove that a boot-time
/etc/fstabattempt will have network and credentials available. - Expect network semantics: applications that assume a fast, continuously available local disk may behave poorly over a high-latency or unreliable SSH connection.
Command reference
| Task | Command | Platform |
|---|---|---|
| Create a mountpoint | mkdir -p ~/mnt/remote |
Any platform with a compatible shell |
| Mount a remote directory | sshfs user@example.com:/remote/path ~/mnt/remote |
SSHFS/FUSE installation |
| Mount on a non-default SSH port | sshfs -o port=PORT user@example.com:/remote/path ~/mnt/remote |
SSHFS/FUSE installation |
| Enable local permission checks | sshfs -o default_permissions user@example.com:/remote/path ~/mnt/remote |
SSHFS/FUSE installation |
| Allow other local users, with local checks | sshfs -o allow_other,default_permissions user@example.com:/remote/path ~/mnt/remote |
SSHFS/FUSE installation |
| Unmount | fusermount3 -u ~/mnt/remote |
Linux |
| Unmount | umount ~/mnt/remote |
macOS or FreeBSD |
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

