Network Block Device (TCP バージョン) NBD とは:これをカーネルに組み込むと (またはモジュールとして使うと)、 Linux はリモートサーバをブロックデバイスの一つとして扱えるようになり ます。したがって、クライアントコンピュータが、例えば /dev/nd0 を読み 出したい時はいつでも TCP でサーバへ要求を送り、サーバはデータ読出しの 応答をします。この方法は、ディスク領域の少ないステーション (あるいは フロッピーからブートするならディスクレスでも) で、別のコンピュータの ディスク領域を借用するのに利用できます。NFS とは異なり、その領域には どんなファイルシステムでも置くことができます。(試したことはありません が) NBD をルートファイルシステムとして使うこともできますが、起動する ためには、初期 RAM ディスク内にユーザレベルプログラムが必要です。さらに、 ユーザランドでブロックデバイスを実行できます (物理的に同じコンピュータ をサーバとクライアントとし、ループバックを使用して通信します)。 現状:現在動作します。NBD は安定しています。元々 TCP 上で swap はでき ないと考えていました。しかし、それは真実でないことが判明しました。現在 TCP 上での swap は動作し、デッドロックも起きないようですが、このため には Linux のネットワーク層に相当な量のパッチをあてる必要があります。 より多くの情報、nbd-client と nbd-server ツールのダウンロードについては、 http://nbd.sf.net/ を訪ねてください。 HOWTO:NBD のセットアップは、単純に下記のとおりにしてください。 最初に、リモートサーバ側で、デバイスもしくはファイルを提供します。 nbd-server <ポート番号> <クライアントに提供するデバイスまたはファイル> 例) root@server1 # nbd-server 1234 /dev/sdb1 (TCP ポート 1234 で、パーティション sdb1 を提供する) その後、ローカル (クライアント) システム側で、次のようにします。 nbd-client <サーバ名もしくは IP> <サーバポート番号> /dev/nb[0-n] 例) root@client1 # nbd-client server1 1234 /dev/nb0 (クライアントで nb0 デバイスを作成する) NBD カーネルモジュールのインストールが必要なのは、クライアントシステム 側だけです。というのも、nbd-server は完全にユーザ空間に存在するからです。 事実、nbd-server は、Windows を含む他のオペレーティングシステムへの移植に 成功しています。 ------------------------------------------------------------ 翻訳団体: JF プロジェクト < http://www.linux.or.jp/JF/ > 最終更新: 2004/04/15 翻訳者: 野本 浩一 <hng(a)ps.ksky.ne.jp> 校正: 中谷 千絵 <jeanne(a)mbox.kyoto-inet.or.jp> 堀田 倫英 <hotta(a)net-newbie.com> 更新: 川崎 貴彦 <takahiko(a)hakubi.co.jp>