情報実習 = 情報実験 2015-06-26

本年度トップへ
スケジュール表
- 情報実習 -
情報実験 第九回
2015 年 6 月 26 日

学生用資料
裏方用資料

## 本日テーマ

サーバ・クライアントシステム(X Window System)

## 事前準備内容

## 本日の予定

時間 内容 裏方覚書
12:50

スタッフ (教官, TA, 3N マシン管理者) 集合

T.A. の作業

プロジェクタ, マイクの準備
プロジェクタには inex ホームページ
名札をつける.

V.T.A. の作業

3N 機でブラウザを起動し inex ホームページを閲覧している状態にしておく.

V.T.A. の心得確認, 本日のスケジュール確認

担当テーブルの学生の良きお兄さん,お姉さんになってあげる.
と, 同時に自分もお勉強すること.
質問を積極的に行う. 第 2 の学生さんの雰囲気で.
担当テーブルの学生の振舞い評価を任せる.

13:00
学生集合, 各グループ毎にテーブルにつく.
13:05
レクチャー (荻原)
[レクチャー資料]

サーバ・クライアントシステム
X Window System

一緒に聴講

13:45
休憩
13:55
実習(荻原)
[サーバークライアントシステム]

X Window System
xhost, xauth, sshで X 転送
他のX端末のウインドウダンプ，イベントの取得

一緒に勉強
相談にのってあげる

15:40

本日の一冊紹介(荻原)

15:45

質問等の後, 学生解散

15:50

スタッフ(教官, TA, 3N マシン管理者) 打合せ

16:30
epnetfan

## 反省事項

授業終了後反省内容, 実際の時間配分等を書き込むこと

2015 年度

時間配分

- 13: - 13: レクチャー
13: - 13: 休憩
13: - 15: 実技/本日の一冊
16:00 - 反省会
- 講義
- 実技
- 2015 年度の X クライアント

2014 年度

時間配分

- 13:02 - 13:33 レクチャー
13:33 - 13:40 休憩
13:40 - 15:45 実技/本日の一冊
16:00 - 反省会
- 講義
- サーバとクライアントという言葉を聞いたことがある受講生は70 % 程度
Mail サーバはDNS サーバにIP アドレスを問い合わせている(受講生正解, 素晴らしい)
/~inex/index.html => ~inex/index.html
X Window System は全員知らなかった.しかし, 第一回で小高さんが喋った. 聞いたことある人で聞くのがよいかも
X11R7.7 のR はRelease の頭文字
X の名前の由来は前身のWindow system の名前が「W」で, その次のアルファベットがX だから
Cygwin はWindows をUNIX のように動かすためのソフトウェア(エミュレータ)
X Window System 自体には暗号化機能はないので, 傍受されないようにするためにはSSH などの暗号化通信を行う必要がある
X プロトコルはアプリケーション層でのプロトコルだと思われる
エミュレータという言葉は説明すべき
- 実技
- 来年度の課題:クライアントを起動した際のログを見るのがよいかも
サーバとクライアントの関係がよくわかる講義内容, 実技資料にすべき
x11 => X11
/usr/bin/x => /usr/bin/X
display => DISPLAY
joho14 => joho13 X 送れない問題: joho13 の X を再起動することで解決
startx を先にしていたため, 設定ファイルが読み込まれなかった
X クライアント に関する情報共有を事前にすべき
VTA がもっと積極的に受講生に悪戯をするのがよい
2014 年度のX クライアント
- xeyes
xpenguins
xfireworks
oneko
xteddy

2013 年度

時間配分

