How to mount a folder from a Linux machine on another Linux machine?
I want to mount a folder from a Linux machine on another Linux machine. How do I do that? Do I need to update /etc/fstab
or /etc/export
?
My target is to mount /tmp
from the other Linux machine. I have Debian 5.1. 10.45.40.165
, that is the IP of the other machine.
For example I tried:
mount -t nfs 10.45.40.165:/tmp /tmp
mount: 10.45.40.165:/tmp failed, reason given by server: Permission denied
What you are doing is NFS share. On a Debian system you should install the tools necessary. Lets assume that the client (the machine on which you want to mount the remote folde) and server (the machine where remote folder is)
On server you'll need to install
apt-get install nfs-server portmap nfs-common
in new debian versions
apt-get install nfs-kernel-server portmap nfs-common
On the client you'll need to install:
apt-get install nfs-client nfs-common
My package selection could have more or less what you need but, some combinations will do.
Now what you need to do is put the folders you want to share with remote machine in /etc/exports:
/path_to_tmp_folder/tmp 192.168.0.2(rw,sync,no_subtree_check,no_root_squash)
Then:
exportfs -ra
/etc/init.d/nfs-kernel-server restart
/etc/init.d/portmap restart
Here 192.168.0.2 is the address of your local machine, replace that with your own IP. exports file has the list of machines that can access the shared folder. If your machines don't have firewall restrictions to each other (you can solve this by adding host to /etc/hosts.allow).
Now on your local machine you can use the command:
sudo mount -o soft,intr,rsize=8192,wsize=8192 server_ip:/path_to_tmp_folder/tmp /local_path_to_empty_tmp_folder/tmp
If you want to have automatic mount on boot you need to edit your /etc/fstab file and put the line on your client:
server_ip:/path_to_tmp/tmp /local_empty_folder/tmp nfs rsize=16384,wsize=16384,rw,auto,nolock
This is just an example of settings (copy pased from my own), you need to check nfs help to see what suites you best.