Gentoo - LTSPガイド
1.
はじめに
LTSPとは?
LTSPは"Linux Terminal Server Project"の略語で、サーバにインストールすると、多くのワークステーション(シン・クライアントと呼ばれます)に共通した環境を提供できます。
アプリケーションは全てサーバ上で実行されるので、古いPCであってもXTerminalとして使うことができます。
これを使えば、特に、(学校や会社のような)ログインするそれぞれのコンピュータで同じワークスペースを用意する必要がある環境におけるコストや管理の手間を減らすことができます。
2.
インストール
予備知識
このドキュメントでは、サーバのIPアドレスが192.168.0.254、ドメインがyourdomain.com、ネットワークが192.168.0.0/24であると仮定して解説します。
インストール
まずはじめに、きちんと稼働しているGentooシステムが必要です。Gentooのドキュメント一覧からお使いのハードウェアのアーキテクチャに合ったインストール手引書を探して読んでおいてください。
では、簡単な作業から始めましょう。ltspのコアとなるユーティリティをインストールします:
コード表示 2.1: Emerge LTSP |
# emerge ltsp-core
|
依存関係のあるパッケージとして、次のようなものがインストールされます:
-
XFree: どうしてって?XTerminalsって呼ぶでしょ。 :)
-
DHCP: DHCPは、TCP/IPを使うコンピュータの設定を自動的に行うためのプロトコルで、LTSPでは各ワークステーションにIPアドレスを割り当てるのに使います。
-
NFS: NFSはネットワークを介してハードディスクにアクセスするためのプロトコルです。LTSPではワークステーション用の基本システムをマウントするために使います。
-
TFTP: TFTPは簡単なファイル送受信プロトコルです。LTSPではワークステーションにカーネルを送信するために使います。
-
XINETD: xinetdはinetdに代わる、強力で細かな機能を持ったデーモンで、LTSPにおいてTFTPを開始させるために使います。
注意:
もしもUSE変数にkdeやgnomeが指定してあれば、完全なKDE/GNOMEシステムもインストールされます。
|
3.
設定
emergeが終ったら、全てのサービスを設定しなければなりません:
システムロガー
問題を簡単に分析するためには、システムロガーをリモート接続を受け付けられるように設定しておかなければなりません。設定方法については、お使いのシステムロガーのドキュメントをお読みください。
NFS
次に行う作業は、/etc/exportsの編集です。ここでは、ワークステーションがルートファイルシステムをマウントできるようにします。最低限、2行程度は記述する必要があるでしょう:
コード表示 1.1: /etc/exports |
/opt/ltsp/i386 192.168.0.0/255.255.255.0(ro,no_root_squash,async)
/var/opt/ltsp/swapfiles 192.168.0.0/255.255.255.0(rw,no_root_squash,async)
|
注意:
ネットワーク/ネットマスクは、環境に応じて変更しなければなりません。
|
では、NFSを起動しましょう。
コード表示 1.1: NFSの起動 |
# rc-update add nfs default
# /etc/init.d/nfs start
|
xinetd/TFTP
TFTPはそのままでは動かないので、/etc/xinetd.d/tftpを編集してdisable=yesとなっているところをdisable=noにしてください。そして、xinetdを起動します。
コード表示 1.1: xinetdを起動 |
# rc-update add xinetd default
# /etc/init.d/xinetd start
|
名前解決
ワークステーションから全てのリソースにアクセスできるようにするためには、正しく名前解決が行えなければなりません。これを行う方法はいくつかあります。ひとつはローカルネットワークにDNSサーバを設置する方法で、もう一つは(もっと単純に)、全てのシステムに同一の/etc/hosts を設定する方法です。今回は後者の方法でやっていくことにします。
全てのワークステーションが /etc/hosts に列挙されていなければなりません、次の例を御覧ください:
コード表示 1.1: /etc/hosts |
127.0.0.1 localhost
192.168.0.254 server server.yourdomain.com
192.168.0.1 ws-1 ws-1.yourdomain.com
|
DHCPの設定
これは私が提案する方法の中で一番面倒なもので、DHCPの設定(/etc/dhcp/dhcpd.conf)を正しく作成しなければなりません。例としては次のようになります:
コード表示 1.1: dhcpd.conf |
default-lease-time 21600;
max-lease-time 21600;
use-host-decl-names on;
ddns-update-style ad-hoc;
allow booting;
allow bootp;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.0.255;
option routers 192.168.0.254;
option domain-name-servers 192.168.0.254;
option log-servers 192.168.0.254;
option domain-name "yourdomain.com";
option root-path "192.168.0.254:/opt/ltsp/i386";
filename "/lts/vmlinuz-2.4.19-ltsp-1";
#option option-128 code 128 = string;
#option option-129 code 129 = text;
#option option-128 e4:45:74:68:00:00;
#option option-129 "NIC=ne IO=0x300";
shared-network WORKSTATIONS {
subnet 192.168.0.0 netmask 255.255.255.0 {
range dynamic-bootp 192.168.1.1 192.168.1.16;
#host ws001 {
# hardware ethernet 00:E0:06:E8:00:84;
# fixed-address 192.168.0.1;
#}
}
}
|
ワークステーションがPXEをサポートしている場合は、上でhost ws001(コメントを外すのを忘れないようにしてください)としているように、それぞれのワークステーションを列挙してください。また、これらにはダイナミックレンジでIPアドレスを割り当てないようにしてください。そうしないと、同時に複数のワークステーションが同じIPアドレスを取得してしまうことがあります。(これはトラブルの原因になります。)
この作業に関するもっと詳しい情報については、DHCPの公式な手引を御覧ください:
http://www.dhcp-handbook.com/
では、NFSとxinetdを起動した時のようにDHCPを起動してみましょう:
コード表示 1.1: xinetdの起動 |
# rc-update add dhcp default
# /etc/init.d/dhcp start
|
注意:
注意: DHCPを動作させるためには、カーネルの設定でCONFIG_PACKETとCONFIG_FILTERを有効にしておく必要があります。
|
LTSPの設定
ワークステーションを設定するための項目は数多くあります。/opt/ltsp/i386/etc/lts.confに関する完全な解説については、http://www.ltsp.org/documentation/ltsp-3.0-4-en.html#AEN903を御覧ください。
ディスプレイ・マネージャ
次に、リモート接続も受け付けるようにディスプレイマネージャの設定を変更しなければなりません。
まず、Xaccessというファイルを編集します。次の行のコメントを外してください:
コード表示 1.1: Xaccess |
#* #any host can get a login window
|
それでは、お使いのディスプレイマネージャの設定を変更してください:
XDM: /etc/X11/xdm/xdm-configにあるDisplayManager.requestPort: 0の部分をコメントアウトしてください。
KDM: /usr/kde/3.1/share/config/kdm/kdmrcの中から[Xdmcp]セクションを探して、Enable = falseとなっているものをEnable = trueに変更してください。
GDM: /etc/X11/gdm/gdm.confの中から[xdmcp]セクションを探して、Enable = falseとなっているものをEnable = trueに変更してください。
では、ディスプレイマネージャを起動しましょう:
コード表示 1.1: xdmの起動 |
# rc-update add xdm default
# /etc/init.d/xdm start
|
警告:
現在、XDMとGDMには問題があるようです。この問題を解決するため、筆者はKDMを使っています。
|
起動用フロッピーの作成
ワークステーションがPXEブートをサポートしていなければ、起動用フロッピーを作らなければなりません。これはワークステーションを起動するために必要です。http://www.rom-o-matic.net/5.0.9/を開いて、お使いのNICを選択してGet ROMを押し、イメージをフロッピーに書き込んでください:
コード表示 1.1: フロッピーにイメージを書き込む |
# cat nicfile.lzdsk > /dev/fd0
|
4.
トラブルシューティング
トラブルの原因というのはたくさんあるものですが、それを解決する手がかりになる資料も結構あるものなんですよ:
5.
FAQ
Q:私のワークステーションはCPUにPentium IIを使っていますが、サーバの方はmarch=athlon-xpでコンパイルしています。これでも動きますか?
A:大丈夫です、だってアプリケーションは全部サーバ上で動くんですから。
Q:サーバには、どのCPU、どれくらいのRAM容量が必要ですか?
A:http://ltsp.org/documentation/server_suggestions.html に、提案も含めて良い資料があります。
Q:PXEの資料について、もっと詳しく情報などはありますか??
A:はい。http://ltsp.org/documentation/eproms.txt
と http://ltsp.org/documentation/pxe.howto.htmlを御覧ください。
Q:ワークステーションで、3Dアクセラレーションを使ったソフトウェアは動きますか?
A:NVidiaのカードを使っているのならhttp://ltsp.org/documentation/nvidia.txtを御覧ください。
Q:アプリケーションによってはフォントが変になります。どうしたらいいでしょうか?
A:
Xフォントサーバの設定が必要です。USE_XFS=Yをlts.confに追加して、/etc/X11/fs/configを編集し、no-listen: tcpとなっている場所をコメントアウトします。そして、/etc/conf.d/xfsを開いてXFS_PORT="-1"となっている場所をXFS_PORT="7100"としてください。
最後に/etc/init.d/xfs startでXFSを起動します。
Q: ワークステーションに付属しているサウンドカードはどうやって使えばよいのでしょうか?
A: Gentooにはltsp-soundというパッケージがあります。詳細は付属のREADMEというファイルをご覧ください。
6.
用語集
LTSP
"LTSPを使えば、簡単な方法で、GNU/Linuxサーバ上で安価なワークステーションによって、グラフィカル、あるいはキャラクタベースのターミナルを使えるようにできます。"
PXE
"Pre-boot Execution Environmentの略称で、ピクシー(訳注: 原文ではpixie)と呼びます。PXEはIntelのWfMという仕様のひとつで、ローカルディスク上のOSを使う前にネットワーク上のサーバを使ってワークステーションを起動する技術です。PXEが使えるワークステーションでは、電源が切れていてもネットワークとの接続を維持するジャンパを使ってNICからLANに接続します。"
このドキュメントの内容は、他のものが明示されない限りは、
CC-BY-SA-2.5ライセンスです。
Gentoo Name and Logo Usage Guidelines (日本語訳)が適用されます。
|