<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ja">
	<id>https://wikippe.e-do-match.com/index.php?action=history&amp;feed=atom&amp;title=Network_File_System</id>
	<title>Network File System - 版の履歴</title>
	<link rel="self" type="application/atom+xml" href="https://wikippe.e-do-match.com/index.php?action=history&amp;feed=atom&amp;title=Network_File_System"/>
	<link rel="alternate" type="text/html" href="https://wikippe.e-do-match.com/index.php?title=Network_File_System&amp;action=history"/>
	<updated>2026-08-23T22:39:35Z</updated>
	<subtitle>このウィキのこのページに関する変更履歴</subtitle>
	<generator>MediaWiki 1.44.2</generator>
	<entry>
		<id>https://wikippe.e-do-match.com/index.php?title=Network_File_System&amp;diff=81890&amp;oldid=prev</id>
		<title>2014年3月31日 (月) 17:19に61.86.139.79による</title>
		<link rel="alternate" type="text/html" href="https://wikippe.e-do-match.com/index.php?title=Network_File_System&amp;diff=81890&amp;oldid=prev"/>
		<updated>2014-03-31T17:19:11Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新規ページ&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Network File System&amp;#039;&amp;#039;&amp;#039;、&amp;#039;&amp;#039;&amp;#039;NFS&amp;#039;&amp;#039;&amp;#039;は、RFC 1094、RFC 1813、RFC 3530などによって定義され、[[UNIX]]で利用される[[分散ファイルシステム]]およびその[[通信プロトコル|プロトコル]]である。[[1984年]]に[[サン・マイクロシステムズ]]によって実質的な最初の規格となるNFS version 2 (NFS v2) が発表された。&lt;br /&gt;
