Difference between revisions of "Set up an NFS server"
imported>ThorstenStaerk |
|||
(11 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
− | {{factbox|time=10 min|distro=SUSE Linux | + | {{factbox|time=10 min|distro=SUSE Linux 13.2|type=HowTo}} |
You want to share folders of your computer in the network. So, your computer plays the role of the [[NFS]] server. The network drives are ''exported'' by the server, that's how NFS calls it. The following is an example how you get a folder ''/public'' that is shared in your network. To do this, [[find out your distribution]] and proceed accordingly. We use ''server'' as hostname for the computer exporting directories. | You want to share folders of your computer in the network. So, your computer plays the role of the [[NFS]] server. The network drives are ''exported'' by the server, that's how NFS calls it. The following is an example how you get a folder ''/public'' that is shared in your network. To do this, [[find out your distribution]] and proceed accordingly. We use ''server'' as hostname for the computer exporting directories. | ||
+ | |||
+ | = SUSE Linux 13.2 = | ||
+ | * Have NFS installed as described at [[installing software]], in the case of SUSE Linux: | ||
+ | yast -i nfs-kernel-server | ||
+ | * Create the directory ''/public'' (the name ''/public'' will be used here as an example) | ||
+ | mkdir ''/public'' | ||
+ | * Edit /etc/exports, add the line | ||
+ | ''/public/'' *(rw,no_root_squash,sync) | ||
+ | * Start the NFS-Server: | ||
+ | rcrpcbind start | ||
+ | /etc/init.d/nfsserver start | ||
+ | |||
+ | == make it start on reboot == | ||
+ | To make the nfsserver start on reboot type | ||
+ | systemctl enable rpcbind | ||
+ | systemctl enable nfsserver | ||
+ | |||
+ | = SUSE Linux 12.3 = | ||
+ | * Have NFS installed as described at [[installing software]], in the case of SUSE Linux: | ||
+ | yast -i nfs-kernel-server | ||
+ | * Create the directory ''/public'' (the name ''/public'' will be used here as an example) | ||
+ | mkdir ''/public'' | ||
+ | * Edit /etc/exports, add the line | ||
+ | ''/public/'' *(rw,no_root_squash,sync) | ||
+ | * Start the NFS-Server: | ||
+ | rcrpcbind start | ||
+ | /etc/init.d/nfsserver start | ||
+ | * find an error message: | ||
+ | redirecting to systemctl start nfsserver | ||
+ | Failed to issue method call: Unit nfsserver.service failed to load: No such file or directory. See system logs and 'systemctl status nfsserver.service' for details. | ||
+ | * reboot server | ||
+ | * Start the NFS-Server: | ||
+ | rcrpcbind start | ||
+ | /etc/init.d/nfsserver start | ||
+ | ...and it works :) | ||
= SUSE Linux 12.2 = | = SUSE Linux 12.2 = | ||
Line 19: | Line 54: | ||
== Verify the result == | == Verify the result == | ||
Issue on your computer: | Issue on your computer: | ||
− | showmount -e 127.0.0.1 | + | showmount -e 127.0.0.1 |
+ | The result will be like this: | ||
Export list for 127.0.0.1: | Export list for 127.0.0.1: | ||
/public * | /public * | ||
Line 27: | Line 63: | ||
To use the network drive on a client computer, go there and try if you can reach the NFS server: | To use the network drive on a client computer, go there and try if you can reach the NFS server: | ||
[[ping]] ''server'' | [[ping]] ''server'' | ||
− | + | Mount the server's export to (as an example) ''/mnt/nfs'' | |
mkdir -p /mnt/nfs | mkdir -p /mnt/nfs | ||
mount ''server'':/public ''/mnt/nfs'' | mount ''server'':/public ''/mnt/nfs'' | ||
Line 55: | Line 91: | ||
To use the network drive on a client computer, go there and try if you can reach the NFS server: | To use the network drive on a client computer, go there and try if you can reach the NFS server: | ||
[[ping]] ''server'' | [[ping]] ''server'' | ||
− | + | Mount the server's export to (as an example) ''/mnt/nfs'' | |
mkdir -p /mnt/nfs | mkdir -p /mnt/nfs | ||
mount ''server'':/public ''/mnt/nfs'' | mount ''server'':/public ''/mnt/nfs'' | ||
Line 84: | Line 120: | ||
To use the network drive on a client computer, go there and try if you can reach the NFS server: | To use the network drive on a client computer, go there and try if you can reach the NFS server: | ||
[[ping]] ''server'' | [[ping]] ''server'' | ||
− | + | Mount the server's export to (as an example) ''/mnt/nfs'' | |
mkdir -p /mnt/nfs | mkdir -p /mnt/nfs | ||
mount ''server'':/public ''/mnt/nfs'' | mount ''server'':/public ''/mnt/nfs'' | ||
You can make this mount persistant by using the [[fstab]]. | You can make this mount persistant by using the [[fstab]]. | ||
+ | |||
+ | = TroubleShooting = | ||
+ | In case of troubles, watch the syslog (/var/log/messages) on your NFS server. In one case, the server's IP was in /etc/exports instead of the client's IP. | ||
= See also = | = See also = | ||
* [[nfs]] | * [[nfs]] | ||
+ | * [[smb]] | ||
* [[PXE]] | * [[PXE]] | ||
* http://lists.opensuse.org/opensuse/2011-12/msg01054.html | * http://lists.opensuse.org/opensuse/2011-12/msg01054.html | ||
+ | * http://www.unix.com/302873603-post8.html |
Latest revision as of 12:54, 26 June 2015
Time to replay | 10 min |
Example Distro | SUSE Linux 13.2 |
Type | HowTo |
You want to share folders of your computer in the network. So, your computer plays the role of the NFS server. The network drives are exported by the server, that's how NFS calls it. The following is an example how you get a folder /public that is shared in your network. To do this, find out your distribution and proceed accordingly. We use server as hostname for the computer exporting directories.
Contents
SUSE Linux 13.2
- Have NFS installed as described at installing software, in the case of SUSE Linux:
yast -i nfs-kernel-server
- Create the directory /public (the name /public will be used here as an example)
mkdir /public
- Edit /etc/exports, add the line
/public/ *(rw,no_root_squash,sync)
- Start the NFS-Server:
rcrpcbind start /etc/init.d/nfsserver start
make it start on reboot
To make the nfsserver start on reboot type
systemctl enable rpcbind systemctl enable nfsserver
SUSE Linux 12.3
- Have NFS installed as described at installing software, in the case of SUSE Linux:
yast -i nfs-kernel-server
- Create the directory /public (the name /public will be used here as an example)
mkdir /public
- Edit /etc/exports, add the line
/public/ *(rw,no_root_squash,sync)
- Start the NFS-Server:
rcrpcbind start /etc/init.d/nfsserver start
- find an error message:
redirecting to systemctl start nfsserver Failed to issue method call: Unit nfsserver.service failed to load: No such file or directory. See system logs and 'systemctl status nfsserver.service' for details.
- reboot server
- Start the NFS-Server:
rcrpcbind start /etc/init.d/nfsserver start
...and it works :)
SUSE Linux 12.2
- Have NFS installed as described at installing software, in the case of SUSE Linux:
yast -i nfs-kernel-server
- Create the directory /public (the name /public will be used here as an example)
mkdir /public
- Edit /etc/exports, add the line
/public/ *(rw,no_root_squash,sync)
- Start the NFS-Server:
/etc/init.d/rpcbind start /etc/init.d/nfsserver start
- If you want your NFS service to start after every reboot, say
chkconfig rpcbind on chkconfig nfsserver on
Verify the result
Issue on your computer:
showmount -e 127.0.0.1
The result will be like this:
Export list for 127.0.0.1: /public *
By this command, you can see that a share /public is available on your computer, so it is an NFS-Server.
Use the network drive
To use the network drive on a client computer, go there and try if you can reach the NFS server:
ping server
Mount the server's export to (as an example) /mnt/nfs
mkdir -p /mnt/nfs mount server:/public /mnt/nfs
You can make this mount persistant by using the fstab.
SUSE Linux 12.1
- Have NFS installed as described at installing software, in the case of SUSE Linux:
yast -i nfs-kernel-server
- Create the directory /public (the name /public will be used here as an example)
mkdir /public
- Edit /etc/exports, add the line
/public/ *(rw,no_root_squash,sync)
- Start the NFS-Server:
/etc/init.d/rpcbind start /etc/init.d/nfsserver start
- If you want your NFS service to start after every reboot, say
chkconfig nfsserver on
Verify the result
Issue on your computer: showmount -e 127.0.0.1. The result will be like this:
Export list for 127.0.0.1: /public *
By this command, you can see that a share /public is available on your computer, so it is an NFS-Server.
Use the network drive
To use the network drive on a client computer, go there and try if you can reach the NFS server:
ping server
Mount the server's export to (as an example) /mnt/nfs
mkdir -p /mnt/nfs mount server:/public /mnt/nfs
You can make this mount persistant by using the fstab.
SUSE Linux 10
- Have NFS installed as described at installing software, in the case of SUSE Linux:
yast -i nfs-kernel-server
- Create the directory /public (the name /public will be used here as an example)
mkdir /public
- Edit /etc/exports, add the line
/public/ *(rw,no_root_squash,sync)
- Start the NFS-Server:
/etc/init.d/nfs-user-server start || /etc/init.d/nfsserver start
This command makes sure your nfs server gets started, no matter if your distribution names its startup script "nfs-user-server" or "nfsserver".
- If you want your NFS service to start after every reboot, say
chkconfig nfsserver on || chkconfig nfs-user-server on
This command makes sure your nfs server gets started on reboot, no matter if your distribution names its startup script "nfs-user-server" or "nfsserver".
Verify the result
Issue on your computer: showmount -e 127.0.0.1. The result will be like this:
Export list for 127.0.0.1: /public *
By this command, you can see that a share /public is available on your computer, so it is an NFS-Server.
Use the network drive
To use the network drive on a client computer, go there and try if you can reach the NFS server:
ping server
Mount the server's export to (as an example) /mnt/nfs
mkdir -p /mnt/nfs mount server:/public /mnt/nfs
You can make this mount persistant by using the fstab.
TroubleShooting
In case of troubles, watch the syslog (/var/log/messages) on your NFS server. In one case, the server's IP was in /etc/exports instead of the client's IP.