Configuring a Base NFS Server
Create a directory intended for sharing:
mkdir /data
Create the /etc/exports
containing a path to the directory and the following line:
/data *(rw,no_root_squash)
Open the nfs
, mountd
, and RPC-bind
services in firewalld
:
firewall-cmd --add-service nfs
firewall-cmd --add-service nfs --permanent
firewall-cmd --add-service mountd
firewall-cmd --add-service mountd --permanent
firewall-cmd --add-service rpc-bind
firewall-cmd --add-service rpc-bind --permanent
Run the nfs-server
service:
systemctl enable --now nfs-server
Mounting NFS Shares
Use showmount -e [nfs-server]
to show exports:
showmount -e 172.31.123.216
Export list for 172.31.123.216
/data *
Use mount nfsserver:/[share_dir] /[mnt_dir]
to mount the share:
mount 172.31.123.216:/data /mnt
To mount persistently, append the _netdev
mount option to the share’s mount entry in /etc/fstab
:
vim /etc/fstab
172.31.123.216:/data /nfs nfs _netdev 0 0
Configuring a Base Samba Server
Install the Samba server package:
yum install samba
Create the directory intended to be shared:
mkdir /samba
Create a local Linux user:
useradd samba
Set Linux permissions:
chown samba /samba
chmod 770 /samba
Use smbpasswd -a
to add a Samba user account:
smbpasswd -a samba
Enable the share in /etc/samba.smb.conf
:
vim /etc/samba/smb.conf
...
[samba]
comment = samba share path = /samba write list = samba
Start the samba service:
systemctl enable --now smb
Add the samba
service to firewalld
:
firewall-cmd --add-service samba
firewall-cmd --add-service samba --permanent
Mounting Samba Shares
Install the cifs-utils
and samba-client
RPM packages:
yum groups install "Network File System Client"
Use smbclient -L //[share]
to discover shares:
smbclient -L //192.168.4.210
If asked for root password, just press ENTER
Mount the share using mount -o username=[user] //[server_ip_addr]/[share] /[mnt_point]
:
mount -o username=samba //192.168.4.210/samba
To mount the share persistently, include the cifs
and netdev, username=[user], password=[passwd]
mount options in /etc/fstab
:
vim /etc/fstab
//192.168.4.210/samba samba cifs _netdev,username=samba,password=password
Understanding Automount
A directory that automount should mange is defined in /etc/auto.master
. The file identified is used for additional information:
/data /etc/auto.data
In /etc/auto.data
, the subdirectory intended to mounted and what exactly is going to be mounted is identified:
files -rw nfsserver:/data/files
Ensure the autofs
service is started:
systemctl enable --now autofs
Configuring Automount
Install the autofs
package:
yum install autofs
Start and enable the autofs
service:
systemctl enable --now autofs
/etc/auto.misc
contains examples of mount mapping through autofs
Create an entry in auto.master
:
vim /etc/auto.master
/files /etc/auto.files
Then create the file specified:
vim /etc/auto.files
data -rw 172.31.24.90:/data
Restart the autofs
service:
systemctl restart autofs
Ensure the directory was created:
ls / | grep files
files
Configuring Automount for Home Directories
First, on the NFS host, edit /etc/exports
to include the /home
directory:
vim /etc/exports
/home/ldap *(rw)
Then restart the NFS server:
systemctl restart nfs-server
On the client’s end, edit the /etc/auto.master
file:
/home/ldap /etc/auto.ldap
Then include the following in /etc/auto.ldap
:
* -rw [ip_addr]:/home/ldap/&
Restart the autofs
service to apply the changes:
systemctl restart autofs