- 13:00 - 13:01 スケジュール確認
13:01 - 13:35 レクチャー
13:35 - 13:45 休憩
13:45 - 15:15 実技/本日の一冊
15:30 - 反省会
- 講義
- www の実例でブラウザのステータスバー「〜に接続しています...」「データを転送しています...」を載せてもいいかも?
「絵を描く計算機」ってどういうこと?ペイント出来るようになりました? → 文章を表示するだけだったものが描画も可能になった。
ディスプレイのハードウェア的進化(キャラクタディスプレイからビットマップ式へ)にソフトウェア的に対応
ローカルにないソフトウェアをリモートで実行して飛ばせる? → できる。ただしあくまでリモートの資源としてなのでローカルのファイルをいじったりは難しい。
startx 後に実行するアプリケーションはすべからく x クライアント
windows との違いは? → みかけは一緒っぽい。そもそも x が他に比べて飛び抜けていたのでウィンドウズも含め他もそれに習った。
シェルとウィンドウシステムが一体化している。ネットワーク透過性の思想も若干異なるように思う。
またos依存性が強いので他os間とのやりとりが難しそうな気がする。
windows 上で x ってどういうこと? → x は単にソフトウェアなので他のソフトウェアと同様に実行可能。また windows のウィンドウシステムは x プロトコルを理解できないので別に立ち上げる必要がある。
- 実技
- 勝手に gdm の立ち上がる人がまだ何人かいる。というか再起動したらどうしても立ち上がる。
startx 前の作業を忘れてる人もいた。ちゃんと事前に実技ページを見せられるように準備しておくこと。
ps ux → ps aux
xpenguins は gnome だと送れないみたい。job は動いているので別の場所で動いてる?
gnome はめんどいので来年は xfce か?
リモート作業かローカル作業かちゃんと確認してなくてうまくいかない人がいた
- 2012 年度

時間配分

- 13:00 - 13:03 スケジュール確認
13:03 - 13:45 レクチャー
13:45 - 13:55 休憩
13:55 - 15:35 実技
15:45 - 反省会
- レクチャー編
- WWW や MAIL が DNS のクライアントになるとは? :
WWW や MAIL がサービスのやり取りに DNS を利用している
サーバとクライアントは各サービスの提供側と要求側を区別する呼び方であり,
サービスによってはサーバだったものがクライアントの立場になることもある.
UNIX 系 OS で動作する多くのソフトウェアで採用とは? :
ローカルで「閉じた」ソフトウェアもある(bash など)
他の計算機に画面を表示できるとは? :
x サーバと x クライアントが同一ホストにいなければならないというわけではない
windows でも似たようなシステムを用いているのか? :
X11 とは異なるが似たようなものを用いている : windows でもリモートデスクトップ(RDP プロトコルを用いている)
というアプリケーションがある : X と違い音声も飛ばせる : ハイグレードの windows じゃないと使えない
x window system を windows に入れる(cygwinとか)意義は? :
x を用いた描画を windows 上でも見ることが出来る
linux においてネットワークを利用する上で x window system は全体のベースに
なっている
x window system 以前のブラウザはあったのか? :
GUI は原理的に無理だが CUI ブラウザは存在した
windows の cmd が使いにくくてしょうがない :
cygwin を使うと windows を CUI ベースでより便利に用いることができる.
特にレクチャー前半でスライドが伝えたい内容がうまく伝わっていなかったように
見えた
- 実技編
- gdm だと xserverrc を読まないためうまくいかない
x の再起動が必要な場合がある
killall, pidof コマンドについて記述する? VTA が知っていれば十分か?
カギの受け渡しのやり方を工夫してほしかった(scp などヒントだけ提示する)
- 2011 年度

時間配分

- 13:02 - 13:45 レクチャー
13:45 - 13:55 休憩
13:55 - 15:30 実技
15:35 - 反省会
- 講義編
- 文字変換もサーバークライアントシステムの一例

- 文字を打つ -> 文字変換を要求する(クライアント) -> 変換して返す(サーバ) -> 変換されたものを受け取る(クライアント)
- 「えっくすじゅういち」ではなく「えっくすいれぶん」. けっきょくどっちでもいい.
X の偉さは文字だけでなく「絵を扱えるようになったこと」
X のネットワーク透過性について
- 研究者の間で計算機の利用が広がったきっかけがこの技術
- Windows は X を使っているのか?
- そっくりだけど違うもの. あくまで X の技術を応用したものであろう. たぶん.
- サーバとクライアントの関係図がわかりにくかった
- 具体例と抽象例が混じっている印象. どっちかにまとめるとか. 来年担当者に任す.
- 実技編

