例としてLTSPとCentOS 5.4を使用してターミナルサーバーを上げる

イントロ



現在、シンクライアントを使用するというアイデアは非常に人気があり、特に大学などでトレーニングクラスを開催するために使用されています。 だから私の好きな大学のために一生懸命働かなければなりませんでした。

少し前まで、CentOS 5.4でターミナルサーバーを選択して構成する作業を任されていました。 CentOSを選ぶ理由-想像できませんが、おそらくターミナルサーバーを後からサポートするシステム管理者の好みでした。 まあ、私は選択する権利を与えられませんでした。



私にとっての仕事は新しいもので、とても面白そうで、一見簡単ではありませんでした。 Googleが私に言った多くの情報を研究して、私の選択はLTSP( Linux Terminal Server Project )にかかった。 このソフトウェアは、XサーバーとXクライアント間の認証にXDMCPプロトコルを使用し、 xrdpプロジェクトを使用して、ターミナルクライアント(シンクライアント)が* NIXシステムとWindowsの両方に接続できるようにします。



このソフトウェアをすでに使用しており、 K12LTSPSkolelinuxなどのターミナルサーバー用に特別に作成された多くのディストリビューションがあります。 また、このソリューションには代替のUbuntuドライブも付属しています。

私の場合、CentOS用の既製のソリューションがなく、これらのパッケージもリポジトリにないため、すべてが少し複雑でした。 セットアップとインストールの際、彼はレーキを踏んだが、その解決には多くの時間がかかった。 お気に入りのHabréにLTSPをインストールするための可能な解決策を探しましたが、何も見つかりませんでした。だから、記事を書くというアイデアが生まれました。



この情報が誰かに役立つことを願っています。できるだけ詳細にインストールと設定のプロセスを説明しようと思います。



どのように機能しますか?



多くを語る必要はないと思います。 シンクライアントは通常、ディスクレスステーションそのものです。 オンにすると、 PXEを使用してネットワークカードを使用して起動しようとします。 なぜなら PXEは、ブートローダーのサイズを32キロバイトに制限します。最初のブートローダーがオペレーティングシステムイメージを既に受信および起動する2番目のブートローダーを受信および起動するときに、2ステージブートが使用されます。 その後、LTSPによって作成されたOSカーネルが読み込まれ、NFSを介してターミナルサーバーに保存されているファイルシステムがマウントされ、ターミナルサーバーに接続するターミナルクライアントが起動されます。

上記のすべての結果は、DHCP、TFTP、NFS、およびターミナルサーバー自体が発生するサーバーになります。



それでは始めましょう



最初に必要なことは、CentOS 5.4 x86_64をインストールすることでした。 私はすぐにCentOSの経験が少ないと言いたいです。 何らかの理由で、RedHatの全シリーズとそれに基づくディストリビューションが気に入らないということが起こります。 グラフィカルなシェルとして、私はKDEを好みました(まあ、Gnomeは嫌いです)。 KDEとCentOSには多くの問題がありました。



