Contents
マウントとは
他のデバイス(サーバなど)を自身につなげて、操作できるようにすること。
この記事では、あるサーバAから、他のサーバBにNFSでマウントする方法を紹介する。
特に、fstabとexportsという設定ファイルを使用したマウント方法について紹介する
下記はマウントがなんなのか良くわからない人への参考記事(飛ばしOK)。
マウント例
サーバAの/var/www/dirAを、サーバBの/dirBにマウントする例を考える
マウントすると、サーバAからサーバBの/dirBの内容に対して、読み込んだり書き込んだり(※設定するオプションで異なってくる)ができるようになる

上記のためには、下記の両設定ファイルを編集する必要がある
マウントする側のサーバ → /etc/fstab
マウントされる側のサーバ → /etc/exports
サーバーマウント手順
では具体的にサーバー同士のマウントのための手順を説明していく。
始めに、nfsdが起動していることを確認
まずは両サーバーで、nfsのデーモンが起動していることを確認
service nfs status
起動していない場合起動する
service nfs on
サーバA(マウントする側)の作業
/etc/fstab の編集
/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がチェックする順序 |
見方として大事なのは①と②と③
- マウント先のポイント(ディレクトリ)を指定する。今回のように外部のサーバをマウントポイントにする場合は、「IPアドレス:」を先頭に付与する。マウント先が自身の場合はIPアドレスは省略する。
- マウント元となる自身のポイント(dirA)を指定する
- には今回nfsでマウントしたいので、nfsと指定する
④以降まで書くと、長いので書式は別にまとめた、参考に
サーバB(マウントされる側)の作業
/etc/exports の編集
/etc/exportsは、マウントされる側のサーバが、マウントされるための情報を記載するファイル。ここに、マウントを許可するデバイスのIPなど、マウントされる側に必要な設定情報を書き込んでいく。

同じく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) |
マウント許可ポイント | マウントを許可するデバイス ※③との間をスペースで区切らない |
オプション ※②との間をスペースで区切らない |
見方として大事なのは①と②
- マウントを許可するディレクトリ(自身)を指定する
- ①に対しマウントしてくるサーバをIPなどで指定する
exportsときたら、「②からのマウントを①に許すよ」と覚えよう。
③のオプションは別記事でまとめるほどではないと思ったのでまとめないが、今回は、「マウントされて読み書きされてもok」なオプションが書いてある。
マウントの設定を反映させる、mount -a
マウント実行
最後にサーバA(マウントする側)にて、下記コマンドを実行して、マウントする。
※④マウントオプションにautoを指定していること(mount -aの許可オプション)。
mount -a
上記は、/etc/fstabに書いたマウント情報を全て反映するコマンドだ
マウントできているか確認する
現在のマウント状態を下記のコマンドで確認できるので、実行する
mount
以下は筆者のmacでmountコマンドを打った結果

一行一行「〇〇 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の設定を読み取って表示する。
そのうち有効な(書式が正しくてマウントがちゃんと反映されている)ものを表示する。
マウントされる側のデバイスを急に死なせない
マウントされている側のデバイスが急に死ぬ(電源が落ちるなど)と、マウントしている側がマウント先を見つけれずループになってエラーになる。
なので必ずアンマウントしてから電源を落とす
(Linux) マウントとは NFSについても解説