Mount a Remote Folder using SSH on Ubuntu
Sponsored Link
sshfs is based on FUSE (userspace filesystem framework for Linux), thus you will have to prepare fuse kernel module to be able to use it.
Install sshfs in Ubuntu
sudo apt-get install sshfs
This will complete the installation part.
Now we will use the modprobe command to load it
sudo modprobe fuse
Now you need to set up some permissions in order to access the utilities. Replace with your username.
sudo adduser fuse
sudo chown root:fuse /dev/fuse
sudo chmod +x /dev/fusermount
Since we’ve added ourselves to a user group, we need to logout and back in at this point before we continue.
Now we’ll create a directory to mount the remote folder in. I chose to create it in my home directory and call it remoteserv.
mkdir ~/remoteserv
Now we have the command to actually mount it. You’ll be prompted to save the server key and for your remote password.
sshfs username@ipaddress:/remotepath ~/remoteserv
In the above command you need to replace usename and ipaddress.
Now you should be able to cd into the directory and start using it as if it was local.
user@testserver:~/remoteserv$ ls -l
total 16
drwxr-xr-x 1 951247 155725 4096 2006-16-13 13:03 Music
drwxr-sr-x 1 root root 4096 2006-10-11 06:05 logs
drwx—— 1 951247 155725 4096 2006-02-11 16:19 Documents
drwxrwxr-x 1 951247 155725 4096 2006-10-09 02:43 scripts
Hi, thx for the guide, however I have some questions, where you say “replace with your username”, do you mean to replace fuse with “yourusername”, and should it be the username of the ssh server?
Another question about the ip adress, shoud it be from your pc, or from the ssh server?
jan you need to replace username and ipaddress of ssh server
instead of
sudo chmod +x /dev/fusermount
you should change permissions of another file:
sudo chmod +x /usr/bin/fusermount
Can you connect to Ubuntu via sshfs using the x-windows, I mean like remote desktopn in Windows, where you can control the pc remotely
stan: you don’t need sshfs to do remove desktop type stuff with X over ssh.
probably the easiest way is to start another X session on the local machine and use it to run X in over ssh. this would all be from the text login (F1):
> X :1 &
> export DISPLAY=:1
> ssh -Y user@host
user@host> gnome-session &
then gnome should be running on display :1 (F9)
the only problem i’ve seen is when you quit the gnome session on the remote server gnome will likely leave some things running and you won’t be able to exit the ssh session with killing them. stuff like x-screensaver etc. i assume this would be similar with kde too.
I really don’t recommend this method, at least I had quite a few problems with it. I used sshfs to mount a server and had troubles with both file transfers and rights.
Both Nautilus (“Connect to server” in Ubuntu Gnome) and Konqueror support ssh for remote connections, and it works much better.
@ Audun,
The connect to server option in Gnome actually uses SFTP which is a subsystem of SSH. If SFTP is not enabled on the SSH server’s config file, you won’t be able to connect.
Finally got this to work after several attempts. In case others are having problems here’s some clarifications:
1.replace root in the following with your username: sudo chown root:fuse /dev/fuse
2. location of fusermount is /bin/fusermount (in kubuntu anyway), so use:
sudo chmod +x /bin/fusermount
or find it with whereis fusermount
Also, since I was not using the user I installed with I had to add give the user privs to use sudo first – search on SudoRoot above
Hope this helps!
What you have to do is
1. on the remote server, chmod 777 the directory you wish to connect to
2. Create a mount point at local machine and chmod 777 it too
3. mount with sshfs
Also, if you want to get a hard drive icon (as if it were a local disk) on your desktop and on the places menu, create the local mount point in the /media folder.
What you have to do is
1. on the remote server, chmod 777 the directory you wish to connect to
2. Create a mount point at local machine and chmod 777 it too
3. mount with sshfs
Do NOT chmod directories 777. It’s just plain stupidness. It really is not secure way.
Awesome tutorial! I’m running kubuntu 8.10 and just completely skipped the sudo chmod +x /bin/fusermount step and everything worked great – thanks!
in ubuntu 9.04 there’s no fuse module… so how can i do this tutorial in ubuntu 9.04
Thank you for this very useful article. for those whom it may concern, On Ubuntu Lucid Lynx, there is no need to install fuse, just apt-get install sshfs and issue the sshfs user@server/directory /path/to/local/directory command and it will work
Cheers,
Rex
Hi all,
Actually you doesn’t need sshfs to mount remote ssh folder, nautilus include this functionnality natively !
In a fresh install of Ubuntu 11.0.4, the very first step, apt-get, yields “E: Unable to locate package sshfs”. What is the method to fix this?
Hi, is there a way to enter the password without being prompted. Let’s say I wanna add “sshfs username@ipaddress:/remotepath ~/remoteserv” in fstab.. it wouldn’t work, would it?
@milad a: You could use SSH key authentication so that it doesn’t need a password, instructions to do so are here: https://help.ubuntu.com/community/SSH/OpenSSH/Keys
They are written for Ubuntu, but should work for any most distributions.
Thanks for the tutorial. I was able to get it working.
However I have a question. How do you unmount this drive once you’re done with it?