まず、サイトにアクセスして、LTSPパッケージ( http://ltsp.mirrors.tds.net/pub/ltsp/isos/ )を含むディスクイメージをダウンロードします。 バージョン4.1.1を選択したのは、 新しいバージョンのベルとホイッスル(sshを介したセッションなど、不要なもの)。 次に、このイメージをマウントし、 ltsp-utils.0.11-o.noarch.rpmパッケージをインストールします



#rpm –i ltsp-utils.0.11-o.noarch.rpm







その後、 ltspadminおよびltspcfgコマンドラインユーティリティを入手します 。 最初のユーティリティはインストールとLTSPインストール自体を構成するために使用され、2番目は既にインストールされているターミナルサーバーを構成するために使用されます。 ltspadminユーティリティを起動します



画像



まず、インストーラーを設定する必要があります。 インストーラーオプション設定メニュー項目を選択します。 パッケージの受け取り先を決定するための最初の質問。 プロジェクト自体のサイトを使用できますが、マウントしたイメージへのパスを示す方が合理的です。 私の場合、これはファイルです:/// media / CDROM / 。 パスには正確に3つのスラッシュが使用されていることに注意してください。これはインストールマニュアルにも記載されています。



画像



次の質問は、LTSPをインストールする場所です。 デフォルトでは、 / opt / ltspを指します。 変更する理由はありません。 httpパッケージの場所へのパスとしてアドレス(デフォルトで設定)を指定した場合、プロキシサーバーのhttpアドレス(またはパケットがftpの場合はftp)を指定する必要があります。 最後に、設定が正しいことを確認し、前のメニュー項目に戻ります。 これで、ターミナルサーバーのインストールを開始できます。



インストール後、次のようになります。



DHCPサーバーとTFTPサーバーをインストールします。



ネットワーク経由でシンクライアントをダウンロードするには、DHCPサーバーとTFTPサーバーが必要です。 CentOSディストリビューションにTFTPサーバーが見つからなかったため、DHCPを手動でインストールすることにしました-これはより信頼性が高いです。 したがって、それらをインストールします。



# yum install dhcp.x86_64 tftp-server.x86-64







次に、ターミナルサーバーのファイアウォールでUDPプロトコル用の69ポートを開きます。 これを行うには、コンソールユーティリティsystem-config-securitylevel-tuiを使用します。 「洗練」ボタンをクリックして、ファイアウォールのルールを構成します



画像



私の場合、サーバーには2つのインターフェイスがあります。1つはクラスのネットワークを調べ、2つ目は管理インターフェイスです。 シンクライアントがtftpサーバーにアクセスして信頼できるインターフェイスに追加するインターフェイスを選択し、その69番目のポートを開きます。



LTSP設定



設定には、ltspadminユーティリティのConfigure LTSPメニュー項目を使用するか、ltspcfgを直接呼び出します。 表示されるメニューで、手動設定を選択します。



画像



私たちは11のポイントすべてを通過します。 ポイント8は、原則としてスキップできます。 完了後、必要なほぼすべてのものが設定されます。

パラグラフ3および7に注意する価値があります。パラグラフ3では、編集する必要があるDHCPサーバー構成のサンプルファイル( /etc/dhcpd.conf.sample )が作成されます。 変更後-彼は私から次のフォームを取得しました:



#

# Sample configuration file for ISC dhcpd

#

# Make changes to this file and copy it to /etc/dhcpd.conf.sample

#



ddns-update-style none;

default-lease-time 21600;

max-lease-time 21600;



#option domain-name "ltsp"; # <--Fix this domain name



option option-128 code 128 = string;

option option-129 code 129 = text;



subnet 192.168.130.0 netmask 255.255.255.0 {

use-host-decl-names on;

option log-servers 192.168.130.254;

range dynamic-bootp 192.168.130.1 192.168.130.253; ## .

option root-path "192.168.130.254:/opt/ltsp/i386"; ## .

option broadcast-address 192.168.130.255;

option routers 192.168.130.254;

option subnet-mask 255.255.255.0;

if substring (option vendor-class-identifier, 0, 9) = "PXEClient" ## - PXE

{

filename "lts/2.6.9-ltsp-3/pxelinux.0"; ## CentOS tftp -s, . /tftpboot/lts/.....

}

next-server 192.168.130.254; ## <- . !

}









PXEブートローダーへのパスが完全ではないという事実に注意を喚起したいと思います。 RedHatとCentOSでは、それぞれ-sスイッチで始まりますが、途中でtftpサーバーフォルダーを省略します。 また、理論上、next-serverオプションは、DHCPサーバーとTFTPサーバーが異なるサーバー上にある場合にのみ指定する必要があるという事実にも問題がありました。 しかし、このオプションがないと、次のサーバーとして自分を複製するまでダウンロードが停止しました。



この時点で、セットアップが完了したことを嬉しく思い、シンクライアントから起動しようとしました。 しかし、そこにありました! その結果、Xが起動されましたが、ターミナルサーバーへの接続はありませんでした。 判明したように、CentOSの標準セッションマネージャーはgdm(Gnome)であり、Gnomeがまったくなかったため、kdmは起動しようとしませんでした。 OSがkdmを使用するには、構成ファイル、つまり/ etc / sysconfig / desktopに変更を加える必要があります (ファイルがない場合は作成する必要があります)。



DISPLAYMANAGER="KDE"







次の悔しさは、Xがターミナルクライアントで起動されたときに落ちたことです。 サーバーは、リモートセッションを開こうとする試みを愚かに拒否しました。 変更は問題ではありません。私にとっての問題は、標準のKDE構成ファイルが見つからなかったことです。 CentOSでは、それらは完全に異なる場所に「隠されています」。 その結果、その場所は次のように決定できます。



# locate Xaccess







次に、指定されたファイルで、次の行を探します



#* #any host can get a login window







そしてコメント解除します。 Xを再起動し、シンクライアントを起動します。 すべてが機能します!



結論



その結果、シンクライアントの使用に基づいたコンピュータークラスを取得しました。 それらの利点について話すべきではありません。 声明によると、一般的な推奨事項は常にこれです。サーバー自体に256 MBのRAM、さらに接続された各クライアントに60 MB(端末に100 MBを割り当てることをお勧めします)。 すべてのプログラムはサーバー上で実行されるため、計算能力を確保するために問題はありません。デュアルコアまたはデュアルプロセッサシステムが特に適しています。 多くのクライアントで作業する場合、パフォーマンスが向上するだけでなく、多くのメモリで動作するため、64ビットプロセッサを使用すると便利です。多くの場合、これはパフォーマンスを制限する最も重要な要素です。 これが実際にどのように機能するかはまだわかっていません。 このトピックに興味がある人は、次の投稿で結果について書きます。



関連リンク





http://subhodip.fedorapeople.org/ltsp_in_fedora8.pdf

http://edin.no-ip.com/content/ltsp-ubuntu-intrepid-mini-howto

http://www.ltsp.org.ru/files/OnlineDocs/ltsp-3.0-ru/chapter6.html

http://www.owlriver.com/tips/gdm-setup/remotexkdm.html

http://sourceforge.net/apps/mediawiki/ltsp/index.php?title=Ltsp_Documentation



All Articles