GNU/Linux >> Linux の 問題 >  >> Cent OS

CentOS7.2でのNFSサーバーとクライアントのセットアップ

このガイドでは、CentOS7でNFSサーバーとNFSクライアントをセットアップする方法について説明します。NFSはNetwork File Systemの略です。;クライアントは、NFSを介して、ローカルハードディスク上にあるかのようにNFSサーバー上のリモート共有にアクセス(読み取り、書き込み)できます。インストールのベースとしてCentOS7.2最小サーバーを使用します。

1予備メモ

ここでは2つのCentOSシステムを使用しています:

  • NFSサーバー:server.example.com、IPアドレス:192.168.1.100
  • NFSクライアント:client.example.com、IPアドレス:192.168.1.101

このチュートリアルでは、nanoエディターを使用して構成ファイルを編集します。 Nanoはこのようにインストールできます。

yum -y install nano

2ファイアウォールを構成する

ファイアウォールをインストールすることをお勧めします。まだfirewalldをインストールしておらず、ファイアウォールを使用したい場合は、次のコマンドを使用してインストールしてください。

yum -y install firewalld

ファイアウォールを起動し、起動時にファイアウォールを起動できるようにします。

systemctl start firewalld.service
systemctl enable firewalld.service

次に、SSHポートとNFSポートを開いて、管理目的でSSHを使用し、NFSクライアントからNFSを使用してサーバーに接続できることを確認します。

firewall-cmd --permanent --zone=public --add-service=ssh
firewall-cmd --permanent --zone=public --add-service=nfs
firewall-cmd --reload

3NFSのインストール

サーバー:

NFSサーバーで実行します:

yum -y install nfs-utils

次に、nfsサーバーサービスを有効にして開始します。

systemctl enable nfs-server.service
systemctl start nfs-server.service

クライアント:

クライアントでは、次のようにNFSをインストールできます(これは実際にはサーバーと同じです):

yum install nfs-utils

4サーバー上のディレクトリのエクスポート

サーバー:

クライアントがディレクトリ/homeと/var/nfsにアクセスできるようにしたいのですが。したがって、サーバー上でそれらを「エクスポート」する必要があります。

クライアントがNFS共有にアクセスする場合、これは通常、ユーザーnfsnobodyとして発生します。通常、/ homeディレクトリはnfsnobodyによって所有されていません(所有権をnfsnobodyに変更することはお勧めしません!)。これは、読み取りと書き込みが必要なためです。 / homeで、アクセスはrootとして行う必要があることをNFSに通知します(/ home共有が読み取り専用の場合、これは必要ありません)。 / var / nfsディレクトリが存在しないため、ディレクトリを作成して、その所有権をユーザーとグループnfsnobodyに変更できます。

mkdir /var/nfs
chown nfsnobody:nfsnobody /var/nfs
chmod 755 /var/nfs