joho05:ディスプレイ点かず. 原因は電源タップのオプションスイッチ(全体or半列通電). 原則 ON にしておくこと.
X クライアントのやりとりは問題なし.
前回休んだ人は sshserver を未インストールだった.

- その場で対処する. 原因探しも実習のうち. VTA も一緒に困れ.
- 2010 年度

時間配分

- 講義 13:00 -- 13:34
実習 13:45 -- 15:56
反省会 16:05 --
- 講義編
- [補足] サーバクライアントシステムにおいて, クライアントは好みのアプリケーションを使用することが出来る. 例えば, ウェブを見たければ IE, Firefox, Google Chrome などのウェブブラウザから好きなものを選択できる. これは通信規約が定められているからである.
[補足] X Window System が開発されたおかげで多言語対応になり日本でも UNIX が普及し, 計算機として広く利用されるようになった.
[補足] 昔は, GUI 環境なる便利なものはなかった. なぜなら, ハードウェア的な限界で GUI 環境を提供出来なかった.
[補足] ml term は gnome の付属品ではない. gnome の 端末ターミナルは gnome ターミナル.
[質問] window マネージャーと統合デスクトップ環境はどう違うのですか??

- window マネージャーはアプリケーションの窓を表示させるためのもの. 統合デスクトップ環境は, ウィンドウマネージャを含んだツールバー, アイコンなどデザイン全般提供するもの. そして, そのデザインに合ったアプリケーションソフトも入っている.
- [質問] 統合デスクトップ環境を入れてしまった後に, 別の window マネージャを使用することは出来るか??
- 出来ます. 統合デスクトップ環境でデフォルトで立ち上がる window マネージャは決まっているが, 別の window マネージャをインストールし, 統合デスクトップ環境の設定を変更すれば可能.

[補足] ネットワーク透過に関して, 注意しないと自分の情報が他人に漏れるだけでなく, 相手のマシンにも迷惑をかけるので注意してください.

実習編

- [補足] X を remote のマシンに飛ばすのは便利ではあるが, 悪用されてしまう事もあるので, 注意が必要.
[joho01] 複数のターミナルで複数の apt を走らせることは出来ない.
[joho13, 14] X の設定を startx する前に行わなかったことにより, x を飛ばせなかった.
[joho13, 14] Xauthority の所有者が root になっていたので, xauth 出来なかった. 所有者を一般ユーザに変えて X を再起動するとうまくいった.
- 2009 年度

時間配分

- 講義 13:00 -- 13:26
実習 13:46 -- 15:30
反省会 15:40 --
- レクチャー
- 意外と早く終わったので, 次回からは
レクチャー資料に例を盛り込んでも良いかもしれない.

- xeyes を飛ばした時のサーバ・クライアントの対応関係 etc
- 同じマシンにサーバ・クライアントが存在する身近な例
- 身近な例と言われるとあまりないかも.
強いて言えば,
X や, メール(直接メールサーバにメールを読みに行く場合)など.

IMAP, POP の仕事はメールの配送と言うよりも,
届いたメールを取っておいて見れる状態にしておくこと.
2009 年現在, xearth はパッケージとしては存在しない.
xplanet が xearth の後継パッケージである.
X Window System の偉いところは,
ネットワーク上にある資源を利用するモデルを初めて提供した点にある.

実技

2008 年度同様, [3.1] の $ xhost -192.168.16.1?? が効かなかった.

hosts.allow と hosts.deny を編集することにした.
xrsh というパッケージをインストールするとうまくいく?

- 少なくとも飛ばす側・飛ばされる側の両方で
パッケージをインストールするだけではうまくいかない.
- joho05, joho14 で imagemagick が入っていなかった.

足りないパッケージがあればその場で各自入れてもらう.
入れるべきパッケージが分からない場合は VTA に尋ねるべし.

killall コマンドについては資料には書かずに,
TA, VTA が口頭で困っている受講生に教えてあげることにする.

2008 年度

時間配分

