ラベル X の投稿を表示しています。 すべての投稿を表示
ラベル X の投稿を表示しています。 すべての投稿を表示

2008年6月22日日曜日

解像度 INSPIRON 700m

ここ最近、自宅用ではubuntuの簡単さが素晴らしく使っていましたが、RedHat系(業務系)とは異なるのとCUIで操作しなくなるので、CentOSに戻しました。

戻したら、解像度とか無線LANの設定とかFirefoxの最新版をインストールしなければ、とか色々と設定しなければならないことを思い出しました。こういった場合、Webで検索して設定するのですが、再インストール時に毎回検索するのは面倒なので自分のためにもログに残しておきます。ということで、今回は解像度の設定変更について。

自宅のノートPCはDELLのINSPIRON 700mを使用しています。これは、解像度1280×800なのですが、RedHat系は大概、1024×768で認識してしまいます。

まえは、855resolutionというのを使用した記憶があったので、ダウンロード使用としたところ、既に無くなっていました。いまは、915resolutionになっているようです。
なので、ダウンロードしようとしましたが、どうやら時代は進化しているようで、インストールしなくても以下の方法で解像度を変更出来るようです。

[管理]-[ディスプレイ]-[ハードウェア]-[ビデオカード]のIntel を選んでからctrl+alt+BSを押してXを再起動したところ、1280×800になってました。

2007年12月3日月曜日

ディスプレイマネージャー/ウィンドウマネージャー/デスクトップマネージャー

XサーバとXクライアントを紐解くと(X端末の設定方法 ~XサーバとXクライアント~)続いてごちゃごちゃになるのが、ディスプレイマネージャー、ウィンドウマネージャー、デスクトップマネージャーの3つ。それぞれがどのような役割か確認する。

ディスプレイマネージャー
グラフィカルログインをする際にユーザ認証を行うプログラム、主にxdm、gdm、kdmの3種類がある。それぞれの、設定ファイルの場所は以下のとおり。

・xdm (XFree86) /etc/X11/xdm
・gdm (GNOME) /etc/X11/gdm
・kdm (KDE) /etc/X11/kdm

ちなみに、「XDMCPでリモートデスクトップ」で使ったのは、/etc/X11/gdm/gdm.conf なので、リモートデスクトップ機能はディスプレイマネージャーの機能を利用して実現されていることが分かる。

ウィンドウマネージャー
XクライアントはXサーバに対して、「ここに線を引け」など命令を出すわけだが、XサーバはXクライアントとの通信をメインに動作している。そのため、アプリケーションにウィンドウを提供したり、ウィンドウを最大化、最小化といったウィンドウの管理を行っていない。では、どのプログラムが行っているのかというとウィンドウマネージャーと呼ばれるプログラムがウィンドウを管理しており、ウィンドウを管理していることから、ウィンドウマネージャーと呼ばれる。

最近、自分でインストールした Beryl はウィンドウマネージャーの一つで、このことからも分かるようにウィンドウマネーはユーザの好みで変更できる。(MAC風やWindows風など)


デスクトップマネージャー(デスクトップ環境)
ウィンドウマネージャー以外に、端末エミュレータや、ブラウザなど統合された環境を提供する。GNOMEとKEDが有名である。

2007年11月12日月曜日

X端末の設定方法 ~XサーバとXクライアント~

Xの基本を勉強しなおしたところ、昔からXサーバとXクライアントをごちゃごちゃに覚えていることに気づきました。解釈した結果、Xクライアントは、gnome-terminalや、wiresharkなどアプリケーションを指し、XサーバはXクライアントが要求したキーボード操作やマウス操作などの入力のほか、どこに何を表示するかなど出力を制御しているとのこと。

X端末を使用することで、以下のような事が可能になります。

例:1
自分が使用しているアプリケーションを、相手の画面へ出力させる
(画像を渡したいときなどに、相手の許可なく表示することが可能)

この場合、表示させるアプリケーションがXクライアント(自ホスト)出力先がXサーバ(リモートホスト)

例:2
ssh等でリモートホストへ接続し、wiresharkなどのアプリケーションを接続元のディスプレイで表示させる

この場合、リモート先で起動したwiresharkがXクライアント(リモートホスト)出力先がXサーバ(自ホスト)

※例:2の場合、通常エラーになりますが、理由はリモートホストのDisplay出力設定がリモートホストに向いているから。

【行うこと】

・サーバ側で、xhostで受け入れるクライアントを設定します。 (現在はxauthを使用するよう推奨されている)

・サーバ側で、tcp nolistenの設定を解除します。 (最近のは、Xのtcp接続が許可されていない)

・クライアント側で、環境変数の設定(DISPLAY)を行う

【手順】

1.サーバ側で、xhostコマンドを実施
# xhost 192.168.0.1 ←IPでの指定
# xhost client.localdomain ←ホスト名での指定
# xhost + ←全てのホストを許可 (※もちろん推奨ではありません)


2.サーバ側で、psコマンドを実行しXがnolisten tcpで起動していないか確認(nolistenオプションがついていない場合は、5.へ進みます)
# ps aux|grep X


3.nolistenオプションがついていた場合、以下のファイルの[security]セクションの#DisallowTcp=trueをDisallowTcp=falseに変更
/etc/X11/gdm/gdm.conf


4.サーバ側のXを再起動し、psコマンドでnolistenが消えていることを確認


5.クライアント側で、環境変数の設定を実施
# export DISPLAY=192.168.0.20:0.0 

Xサーバを指定 0.0はディスプレイ番号0でもOK

6.クライアントからwiresharkを起動すれば、Xサーバ側に表示される。

XDMCPでリモートデスクトップ

VNCのようにリモートデスクトップではなく、Windowsのターミナルデスクトップ接続をLinuxではどうやるのかイマイチ分からなかったので、調査したところ、XDMCP(X Display Manager Control Protocol)を使うことで実現が可能とのこと。 おぉ。覚えやすい。XDMがディスプレイマネージャだから、それをコントロールするプロトコル。

ユーザーは X Window システム互換クライアント(ネットワーク接続したワークステーションや X ターミナルなど)から、1つのデスクトップ環境にリモートログインできるようになります。

【参考】
リモートグラフィカルデスクトップと XDMCP


【行うこと】
・サーバ側でxdmcpをEnableに変更し、ポート177を空ける。
 ※天気予報は「いい天気にナレナレ」。117の時報と間違えやすいのでついでに覚えられるかも。

・クライアントからXコマンドで接続。

【手順】
1.Xで接続させたいLinuxにログイン

2.XDMCPを受け付けるよう設定ファイルを変更する。  (以下、gnomeを使用している場合)
/etc/X11/gdm/gdm.conf
 
[xdmcp]セクションで"Enable=true"
に変更し、同じセクションで "# Port=177" であれば、コメントアウトを外す。

3.Xの再起動 (177が開いているか確認)
 
# lsof -i :177


4.クライアントからXコマンドを使用して接続する。
# X :1 -query "Server IP or name"