次に、NFS共有を「エクスポート」する/ etc/exportsを変更する必要があります。 /homeと/var/ nfsをNFS共有として指定し、ルートとして/ homeにアクセスするようにNFSに指示します(/ etc / exports、その形式、および使用可能なオプションの詳細については、

を参照してください。
man 5 exports

nano /etc/exports
/home           192.168.1.101(rw,sync,no_root_squash,no_subtree_check)
/var/nfs        192.168.1.101(rw,sync,no_subtree_check)

(no_root_squashオプションを使用すると、/ homeがrootとしてアクセスされます。)

/ etc / exportsを変更するときはいつでも、以下を実行する必要があります:

exportfs -a

その後、変更を有効にするため。

5クライアントへのNFS共有のマウント

クライアント:

まず、NFS共有をマウントするディレクトリを作成します。例:

mkdir -p /mnt/nfs/home
mkdir -p /mnt/nfs/var/nfs

その後、次のようにマウントできます:

mount 192.168.1.100:/home /mnt/nfs/home
mount 192.168.1.100:/var/nfs /mnt/nfs/var/nfs

の出力に2つのNFS共有が表示されます。
df -h
[[email protected] ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 28G 1.7G 26G 7% /
devtmpfs 909M 0 909M 0% /dev
tmpfs 919M 0 919M 0% /dev/shm
tmpfs 919M 8.6M 910M 1% /run
tmpfs 919M 0 919M 0% /sys/fs/cgroup
/dev/sda1 497M 208M 290M 42% /boot
tmpfs 184M 0 184M 0% /run/user/0
192.168.1.100:/home 28G 1.2G 27G 5% /mnt/nfs/home
192.168.1.100:/var/nfs 28G 1.2G 27G 5% /mnt/nfs/var/nfs

および

mount
[[email protected] ~]# mount
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime,seclabel)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
devtmpfs on /dev type devtmpfs (rw,nosuid,seclabel,size=930320k,nr_inodes=232580,mode=755)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev,seclabel)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,seclabel,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,nodev,seclabel,mode=755)
tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,seclabel,mode=755)
cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/usr/lib/systemd/systemd-cgroups-agent,name=systemd)
pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime)
cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,perf_event)
cgroup on /sys/fs/cgroup/hugetlb type cgroup (rw,nosuid,nodev,noexec,relatime,hugetlb)
cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices)
cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer)
cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset)
cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpuacct,cpu)
cgroup on /sys/fs/cgroup/net_cls type cgroup (rw,nosuid,nodev,noexec,relatime,net_cls)
cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio)
cgroup on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,memory)
configfs on /sys/kernel/config type configfs (rw,relatime)
/dev/mapper/centos-root on / type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
selinuxfs on /sys/fs/selinux type selinuxfs (rw,relatime)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=25,pgrp=1,timeout=300,minproto=5,maxproto=5,direct)
mqueue on /dev/mqueue type mqueue (rw,relatime,seclabel)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime,seclabel)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw,relatime)
nfsd on /proc/fs/nfsd type nfsd (rw,relatime)
/dev/sda1 on /boot type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
tmpfs on /run/user/0 type tmpfs (rw,nosuid,nodev,relatime,seclabel,size=188060k,mode=700)
192.168.1.100:/home on /mnt/nfs/home type nfs4 (rw,relatime,vers=4.0,rsize=262144,wsize=262144,namlen=255,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=sys,clientaddr=192.168.1.101,local_lock=none,addr=192.168.1.100)
192.168.1.100:/var/nfs on /mnt/nfs/var/nfs type nfs4 (rw,relatime,vers=4.0,rsize=262144,wsize=262144,namlen=255,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=sys,clientaddr=192.168.1.101,local_lock=none,addr=192.168.1.100)

6テスト

クライアントで、NFS共有にテストファイルを作成できるようになりました。

クライアント:

touch /mnt/nfs/home/test.txt
touch /mnt/nfs/var/nfs/test.txt

次に、サーバーに移動して、両方のテストファイルが表示されるかどうかを確認します。

サーバー:

ls -l /home/
[[email protected] ~]# ls -l /home/
total 0
drwx------. 2 administrator administrator 59 Jun 21 16:13 administrator
-rw-r--r--. 1 root root 0 Jun 29 13:07 test.txt
ls -l /var/nfs
[[email protected] ~]# ls -l /var/nfs
total 0
-rw-r--r--. 1 nfsnobody nfsnobody 0 Jun 29 13:07 test.txt

(テストファイルの所有権が異なることに注意してください。/homeNFS共有はrootとしてアクセスされるため、/ home/test.txtはrootによって所有されます。/var/nfs共有はnobody/65534としてアクセスされるため、/ var / nfs / test.txtは65534が所有しています。)

7ブート時のNFS共有のマウント

クライアントにNFS共有を手動でマウントする代わりに、/ etc / fstabを変更して、クライアントの起動時にNFS共有が自動的にマウントされるようにすることができます。

クライアント:

/ etc / fstabを開き、次の行を追加します。