- レポート講評 13:00 -- 13:10
講義 13:10 -- 13:50
実習 14:00 -- 16:10
- レポート講評
- レポートのフォーマットは統一する( 半角スペースを入れたり, 入れなかったりしない. )
複数枚にわたるレポートの場合, 題名( サブタイトル) に気をつけるとよい.
- レクチャー
- サーバクライアントシステム その4 : web ページを閲覧する例だと, 使っているサーバは www 一つではない.
X Window System その2 : network 透過は何を意識せずに利用できるか?
-> 遠方のコンピュータの資源
X Window System その3 : よく分からない. 具体例は?
-> 手元のディスプレイに文字を表示するのは手元の X サーバ, 遠方の X
クライアントは出力すべき文字を X サーバに送っている.
Exceed はお安くなっている.
Mac の X サーバは default ではなく任意でインストール(ほぼ標準)
X windows system は非常にえらい!! ことが伝わらない. -> Windows との比較, X はシェルから切り離せる. X は階層的になっている. GUI の最初である.
- 実技
- [3.3] と [3.4] の間に DISPLAY を localhost に戻すことを記述する.
joho04 から joho16 への ssh でエラーが出る. かぎを作り直したところ接続ができた. (先週にセキュリティーアップグレードを行ったため??)
[3.1] の $ xhost -192.168.16.1?? が効かなかった.
X を飛ばしたまま, X の制限をかけても効果がない?? (要検証)
etch になってから X に変更点があるかもしれない. (情報があればメールする)
- 2007 年度

時間配分

- 講義時間: 開始 14:45 , 終了 15:25
実習時間: 開始 15:41 , 終了 17:53
- レクチャー
- サーバとクライアントは同じマシンに入っていても良い．
各種サーバのお仕事をもう少し明確に記述したほうが良いだろう.

- WWW サーバの仕事 : WWW コンテンツを配信する
SMTP サーバの仕事 : メールを送信する
POP, IMAP サーバの仕事 : 到着したメールを(クライアントに)渡す
DNS サーバの仕事 : ホスト名と IP アドレスの相互変換
- WWW ブラウザという呼び方はあまり聞かないが，間違いではないらしい．
HTTP 1.0 の後ろの数字は HTTP プロトコルのバージョンを表す.
現時点での最新バージョンは HTTP1.1 であるらしい.
サーバ・クライアントシステムの特徴である「機能・情報の共有化」
について, 何が嬉しいのか?
- 皆が同じ情報を持つのは大変だが, 情報を1台のサーバに問い合わせる
という形にしておくとクライアントは楽になる.
サーバさえ強力であれば, へっぽこなローカルマシン(クライアント)
でも皆で情報共有できる.

The Open Group はいつ出来た?
Windows は OS と一体化していることもあり見た目を変えることが
できないが, X の場合には見た目を自由に変えることが出来る.
レクチャーで説明した X クライアントは実際のところあまり使われ
ていないという疑惑がある. 実際に研究室の人が使っているものに
変更した方が良いのかもしれない．
「注意しないと画面を覗き見られてしまう」の意味は「ネットワーク
越しに見られてしまう」ということである(明示した方が良い).
Cygwin をマシンに導入すること自体は簡単だが，Cygwin でうまく機能
しないクライアントがあるらしい.
Windows マシンで Xを使う方法の 1 つとして VMWare を導入して,
linux を使えるようにするという方法もある.

実技

- xserverrc の場所が /etc/X11/xinit/xserverrc に変わった.
- 2006 年度

時間配分

- 講義時間: 開始 13:05 , 終了 13:30
実習時間: 開始 13:40 , 終了 15:25
- レクチャー
- Web サーバの例の話の際に, クライアントからの "Get" の意味や,
"~/inex" を "Get" した際になぜ "~/inex/index.html" が返ってくるのか,
など, 一つ一つの意味をちゃんと解説する.
Web サーバの説明の際に, DNS との問い合わせを本当は行っているので,
その話を加え, 正しくきっちり説明しても良いかも.
- 実技
- 時間が余っているので, ssh -X でログインした後に
X クライアントを飛ばす実習をもう少し増やしても良いかも
- 2005 年度

