うちの自宅LANには、普段からLinuxサーバとLinuxのラップトップだけしか利用していないので、いわゆる「Windowsネットワーク」というものが存在しません。ファイルの共有はNFSというSunが大昔に開発したUNIXファイル共有ネットワーク環境を、ネットワーク・ログインはNIS認証サーバ(yellowpage)を利用していました。
で、ここにきて以下の理由からNFSをやめてSSHFSと思いました。
NFSから切り替える理由
- 古い。1984年生まれなので、私より年上です。UNIXの世界では、「古い」というのは良い意味でも悪い意味でも使われますが、後者の方です。規格がRFCに取りまとめられ、かなり前から標準化が行なわれていますが、最新の NFS version 4 (RFC3530)でも制定れたのは今から10年前の2003年。セキュリティの向上や性能の向上も計られつつも、移り変りの早いコンピュータ業界の流れに着いていけてない感が否めないです。
- 1に関係してくる事ですが、最近では
- 自宅でも無線LAN環境が普通
- 出先でも3GやLTE回線を用いた通信環境が普通
- 職場の環境がWindows。SFU?何それ?
- AndroidやiOSなど、色々なモバイル端末も一般化
てなご時世ですので、通信の品質があまり良くない環境からも使うことが多くなりました。NAT越えのマウントとかも当たり前ですしね。
- それで、例えば、マウントしているクライアントが音信不通になったり、ちょっと不安定になるとnfs-kernel-serverを再起動してやらないといけないとか、パーミッションのちぐはぐ感であったりとか、ユーザランドでの使い勝手が悪い点、NAT越えをさせてもセキュリティ的にどうなの、などなど…そういうところが不便です。「磐石なシステム」を念頭に設計されているシステムは、NFSに限らず古くからあるUNIX系のソフトには多いことです。
- あ、あとサーバ側もexportsを管理してやったりと、設定がちょっと面倒ですね。AndroidなんかのLinuxカーネルは、nfs-clientモジュールが入ってなかったりと、クライアント側の負担もちょっとあります。
- その点、SSHFSは活発にメンテナンスが行なわれていますし、セキュリティ面はSSH本体に丸投げ、SSHd自体は常に稼動させているくらいスタンダードなデーモンなのでよし、fuseと絡めてユーザランドでの使い勝手も良いし、気になっていた負荷や速度面でも、試してみると問題がないようです。
挙げ出すとキリがないかもしれませんが、「これまでお世話になりました。」という気持ちでそっと remove しました。