(Linux) NFS サーバのマウント方法【fstabとexports使用】

マウントとは

 

他のデバイス(サーバなど)を自身につなげて、操作できるようにすること。

この記事では、あるサーバAから、他のサーバBNFSでマウントする方法を紹介する。
特に、fstabとexportsという設定ファイルを使用したマウント方法について紹介する

 

下記はマウントがなんなのか良くわからない人への参考記事(飛ばしOK)。

 

マウント例

 

サーバA/var/www/dirAを、サーバB/dirBにマウントする例を考える

マウントすると、サーバAからサーバBの/dirBの内容に対して、読み込んだり書き込んだり(※設定するオプションで異なってくる)ができるようになる

mount-server-example

 

上記のためには、下記の両設定ファイルを編集する必要がある

マウントするために修正するファイル

マウントする側のサーバ → /etc/fstab

マウントされる側のサーバ → /etc/exports

 

サーバーマウント手順

では具体的にサーバー同士のマウントのための手順を説明していく。

 

始めに、nfsdが起動していることを確認

まずは両サーバーで、nfsのデーモンが起動していることを確認

service nfs status

起動していない場合起動する

service nfs on

 

サーバA(マウントする側)の作業

/etc/fstab の編集

/etc/fstabは、マウントする側のサーバが、マウントするための情報を記載するファイル。
このファイルを編集することで、マウントの設定を変更することができる。

mount-from-etc-fstab

 

viエディタかなんかでfstabを編集する。

今回マウント先サーバBのIPアドレスが192.168.1.2なら、例えば下記のように記述することができる(fstabに追記していく。一行毎に一つのマウント設定)。

##サーバAの/etc/fstabに下記一行を追記

192.168.1.2:/dirB /var/www/dirA nfs rw,auto 0 0

 

上記の書式は下記、各項目はスペースで区切る。

192.168.1.2:/dirB /var/www/dirA nfs rw,auto 0 0
 マウント先ポイント マウント元ポイント ファイルシステムの種類(nfs) マウントオプション dumpフラグ ブート時にfsckがチェックする順序

 

見方として大事なのは①と②と③

fstab書式の見方
  1. マウント先のポイント(ディレクトリ)を指定する。今回のように外部のサーバをマウントポイントにする場合は、「IPアドレス:」を先頭に付与する。マウント先が自身の場合はIPアドレスは省略する。
  2. マウント元となる自身のポイント(dirA)を指定する
  3. には今回nfsでマウントしたいので、nfsと指定する

 

④以降まで書くと、長いので書式は別にまとめた、参考に

 

サーバB(マウントされる側)の作業

/etc/exports の編集

/etc/exportsは、マウントされる側のサーバが、マウントされるための情報を記載するファイル。ここに、マウントを許可するデバイスのIPなど、マウントされる側に必要な設定情報を書き込んでいく。

mount-to-etc-exports

 

同じくviエディタかなんかでexportsを編集。

サーバAのIPアドレスが192.168.1.1の場合、例えば下記のように書くことができる(追記)。

##サーバBの/etc/exportsに下記一行を追記

/dirB 192.168.1.1(rw,no_root_squash)

 

上記の書式は下記

/dirB 192.168.1.1 (rw,no_root_squash)
マウント許可ポイント マウントを許可するデバイス
※③との間をスペースで区切らない
オプション
※②との間をスペースで区切らない

 

見方として大事なのは①と②

 

exports書式の見方
  1. マウントを許可するディレクトリ(自身)を指定する
  2. ①に対しマウントしてくるサーバをIPなどで指定する

 

exportsときたら、「②からのマウントを①に許すよ」と覚えよう。

③のオプションは別記事でまとめるほどではないと思ったのでまとめないが、今回は、「マウントされて読み書きされてもok」なオプションが書いてある。

 

マウントの設定を反映させる、mount -a

 

マウント実行

最後にサーバA(マウントする側)にて、下記コマンドを実行して、マウントする。
※④マウントオプションにautoを指定していること(mount -aの許可オプション)。

mount -a

 

上記は、/etc/fstabに書いたマウント情報を全て反映するコマンド

 

マウントできているか確認する

現在のマウント状態を下記のコマンドで確認できるので、実行する

mount

 

以下は筆者のmacでmountコマンドを打った結果

linux-mount-command-result

一行一行「〇〇 on △△」と言う書式になっている。

これは、〇〇(今回ならサーバB)のマウントポイントは、△△(今回ならサーバAのマウントポイント)からマウントしていますよ」ということを表している。

今回のように他のサーバにマウントしている状態なら、先頭にマウント先のデバイスのIPなどが表示される。なので、今回サーバAでmountを打った場合

192.168.1.2:/dirB on /var/www/dirA(オプション)

 

という行が表示されているはず

 

マウントを解除(umount)する方法

ちなみにマウントを解除するumountコマンドも合わせて紹介する。

書式は以下

umount  マウントポイント

 

今回なら/var/www/dirAがマウントポイントになっているので次のようになる

umount /var/www/dirA

マウントポイントだけ指定してやればいいので簡単

 

補足

mountコマンドについて

fstabに記述したmountの設定を読み取って表示する。
そのうち有効な(書式が正しくてマウントがちゃんと反映されている)ものを表示する。

 

マウントされる側のデバイスを急に死なせない

マウントされている側のデバイスが急に死ぬ(電源が落ちるなど)と、マウントしている側がマウント先を見つけれずループになってエラーになる。

なので必ずアンマウントしてから電源を落とす

 

記事が気に入った方はシェアをお願いします!

コメントを残す

メールアドレスが公開されることはありません。