時間配分

- 講義時間: 開始 13:05 , 終了 13:30
実習時間: 開始 13:40 , 終了 15:10
- レクチャー
- X を別の「ホスト」に飛ばす話は, 自分達が普段行うような
「他のホストから自分のマシンへ飛ばす」用に書く.
(これまでの講義では自分のマシンから他のマシンに飛ばすような
話になっていた.)
X サーバの具体的な動作を示すと以降のサーバとクライアントの
やりとりの説明が楽になるのでは
Cygwin は「X サーバ」じゃないので, 「Cygwin により
Windows でも X サーバも利用できる」みたいな一言が欲しい
最近は Cygwin の設定も楽になったよ
Mac でもほぼデフォルトで利用できますよ, と一言ください.
- 実技
- 時間が余っているので, ssh -X でログインした後に
X クライアントを飛ばす実習をもう少し増やしても良いかも
ssh に -X をつけないと飛ばせないこともやってみると良いかも
xauth に関する COOKIE の説明をちゃんと書いておく.
(資料の文字列をそのまま代入する学生がいた). [済]
xeyes を起動した後 kill する方法も書いておく. [済]
せっかく 192.168.16.1?? って書いてるのに 111 なところ
があるので直しておく. [済]
xauth の COOKIE は X を再起動しないと変わらないことも
書いておく. [済]
- 2004 年度

来年の講義資料に画面 dump した絵を入れよう.

- 講義時間: 開始 13:10 , 終了 13:40
内容はこれで ok でしょう.
- 実技編の資料は修正済み. 以下, 修正内容
- root の作業と一般ユーザの作業の区別がつきづらかった(root で startx をしちゃった問題).
xauth の設定の解説が不十分(設定した xauth を解除する方法を追加)
後半で用いた xwd などのオプションに関して説明書きがあった方が嬉しい.
- 前回の内容から.
- 前回の講義で設定した内容が元に戻っているかの確認(特に /etc/hosts.allow, /etc/hosts.deny)
- 2003 年度

講義編:

- スライド間違い: 「除き見る」=>「覗き見る」
字が多い. 強調部分を色づけする, 不要な文字を削除などの工夫が必要
「「X」におけるネットワーク透過の概念図」が分かり辛い. 絵がクライアントとサーバーが沢山あるので, host0, host1 だけの絵で良い. サーバ host0, クライアント host0 の場合(ディスプレイに青丸)と, サーバ host0, クライアント host1 の場合 (ディスプレイに赤丸) との 2 種類の線だけで良い. 実際に飛ばして実演してみるのもよいかも.
ちゃんとした参考文献が買いたい.
- 実技編
- [2.1] の直前に xhost+ をしなければならなかった. (今年度中に小西がテキストを修正すること -> 1/22 修正完了)
xhost を教える前に ssh -X を先に教える. xauth は教えなくて良い. テキストの構成を変える. あらすじは, 「X を飛ばす方法は 3 つ (ssh, xhost, xauth) があります. 簡単にやるなら ssh -X を使えば自動的に計らってくれます. もっと設定を詳細にするなら生に xhost でいじるのがよい. xauth は参考資料」
見て楽しい X クライアントを入れるとよい. (xoneko, xsnow, xearth, xroach), 真面目な X クライアントも入れておくとよいのだが (数値計算の結果を飛ばすとか).
- 共通の反省事項
- 実用的な例や身近な例を示すのが良い. xeyes, xclock はお遊び的なので, 学外から学内専用 web を見たい時に学内のサーバーからブラウザを飛ばす, とか.

## テキストなど

■
書籍

■ 本日の書籍 ■
松田晃一, 暦本純一 著 :
入門 X Window ,
アスキー出版局
ISBN 4-7561-0166-6.
UNIX magazine 2008 年 4 月号 ,
ASCII
ASIN B001524ZNU.

INEX 情報実験トップページへ

2015.06.19 荻原 弘尭 2015年度版作成