nfsサーバのマウント時の方式として、hardマウントとsoftマウントがある。
デフォルトはhardマウント。ちょっと違いを整理したよ。
マウント方式 | 特徴 |
hard intrオプションなし |
・nfsサーバが応答するまで待つ。例えば、nfsサーバ通信段時に、dfコマンドを実行するとコマンドが返ってこなくなる。 ・アプリケーションなどから、nfsマウント領域に対して、I/Oを発生させる仕組みがある場合、ハングしているように見える。 |
hard intrオプションあり |
・基本的に上記と同様 ・ハング時に、SIGHUP、SIGINT、SIGQUITシグナルを送ることで、I/Oを中断できる。(Ctrl+Cで抜けれる) |
soft | ・nfsサーバが応答しない場合、タイムアウト時にエラーとなる。 ・タイムアウト値は、timeoオプションで指定する |
・基本的には、データ不整合を防ぐため、hardマウントが推奨される
・softマウントの場合、例えば、アプリケーションでDBに書きつつ、nfs領域にファイルライトがある処理があるとすると、DBには書いたけど、nfs領域にはファイル書けなかったという、不整合状態が起きてしまう(それを考慮されてアプリならOK)
・デフォルトはhard