nano /etc/fstab
[...]
192.168.1.100:/home  /mnt/nfs/home   nfs      rw,sync,hard,intr  0     0
192.168.1.100:/var/nfs  /mnt/nfs/var/nfs   nfs      rw,sync,hard,intr  0     0

rw、sync、hard、intrの代わりに、さまざまなマウントオプションを使用できます。利用可能なオプションの詳細については、

をご覧ください。
man nfs

変更した/etc/ fstabが機能しているかどうかをテストするには、クライアントを再起動します。

reboot

再起動後、

の出力に2つのNFS共有が表示されます。
df -h
[[email protected] ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 28G 1.7G 26G 7% /
devtmpfs 909M 0 909M 0% /dev
tmpfs 919M 0 919M 0% /dev/shm
tmpfs 919M 8.6M 910M 1% /run
tmpfs 919M 0 919M 0% /sys/fs/cgroup
/dev/sda1 497M 208M 290M 42% /boot
tmpfs 184M 0 184M 0% /run/user/0
192.168.1.100:/home 28G 1.2G 27G 5% /mnt/nfs/home
192.168.1.100:/var/nfs 28G 1.2G 27G 5% /mnt/nfs/var/nfs

および

mount
[[email protected] ~]# mount
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime,seclabel)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
devtmpfs on /dev type devtmpfs (rw,nosuid,seclabel,size=930320k,nr_inodes=232580,mode=755)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev,seclabel)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,seclabel,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,nodev,seclabel,mode=755)
tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,seclabel,mode=755)
cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/usr/lib/systemd/systemd-cgroups-agent,name=systemd)
pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime)
cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,perf_event)
cgroup on /sys/fs/cgroup/hugetlb type cgroup (rw,nosuid,nodev,noexec,relatime,hugetlb)
cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices)
cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer)
cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset)
cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpuacct,cpu)
cgroup on /sys/fs/cgroup/net_cls type cgroup (rw,nosuid,nodev,noexec,relatime,net_cls)
cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio)
cgroup on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,memory)
configfs on /sys/kernel/config type configfs (rw,relatime)
/dev/mapper/centos-root on / type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
selinuxfs on /sys/fs/selinux type selinuxfs (rw,relatime)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=25,pgrp=1,timeout=300,minproto=5,maxproto=5,direct)
mqueue on /dev/mqueue type mqueue (rw,relatime,seclabel)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime,seclabel)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw,relatime)
nfsd on /proc/fs/nfsd type nfsd (rw,relatime)
/dev/sda1 on /boot type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
tmpfs on /run/user/0 type tmpfs (rw,nosuid,nodev,relatime,seclabel,size=188060k,mode=700)
192.168.1.100:/home on /mnt/nfs/home type nfs4 (rw,relatime,vers=4.0,rsize=262144,wsize=262144,namlen=255,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=sys,clientaddr=192.168.1.101,local_lock=none,addr=192.168.1.100)
192.168.1.100:/var/nfs on /mnt/nfs/var/nfs type nfs4 (rw,relatime,vers=4.0,rsize=262144,wsize=262144,namlen=255,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=sys,clientaddr=192.168.1.101,local_lock=none,addr=192.168.1.100)

  • Linux NFS:http://nfs.sourceforge.net/
  • CentOS:http://www.centos.org/

Cent OS
  1. Debian 9でのNFSサーバーとクライアントのセットアップ(ストレッチ)

  2. CentOS6.3でのNFSサーバーとクライアントのセットアップ

  3. OpenSUSE12.2でのNFSサーバーとクライアントのセットアップ

  1. ScientificLinux6.3でのNFSサーバーとクライアントのセットアップ

  2. サーバーとクライアントの構成によるNFSの学習

  3. CentOS / RHEL 7 :NFS サーバーと NFS クライアントの構成

  1. CentOS7へのNFSサーバーとクライアントのインストール

  2. DebianWheezyでのNFSサーバーとクライアントのセットアップ

  3. Ubuntu20.04でNFSサーバーとクライアントをセットアップする方法