XSERVER(1) — UNIX Programmer’s Manual
名称
Xserver − X ウィンドウシステムサーバ
形式
X [:displaynumber] [−option ...] [ttyname]
解説
X は、 X ウィンドウシステムサーバの一般名称です。 それは、特定のマシン上で最も頻繁に使用されるサーバを起動するための 適切なサーババイナリのリンクまたはコピーであることがよくあります。 MIT によるサンプルのサーバは、下記のプラットフォームをサポートします。
XqvssDigital monochrome vaxstationII or II
XqdssDigital color vaxstationII or II
XsunSun monochrome or color Sun 2, 3, or 4
XhpHP Topcat 9000s300
XapolloApollo monochrome (Domain/IX 9.6)
XibmIBM APA and megapel PC/RT
XmacIIApple monochrome Macintosh II
XplxParallax color and video graphics controller
サーバを起動する
サーバは通常、 X ディスプレイマネージャプログラムの xdm によって 起動されます。 このユーティリティは、システムブートファイルから動かされ、 サーバが常に動作し、ユーザ名とパスワードに対するプロンプトを出し、 ユーザセッションを開始できるように処理します。 これは、新規ユーザに対し、優れた矛盾のないインターフェース ( 便利な リソースセットのロード、ウィンドウマネージャの起動、 クロック、および端末エミュレータウィンドウの優れたセレクション) を提供したいと考えている現場に対して簡単に構成されます。
xdm は現在サーバの自動起動をポータブルな方法で処理するため、 xterm に対する −L オプションは古いと考えられています。 4.3bsd から派生した /etc/ttys ファイルからのログインウィンドウの 起動に対するサポートは、将来のリリースには含まれないかも知れません。
複数のウィンドウシステムを動かす装置もまだ xinit ユーティリティを 使用する必要があります。 ただし、 xinit は起動スクリプトを構築するためのツールと考えるべきで、 エンドユーザが使用するためのものではありません。 現場のシステム管理者は新規ユーザのために、 より優れたインターフェースを構築するよう強く求められます。
サンプルのサーバが起動されると、それがディスプレイを引継ぎます。 コンソールがディスプレイであるワークステーション上で実行している場合は、 サーバが動作している間はコンソールにログインすることはできません。
ネットワークコネクション
サンプルのサーバは、下記の信頼できるバイトストリームを使用して行われた 接続をサポートします。
TCP/IP
サーバは、 htons(6000+n) ポート上でリッスンします。 ここで、 n はディスプレイ番号です。
Unix Domain
サンプルのサーバはソケットのファイル名として /tmp/.X11−unix/Xn を使用します。 ここで、 n はディスプレイ番号です。
DECnet
サーバは、オブジェクト X$Xn への接続に応答します。 ここで、 n はディスプレイ番号です。
オプション
サンプルのサーバはすべて下記のコマンド行オプションを受け付けます。
−a number
ポインタ加速を設定します ( つまり、実際にポインタを動かしているユーザに レポートされる量の割合に応じてポインタの早さが決まります ) 。
−auth authorization-file
アクセスを証明するのに使用されるオーソリゼーションのコレクションを含む ファイルを指定します。
bc 前のリリースとバグを一致させるため、ある種のエラーチェックを禁止します ( たとえば、 R2 と R3 xterm でのバグのもとで動くため ) 。解弁。
−bs あらゆるスクリーン上でバッキングストアのサポートを禁止します。
−c キークリックをオフにします。
c volume キークリックの音量を設定します ( 許容範囲 : 0 〜 8) 。
−f volume
beep ( ベル ) 音量を設定します ( 許容範囲 : 0 〜 7) 。
−ld kilobytes
サーバのデータスペースの限界を指定されたキロバイトの数に設定します。 デフォルト値はゼロであり、データサイズを可能なかぎり大きくとります。 値が −1 のときはデータスペースの限界を変更しないままにします。 このオプションはすべてのオペレーティングシステムで使用できるものでは ありません。
−ls kilobytes
サーバのスタックスペースの限界を指定されたキロバイトの数に設定します。 デフォルト値はゼロであり、スタックサイズを可能なかぎり大きくとります。 値が −1 のときはスタックスペースの限界を変更しないままにします。 このオプションはすべてのオペレーティンクシステムで使用できるものではありません。
−logo スクリーンセーバ内の X ウィンドウシステムのロゴディスプレイをオンにします。 現在これをクライアントから変更する手段はありません。
nologo スクリーンセーバ内の X ウィンドウシステムのロゴディスプレイをオフにします。 現在これをクライアントから変更する手段はありません。
−p minutes
分単位でスクリーンセーバのパターンサイクルを設定します。
−r オートリピートをオフにします。
r オートリピートをオンにします。
−s minutes
分単位でスクリーンセーバのタイムアウト時刻を設定します。
−su すべてのスクリーン上でサポート下にあるセーブを不可能にします。
−t numbers
ポインタ加速のしきい値をピクセル単位で指定します ( つまり、 いくつのピクセルの後にポインタ加速が実行されるか ) 。
−to seconds
デフォルトの接続タイムアウトを秒単位で設定します。
v ビデオオンのスクリーンセーバの優先度を設定します。
−v ビデオオフのスクリーンセーバの優先度を設定します。
−co filename
RGB カラーデータベース名を設定します。
−help 用途メッセージを表示します。
−fp fontPath
フォントに対する探索パスを設定します。
−fc cursorFont
デフォルトのカーソルフォントを設定します。
−fn font
デフォルトのフォントを設定します。
−wm すべてのウィンドウのデフォルトのバッキングストアを強制的に WhenMapped にします。つまり、あらゆるウィンドウにバッキングストアを 適用させる手軽なうまい方法です。
ほとんどのサーバはまた、装置固有のコマンド行オプションをもっています。 詳細については、個々のサーバに対するマニュアルのそれぞれの項を参照して ください。
セキュリティ
サンプルのサーバは、オーソライズされたクライアントとサーバの私用の データを使用する極度に単純化されたオーソリゼーションプロトコルを インプリメントします。 オーソリゼーションデータは、-auth コマンド行オプションを使用して 命名されたプライベートファイル内のサーバに渡されます。 このファイルに何らかのオーソリゼーションが含まれる場合は、 自動的にローカルホストはサーバへのアクセスを許されず、 コネクションセットアップ情報内のファイルに含まれる オーソリゼーションレコードのうちのひとつを 送信するクライアントだけがアクセスを許されます。 サポートされるオーソリゼーション名は、 "MIT−MAGIC−COOKIE−1" です。 このファイルのバイナリフォーマットの解説については、 Xau マニュアルの該当項を参照してください。 このファイルの保守と遠隔地の現場でそれを使用するためにその内容を 配布するかどうかは、読者にとっての課題です。
サンプルのサーバはまた、特別マシン上のクライアントからの接続を受け付ける か否かを決定するためにホストベースのアクセス制御リストを使用します。 このリストは最初は、サーバが動作しているホストならびにファイル /etc/Xn.hosts 内にリストされているマシンで構成されます ( ここで、 n はサーバのディスプレイ番号です ) 。 ファイルの各行には、Internet のホスト名 ( 例 : expo.lcs.mit.edu) または 2 重コロンフォーマットの DECnet ホスト名 ( 例 : hydra::) の どちらかが含まれていなければなりません。 どの行にも、先行または後続スペースがあってはなりません。 以下に例を示します。
joesworkstation
corporate.company.com
star::
bigcpu::
ユーザはこのリストに対しホストを追加したり削除したりでき、 サーバと同じマシンから xhost コマンドを使用して アクセス制御を可能にしたり不可能にしたりすることができます。 以下に例を示します。
% xhost +janesworkstation
janesworkstation がアクセス制御リストに追加されている
% xhost −star::
public:: がアクセス制御リストから削除されている
% xhost +
あらゆるホストが許可されている ( アクセス制御は禁止 )
% xhost −
あらゆるホストが制限されている ( アクセス制御は可能 )
% xhost
アクセス制御が可能 ( 以下のホストだけが許される )
joesworkstation
janesworkstation
corporate.company.com
bigcpu::
いくつかのウィンドウシステムとは違って、 X はウィンドウオペレーション認可を行う考えはなく、 または、クライアントが行えることに対する制限も設けません。 プログラムがディスプレイに接続され得る場合は、 それはスクリーン全体で実行されます。 より優れたオーセンティケーション ( 認証 ) およびオーソリゼーション システム ( Kerberos のような ) をもっている現場では、ライブラリと サーバ内のフックを使用して追加の保護モデルを備えることもできるでしょう。
信号
サンプルのサーバは、下記の信号に対して特別な意味を付加します。
SIGHUP この信号で、サーバはあらゆる既存の接続をクローズし、あらゆるリソースを 解放し、すべてのデフォルトを復元します。 これは、メインユーザのメインアプリケーション ( 通常は xterm またはウィンドウマネージャ ) が、サーバを終了させ、次のユーザに対する 準備を行うために、終了するときは必ず、ディスプレイマネージャによって 送信されます。
SIGTERM
この信号は、サーバを問題なく終了させます。
フォント
フォントは通常ディレクトリ内の個々のファイルとしてストアされます。 フォントをオープンするときにサーバが見るディレクトリのリストは、 フォントパスによって制御されます。 ほとんどの現場では適切なフォントパスを使用してサーバを起動させる ( 上述の −fp オプションを使用して ) ことを選択するでしょうが、 xset プログラムを使用してそれをオーバライドすることができます。
サンプルのサーバに対するデフォルトのフォントパスは、次の 3 つの ディレクトリが含まれます。
/usr/lib/X11/fonts/misc
このディレクトリには、あらゆるシステムで利用できるさまざまなフォントが 含まれます。 これには、固定幅フォントの非常に小さいファミリー (6x10、6x12、6x13、8x13、8x13 ボールド、 および 9x15) 、およびカーソルフォントが含まれます。 これはまた、一般に使用されるフォント fixed と variable に 対する別名のフォント名ももっています。
/usr/lib/X11/fonts/75dpi
このディレクトリには、Adobe Systems 社と Digital Equipment 社および Bitstream 社が開発した、インチあたり 75 ドットのディスプレイ用 フォントが含まれます。 各ファミリー別に、選りすぐられたサイズ、スタイル、 および重みが提供されています。
/usr/lib/X11/fonts/100dpi
このディレクトリは、インチあたり 100 ドットのディスプレイ用の 75dpi デイレクトリ内のいくつかのフォントバージョンが含まれています。
フォントのデータベースは、フォントのコンパイルされたバージョン (.snf ファイル ) を含んだディレクトリ内の mkfontdir プログラムを実行することによって作成されます。 フォントがディレクトリに追加されるときは必ず、 mkfontdir を 再実行してサーバが新しいフォントを見つけることができるようにしなければ なりません。 mkfontdir が実行されないと、 サーバはディレクトリ内のどのフォントも見つけることはできません。
診断
数が多過ぎるので、ここではすべては記載できません。 init(8) から起動する場合は、エラーはファイル /usr/adm/X∗msgs 内に ログされます。
ファイル
/etc/X∗.hosts 初期のアクセス制御リスト
/usr/lib/X11/fonts/misc, /usr/lib/X11/fonts/75dpi, /usr/lib/X11/fonts/100dpi
フォントディレクトリ
/usr/lib/X11/rgb.txt カラーデータベース
/tmp/.X11-unix/X∗ Unix ドメインソケット
/usr/adm/X∗msgs エラーログファイル
関連事項
X(1), xdm(1), mkfontdir(1), xinit(1), xterm(1), uwm(1), xhost(1), xset(1), xsetroot(1), ttys(5), init(8), Xqdss(1), Xqvss(1), Xsun(1), Xapollo(1), XmacII(1) X Window System Protocol, Definition of the Porting Layer for the X v11 Sample Server, Strategies for Porting the X v11 Sample Server, Godzilla’s Guide to Porting the X V11 Sample Server
バグ
オプションのシンタックスは、それ自体と xset(1) とは一致しません。
加速オプションは、プロトコルのような分子と分母をとります。
X がそのクライアントより前に終了した場合は、あらゆる既存の接続が それぞれの TCP TIME_WAIT タイマーを終了しない限り新しいクライアントは 接続を行うことができません。
カラーデータベースは、大多数の色を欠きます。 ただし、個々のディスプレイに合わせることのできる RGB 値を生成できる もっと良いものがあるとは考えられません。
/etc/ttys から最初のウィンドウを開始するための xterm −L 方式は、非常に不完全なので、削除すべきです。 その代わりに xdm を使用するべきです。
版権
Copyright 1984, 1985, 1986, 1987, 1988, Massachusetts Institute of Technology.
権利と許可の声明文に関しては、 X(1) を参照のこと。
著者
サンプルのサーバは、多くの人の援助を受けて最初に Susan Angebranndt, Raymond Drewry, Philip Karlton, および Todd Newman によって書かれました。 詳細なリストについては、サンプルの配布に関する ファイル doc/contributors も参照のこと。
NEWS-OSRelease 3.3