&lt;br /&gt;
== 概要 ==&lt;br /&gt;
NFSは、ローカルに接続された[[ストレージ]]をネットワークを介してリモートの計算機に提供する分散ファイルシステムとそのプロトコルである。[[mount (UNIX)|マウント]]されたNFSボリュームは、ネットワーク上にあることを意識せずローカルと同じように利用出来る。[[Network File System#関連プロトコル]]で述べるように、ファイルロック機能やクォータ管理機能などはNFSプロトコル本体に含まれず、それぞれ別のプロトコルによって提供される。&lt;br /&gt;
&lt;br /&gt;
NFSのサービスは一般的に[[User Datagram Protocol|UDP]]または[[Transmission Control Protocol|TCP]]の2049番ポートで提供される。ボリュームを提供するNFSサーバとそれを利用するクライアント間の[[RPC|リモートプロシージャコール]]には、NFSの一部として開発された[[Open Network Computing Remote Procedure Call|ONC RPC]]を利用している。NFSv3までは、ファイルロックやマウント要求等のONC RPCに使われるポート番号は[[ポートマッパー]]によって動的に割り当てられることが一般的であった。そのため、ポート番号を固定するオプションを持たない実装の場合、[[ファイヤーウォール]]によるポート番号ベースの通信制御は困難であった。NFSv4からは、同等の機構がNFS本体に組み込まれ、サーバ-クライアント間の通信には2049番ポートのみを利用するようになった。&lt;br /&gt;
&lt;br /&gt;
== 歴史 ==&lt;br /&gt;
&lt;br /&gt;
=== NFS version 1 ===&lt;br /&gt;
NFS version 1 (NFS v1) は、サン・マイクロシステムズ内の実験にとどまり、対外的なリリースはされなかった。&lt;br /&gt;
&lt;br /&gt;
=== NFS version 2 ===&lt;br /&gt;
NFS v2の仕様は1984年に発表され、[[1985年]]にはNFS v2を初めて実装した[[SunOS]] 2.0がリリースされた。その後[[1989年]]3月にはRFC 1094が取りまとめられ標準化された。&lt;br /&gt;
NFS v2の開発にはRusty Sandberg, Bob Lyon, [[ビル・ジョイ|Bill Joy]], Steve Kleimanなどが参加していた。元々のNFS v2では通信に[[User Datagram Protocol|UDP]]のみを利用することになっているが、これはファイルロック機能をNFSの枠組みの外で実装することでプロトコルをステートレスに保つのが目的であった。&lt;br /&gt;
&lt;br /&gt;
=== NFS version 3 ===&lt;br /&gt;
[[1995年]]6月にRFC 1813で定義されたNFS v3では、次の機能が追加された。&lt;br /&gt;
* ファイルサイズおよび読み書き時に指定するオフセットの型を32bitから64bitに拡張し、4[[GiB]]以上のファイルをサポートした。&lt;br /&gt;
* 書き込み性能を向上させるため、サーバへの非同期書き込みをサポートした。&lt;br /&gt;
* ファイル属性を別途取得するプロシージャ呼び出しを省くために、多くのプロシージャでその返値にファイル属性を追加した。&lt;br /&gt;
* ディレクトリを走査する時、そこに含まれるファイル名に加えファイルハンドルと属性を一度に取得できる&amp;#039;&amp;#039;READDIRPLUS&amp;#039;&amp;#039;プロシージャを追加した。&lt;br /&gt;
* その他の改良&lt;br /&gt;
また、NFS v2の時点ですでに[[Transmission Control Protocol|TCP]]による転送をサポートするベンダーが複数存在したことから、サン・マイクロシステムズはNFS v3からTCP転送を仕様に追加した。これにより[[Wide Area Network|WAN]]を介したNFSがより安定して動作するようになった。&lt;br /&gt;
&lt;br /&gt;
=== NFS version 4 ===&lt;br /&gt;
[[Andrew File System|AFS]]や[[CIFS]]の存在を踏まえ、[[2000年]]12月にRFC 3010で、また[[2003年]]4月にRFC 3530で改定されたNFS v4では、性能の向上策、[[ケルベロス認証|Kerberos認証]]などの強力なセキュリティ、またステートフルなプロトコルを導入した。NFS v4からはその開発主体が[[Internet Engineering Task Force]]へ移動し、サン・マイクロシステムズに加え[[ネットアップ]]なども規格策定に携わった。&lt;br /&gt;
&lt;br /&gt;
== 関連プロトコル ==&lt;br /&gt;
NFSに付随するプロトコルは次のようなものがある。&lt;br /&gt;
;Network Lock Manager:[[UNIX System V]]に追加された[[ファイルロック]]機構&lt;br /&gt;
;[[クォータ]]情報の遠隔通知:NFSサーバが管理するクォータの状態をクライアントに通知するもので、&amp;#039;&amp;#039;rquota&amp;#039;&amp;#039;とも呼ばれる。なお、クォータ管理そのものはサーバの役割であり、クライアントはその情報を受け取っているだけである。&lt;br /&gt;
;WebNFS:[[ウェブブラウザ]]とNFSを統合し、[[ファイアーウォール]]を介した利用を実現するNFS v2, v3の拡張&lt;br /&gt;
&lt;br /&gt;
== アクセスコントロール ==&lt;br /&gt;
[[NFS#NFS version 2|NFS v2]]および[[NFS#NFS version 3|NFS v3]]では、ユーザーのアクセス権限にUNIXの[[ユーザー識別子#ユーザー識別子|ユーザー識別子]]および[[ユーザー識別子#グループ識別子|グループ識別子]]をそのまま用いている。&lt;br /&gt;
デフォルトではクライアント側に設定された識別子番号がそのままNFSサーバに渡され、サーバはそれを見てアクセスを制御する。クライアントとサーバ間でグループ識別子を別々に管理している場合では、管理者が用意したサーバ側とクライアント側の識別子対応表を参照するか、クライアントが用意した[[ネットワーク・インフォメーション・サービス|NIS]]サーバあるいは専用のデーモン&amp;#039;&amp;#039;ugidd&amp;#039;&amp;#039;をサーバが参照するように設定することでアクセスコントロールを行う。&lt;br /&gt;
&lt;br /&gt;
[[NFS#NFS version 4|NFS v4]]ではそれらに加え、Kerberos認証を利用したユーザ名ベースのアクセスコントロールを新たにサポートした。&lt;br /&gt;
&lt;br /&gt;
=== root squash ===&lt;br /&gt;
一般的に、管理者権限による無制限なアクセスをNFSクライアントに許可することは危険である。そのため、UNIXシステムでスーパーユーザを示す識別子0によるクライアントからのアクセスを、NFSサーバ側でより権限の低いユーザー識別子に強制的に割り当てる&amp;#039;&amp;#039;root_squash&amp;#039;&amp;#039;という機能を標準で有効にするものが多い。&lt;br /&gt;
&lt;br /&gt;
== 利用可能なプラットフォーム ==&lt;br /&gt;
[[1985年]]に[[SunOS]] 2.0に最初に実装された後、多くのUNIX系OSに実装された。その他にも[[Mac OS]]や[[Microsoft Windows|Windows]]、[[NetWare]]、[[AS/400]]でも利用できる。[[Microsoft Windows|Windows]]では、Microsoftの[[Services for UNIX]]がNFSサーバおよびクライアントの機能を提供している。&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- どのNFS実装にて以下の問題点が起きるのか明記されていないのでコメントアウト。 &lt;br /&gt;
==問題点==&lt;br /&gt;
バージョン3において、/etc/sysconfig/nfsを編集することでNFSサービスのポートを固定することが可能となったが、rquotaの機能を無効とした場合、nlockmgrのポート固定の設定がOSブート時のみ無効となってしまう。一応OS再起動後にNFSサーバを再起動すると、パラメータ通りの値になる。また、modprobe.confやmodules.confを編集することでカーネルに直接設定を渡すよう個別に設定すれば回避できる。&lt;br /&gt;
&lt;br /&gt;
バージョン4からは、実質クライアントがサーバのnfsd(2049)にアクセスすることができれば、NFSをマウントすることが可能となった。そのため、NFSのプロセスからportmapは不要となったのだが、NFSサーバはportmapサービスが立ち上がっていないと立ち上がらない。&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 関連項目 ==&lt;br /&gt;
*[[Common Internet File System]]&lt;br /&gt;
*[[WebDAV]]&lt;br /&gt;
*[[ネットワークアタッチトストレージ]] (NAS)&lt;br /&gt;
*[[TCP Wrapper]]&lt;br /&gt;
&lt;br /&gt;
== 参考文献 ==&lt;br /&gt;
*RFC 1085&lt;br /&gt;
*RFC 1813&lt;br /&gt;
*RFC 3530&lt;br /&gt;
*{{Cite web|author=Internet Engineering Task Force|title=Network File System Version 4 (nfsv4) Charter|url=http://www.ietf.org/html.charters/nfsv4-charter.html|date=2006-03-24|accessdate=2007-10-17}}&lt;br /&gt;
*{{Cite book |last=Zadok |first=Erez |year=2001 |title=Linux NFS and Automounter Administration |publisher=Sybex Inc |id=ISBN 978-0-7821-2739-3 }}&lt;br /&gt;
**{{Cite book|和書|author=イレズ ザドック|others=槌田 浩一|title=NFS &amp;amp; Amd|publisher=翔泳社|year=2003|id=ISBN 978-4-7981-0104-0}}&lt;br /&gt;
*{{Cite book|title=Managing NFS and NIS|edition=2nd Edition&lt;br /&gt;
|last=Eisler|first=Mike|coauthors=Ricardo Labiaga, Hal Stern|year=2001|publisher=O&amp;#039;Reilly Media, Inc.|id=ISBN 978-1-56592-510-6}}&lt;br /&gt;
**{{Cite book|和書|title=NFS&amp;amp;NIS|edition=第二版&lt;br /&gt;
|author=ハル スターン、リカルド ラビアガ、マイク アイスラー|others=砂原 秀樹, 木下 哲也&lt;br /&gt;
|year=2002|publisher=[[オライリー・ジャパン]]|id=ISBN 978-4-87311-078-3}}&lt;br /&gt;
=== 各プラットフォームに関する情報 ===&lt;br /&gt;
*Linux&lt;br /&gt;
**{{Cite web|author=Tavis Barr|coauthors=Seth Vidal, Tom McNeal|others=中野武雄|date=2002-11-16|url=http://linuxjf.sourceforge.jp/JFdocs/NFS-HOWTO/|title=Linux NFS-HOWTO|accessdate=2007-10-17}}&lt;br /&gt;
*FreeBSD&lt;br /&gt;
**{{Cite web|last=Swingle|first=Bill|others=FreeBSD 日本語ドキュメンテーションプロジェクト|date=2000-03-04&lt;br /&gt;
|title=FreeBSD ハンドブック Chapter 21.4 NFS&lt;br /&gt;
|url=http://www.freebsd.org/doc/ja_JP.eucJP/books/handbook/nfs.html&lt;br /&gt;
|accessdate=2007-10-17}}&lt;br /&gt;
*Solaris&lt;br /&gt;
**{{Cite web|author=Sun Microsystems, Inc.|title=Solaris のシステム管理 (ネットワークサービス)&lt;br /&gt;
|url=http://docs.sun.com/app/docs/doc/819-0381/rfsintro-2?l=ja&amp;amp;a=view&lt;br /&gt;
|accessdate=2007-10-17}}&lt;br /&gt;
&lt;br /&gt;
{{DEFAULTSORT:ねつとわあくふあいるしすてむ}}&lt;br /&gt;
{{ファイルシステム}}&lt;br /&gt;
{{Sun Microsystems}}&lt;br /&gt;
&lt;br /&gt;
[[Category:OSのファイルシステム]]&lt;br /&gt;
[[Category:UNIX]]&lt;br /&gt;
[[Category:通信プロトコル]]&lt;br /&gt;
[[Category:RFC|1085]]&lt;/div&gt;</summary>
		<author><name>61.86.139.79</name></author>
	</entry>
</feed>