はじめに
この実験では、Linux システム上で NFS (Network File System) 共有が正常にマウントされているかどうかを確認する方法を学びます。これを達成するための一般的な 3 つの方法を調べます。
まず、mount コマンドを使用して、現在マウントされているすべてのファイルシステムをリストアップし、NFS エントリを特定します。次に、/etc/fstab ファイルを調べて、永続的な NFS マウント構成を確認します。最後に、showmount -e コマンドを使用して、NFS サーバーとそのエクスポートされたディレクトリを確認します。これらの手順を完了することで、Linux 上の NFS マウント状態を診断する実践的なスキルを身につけることができます。
mount コマンドで NFS マウントをリストする
このステップでは、mount コマンドを使用して Linux システム上の Network File System (NFS) マウントを特定する方法を学びます。NFS を使用すると、システムはネットワークを介してディレクトリやファイルを他のシステムと共有できます。
mount コマンドは、ファイルシステムをファイルシステム階層内の特定のマウントポイントにアタッチするために使用されます。引数なしで使用すると、現在マウントされているすべてのファイルシステムのリストが表示され、その中には NFS マウントも含まれます。
ターミナルを開きます。おそらくすでに ~/project ディレクトリにいるはずです。
次のコマンドを入力し、Enter キーを押します。
mount
このコマンドを実行すると、現在システムにマウントされているすべてのファイルシステムに関する多くの情報が出力されます。type nfs を含む行、またはリモートサーバーのパスとそれに続くローカルのマウントポイントが記載された行を探します。
たとえば、次のような出力が表示されることがあります(正確な出力はシステムの設定によって異なります)。
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
udev on /dev type devtmpfs (rw,nosuid,relatime,size=999999k,nr_inodes=999999,mode=755,inode64)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,nodev,noexec,relatime,size=999999k,mode=755)
/dev/sda1 on / type ext4 (rw,relatime,errors=remount-ro)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
tmpfs on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k)
tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,relatime,size=999999k,mode=755)
cgroup2 on /sys/fs/cgroup/unified type cgroup2 (rw,nosuid,nodev,noexec,relatime,nsdelegate)
...
192.168.1.100:/shared_nfs on /mnt/nfs_share type nfs4 (rw,relatime,vers=4.2,rsize=262144,wsize=262144,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=192.168.1.200,local_lock=none,addr=192.168.1.100)
...
上記の例の出力では、192.168.1.100:/shared_nfs で始まる行が NFS マウントを示しています。
192.168.1.100:/shared_nfsは、リモートの NFS サーバーとそのサーバー上の共有ディレクトリです。/mnt/nfs_shareは、リモートディレクトリにアクセスできるシステム上のローカルマウントポイントです。type nfs4は、これが NFS バージョン 4 のマウントであることを確認します。
mount コマンドの出力を調べることで、現在システムに NFS 共有がマウントされているかどうか、およびそれらがどこにマウントされているかを特定できます。
続ける をクリックして次に進みます。
/etc/fstab で NFS を確認する
前のステップでは、mount コマンドを使用して現在マウントされているファイルシステムを確認する方法を学びました。ただし、mount コマンドは「現在」マウントされているもののみを表示します。起動時に自動的にマウントされるように設定されたファイルシステムを確認するには、/etc/fstab ファイルを確認する必要があります。
/etc/fstab ファイル(ファイルシステムテーブル)は、さまざまなファイルシステムに関する情報とそれらのマウント方法を記述した設定ファイルです。これには、ローカルファイルシステム、スワップパーティション、および NFS のようなネットワークファイルシステムが含まれます。
このファイルの内容は、cat や less などのコマンドラインテキストビューア、または nano などのテキストエディタを使用して表示できます。ここでは cat を使用して、ファイルの内容をターミナルに直接表示しましょう。
~/project ディレクトリにいることを確認します。
次のコマンドを入力し、Enter キーを押します。
cat /etc/fstab
このコマンドを実行すると、/etc/fstab ファイルの全内容がターミナルに表示されます。
異なるファイルシステムを記述した行が表示されます。各行は通常、特定の形式に従います。
<file system> <mount point> <type> <options> <dump> <pass>
<type> フィールドが nfs または nfs4 である行を探します。これらの行は、自動的にマウントされるように設定された NFS 共有を示しています。
たとえば、NFS マウントを設定する行は次のようになります。
192.168.1.100:/shared_nfs /mnt/nfs_share nfs defaults 0 0
192.168.1.100:/shared_nfs:リモートの NFS サーバーと共有ディレクトリ。/mnt/nfs_share:ローカルのマウントポイント。nfs:ファイルシステムのタイプ(NFS)。defaults:標準的なマウントオプション(rw、suid、dev、exec、auto、nouser、asyncなど)。0:dumpオプション(NFS の場合は通常 0)。0:passオプション(NFS の場合は通常 0。起動時にファイルシステムチェックを行わないことを意味する)。
/etc/fstab を調べることで、現在マウントされていなくても、自動マウント用に設定されている NFS 共有を特定できます。
続ける をクリックして次のステップに進みます。
showmount -e で NFS サーバーを確認する
前のステップでは、mount を使用して現在マウントされている NFS 共有を特定する方法と、/etc/fstab で自動的に設定された NFS マウントを確認する方法を学びました。次に、NFS サーバーがクライアントにマウント可能な状態でエクスポート(共有)しているディレクトリを確認しましょう。
showmount コマンドは、リモートホスト上のマウントデーモンに問い合わせて、そのホストがエクスポートしている NFS 共有を表示するクライアント側のツールです。-e オプションを使用すると、showmount はホストのエクスポートリストを表示します。
showmount を使用するには、NFS サーバーのホスト名または IP アドレスを指定する必要があります。この実験では、IP アドレス 192.168.1.100 に NFS サーバーがあると仮定します。
~/project ディレクトリにいることを確認します。
次のコマンドを入力し、192.168.1.100 を確認したい NFS サーバーの実際の IP アドレスまたはホスト名に置き換えて、Enter キーを押します。
showmount -e 192.168.1.100
コマンドが成功し、サーバーが共有をエクスポートしている場合、次のような出力が表示されます。
Export list for 192.168.1.100:
/shared_nfs *
/another_share 192.168.1.0/24
- 最初の列には、NFS サーバーからエクスポートされているディレクトリがリストされています。
- 2 番目の列は、そのディレクトリをマウントすることが許可されているクライアントを示しています。
*は、任意のクライアントがマウントできることを意味します。IP アドレスまたはネットワーク範囲(192.168.1.0/24など)は、特定のクライアントへのアクセスを制限します。
コマンドが失敗するか、出力が表示されない場合は、以下の原因が考えられます。
- NFS サーバーが実行されていないか、到達できません。
- サーバーが共有をエクスポートしていません。
- ファイアウォールが接続をブロックしています。
showmount -e を使用することは、NFS クライアントの問題をトラブルシューティングする上で重要なステップです。これにより、サーバーが目的のディレクトリを正しくエクスポートするように設定されているかどうかを確認できます。
続ける をクリックしてこの実験を完了します。
まとめ
この実験では、Linux で NFS 共有がマウントされているかどうかを確認する方法を学びました。まず、mount コマンドを使用して現在マウントされているすべてのファイルシステムをリストし、nfs タイプのエントリを特定しました。
また、/etc/fstab ファイルを確認して、NFS 共有が起動時に自動的にマウントされるように設定されているかどうかを調べました。最後に、showmount -e コマンドを使用して NFS サーバーを確認し、サーバーがエクスポートしているディレクトリをリストする方法を学びました。



