学類PC(WindowsとLinux)

					2012年05月25日
情報科学類 コンピュータリテラシ

                                       筑波大学 システム情報系 情報工学域
                                       新城 靖
                                       <yas@cs.tsukuba.ac.jp>

このページは、次の URL にあります。
http://www.coins.tsukuba.ac.jp/~yas/coins/literacy-2012/2012-05-25
あるいは、次のページから手繰っていくこともできます。
http://www.coins.tsukuba.ac.jp/~yas/
http://www.cs.tsukuba.ac.jp/~yas/

■連絡事項

■情報科学類PC

PCには、いろいろな意味がある。 3C206 実習室には、PC(固有名詞)が、60台ある。次のようなOSが使える。

◆デュアルブート

PCは、これらのOSを「デュアルブート」可能である。「デュアルブート」とは、 電源を入れた時にどのオペレーティング・システムを実行するか(ブートする か)を、2つの中から選択できることである。2つのOSを両方同時には使え ない。

◆シャットダウン

シャットダウンとは、安全にコンピュータの電源を切る(コンピュータを停止 させる)ことを意味する。いきなり電源コードを抜く等して切ると、不整合が 生じるので行ってはならない。必ず、正当な手順で切ること。 shutdown というコマンドもあるが、システム管理者しか使えないことが一般的 である。

■Windows

オペレーティング・システムの1つ。

Unix (MacOSX) との共通点。

細かい相違点

◆Control+Alt+Delete

Windows にログオンする時には、ユーザ名とパスワードが必要であるが、それ を打ち込むためのウィンドウを表示する時に次のように 「Control+Alt+Delete (Controlは、Ctrl と表記 されることがある)」を打つ。
  1. 左手で「Control」キーと「Alt」キーを押して、その まま押しっぱなしにする。
  2. 右手で「Delete」キーを押して離す。
  3. 左手を離す。
この操作をすることで、直前のユーザが偽物のウインドウを出していないこと を確認できる(SAS, Secure Attention Sequence)。

ログオン中は、「タスクマネージャ」を実行し、(ps コマンドように)プロセス の一覧を表示プロセスを殺すために使える。 手引き 5.3.4項 参照

◆「ドライブ」の考え方

Windows では、ファイルをディレクトリの木構造で扱うが、ディレクトリの木 構造の上に、もう一段階「ドライブ」の名前(アルファベット1文字+「:」)が つく。

「ドライブ」は、フロッピ・ディスクの時代には、複数の子供の「ディレクト リ」の代わりにつかっていた。当時は、「ディレクトリ」は、ドライブに1個 しか存在しなかった。以下の例では、dir コマンド (ls コマンド相当) にドラ イブ名を与えて実行している。

A> dir[←]
(Aドライブのファイル一覧の表示)
A> dir b:[←]
(Bドライブのファイル一覧の表示)
cd のように、作業中のドライブを切り替えることができる。 A> や B> は、プロンプトである。
A> b:[←]
B> a:[←]
A> []

Windows の前進の MS-DOS にUnix と同様の木構造に基づくディレクトリがつい たのは、1983年ごろ。

◆ホーム・ディレクトリをアクセスするためのドライブ

学類コンピューティング環境では、H: により、各自のホーム・ディレ クトリがアクセスできるようになっている。

◆プログラムの実行

プログラムを実行するには、次のような方法がある。

◆コマンドプロンプト

MacOSX で iTerm などの端末を実行した時と同じ状態になる。 手引き 5.3.7節 参照

「スタートメニュー」から「アクセサリ→コマンドプロンプト」を選択する。

次のコマンドは、覚える。

cd
change directory
dir
ディレクトリの表示。ls -l 相当。
dir /w
ディレクトリの表示。ls 相当。
type filename
テキストファイルの表示

◆移動プロファイル

Windows Vista (その前進の Windows XP, Windows 2000, Windows NT含む)は、 もともと「個人用(personal)」で使うために設計された Windows 95 以前のし がらみをかなり背負っている。

「個人用(personal)」コンピュータでは、複数人用の設定を保存する必要がな い。すべての設定は一人のためのものである。

この考え方は、次のような時代に破綻した。

Windows Vista などで、個人の設定は、「プロファイル」と呼ばれる。学類 コンピューティング環境では、プロファイルをファイル・サーバに保存してい る。

ログオン時
ファイル・サーバから 個々のクライアント・パソコンにプロファイルを「コピー」する。
使用時
個々のクライアント・パソコンにあるプロファイルを変更する。
ログオフ時
個々のクライアント・パソコンにある プロファイルをファイル・サーバへ「コピー」しもどす。

コピーしもどす方法を「移動プロファイル」という。「コピー」なので、一度 に複数の Windows 機にログオンすると問題が生じる。また、プロファイルが大 きくなると、ログオンとログオフに時間がかかるようになる。

◆コンテキスト・メニュー

一般的なメニューは、特定の場所を押すと、常に同じものが表示される。これ に対して、コンテキスト・メニューとは、ポイントしている対象に応じて、実 行可能な操作の一覧をメニューとして表示したものである。

Windows では、マウスの右ボタンをコンテキスト・メニューの表示に使う(右ク リック)。通常の操作(クリック、ダブルクリック)は、左ボタンを使う。

表示した後、項目を選択するのは、右クリックでも左クリックでもよい。

MacOSX でも、複数ボタンのマウスでは、右ボタンでコンテキスト・メニューが 表示される。1ボタンのマウスでは、コントロール・キーを押しながらボタン を押す。

■学類PCでのLinux

Linux は、Unix系のオペレーティング・システムの一種であり、 MacOSX と利用方法の共通性が高い。 Linux は、もともとは、オペレーティング・システムの中心部分(カーネル) の名前である。さまざまな業者がカーネルと独自のプログラムとセットにして 配布している(distribution)。Red Hat は、その配布業者の1つである。 CentOS は、Red Hat社が配布しているLinux に互換性があるフリーのものであ る。

OS

学類PC では、CentOS が利用可能になっている。

学類PC の Linux では、「GNOME端末」を開くと、MacOSX の「iTerm」と 似た状態になる。

学類PC の Linux は、学類の iTerm とは基本となる文字コードが違う。

GNOME(GNU Network Object Model Environment) は、見栄えのよいグラフィカ ル・ユーザ・インタフェースを持つ、一揃えのプログラム群を開発するプロジェ クトの1つ。「端末」以外にも、いくつもの「GNOME」が付くプログラムかある。

■Emacs

◆insert-file

Emacs にはファイルを挿入する機能がある。

■実習

実習時間中には、以下の課題をできるだけ多く行いなさい。全部を行う必要は ない。

本日の実習では、Windows で行うもの、Linux で行うもの、 MacOSX (iMac) で 行うものが混在している。どの OS を使うのかを注意しなさい。Unix と記述さ れているものは、MacOS、または、Linux を使いなさい。

レポートの作成は、実習を行った後に MacOSX (iMac) で行ってもよい。

★練習問題(1101) 学類PC/Windows Vista: Windows機へのログオンとログオフ

ログオンとログオフを行いなさい。 手引き 5.3.1項 参照

★練習問題(1102) 学類PC/Windows Vista: スタートメニュー

手引き 5.3.2項 参照。 スタートメニューを使い、 次のようなプログラムを実行しなさい。

★練習問題(1103) 学類PC/Windows Vista: 「エクスプローラ」を開く

「エクスプローラ」は、MacOSX の Finder と同様に、ファイルやディレクトリ をブラウザするためのプログラムである。これを、次のような方法で明示的に 実行しなさい。

★練習問題(1104) 学類PC/Windows Vista: 「コンピュータ」を開く

次の何れかの方法で、「コンピュータ」を開きなさい。

★練習問題(1105) 学類PC/Windows Vista: H:ドライブ

「コンピュータ」を開いたら、その中にある H: ドライブに、どのようなファ イルとディレクトリがあるか調べなさい。

★練習問題(1106) 学類PC/Windows Vista: タスクマネージャ

手引き 5.3.4項 参照

Control+Alt+Delete キーを使って、タスクマネジャを実行しなさい。「アプリ ケーション」や「プロセス」のタブを調べなさい。

「プロセス」のタブでは、CPU 時間の順番やメモリ使用量の順番に並べ替えな さい。

強制終了しても問題がなさそうな「アプリケーション」や「プロセス」を、強 制終了してみなさい。

★練習問題(1107) 学類PC/Windows Vista: コマンドプロンプト

コマンドプロンプトを実行しなさい。 手引き 5.3.7節 参照

次のコマンドを使ってみなさい。(「\」は、「(「\」や「¥」と表示され る)」。)

コマンドは大文字で打っても小文字で打っても同じように動作することを確認 しなさい。more コマンドは、lv と同じようなページャであり、スペース・キー で 1 ページ進み、q で終了する。

★練習問題(1108) 学類PC/Windows Vista: コマンドプロンプト(2)

「コマンドプロンプト」では、Unix のシェルと同様に、入出力の切り替えが使 えることを確認しなさい。
dir > files.txt
type files.txt

★練習問題(1109) 学類PC/Windows Vista: コマンドプロンプト(3)

「コマンドプロンプト」では、 タブによるファイル名の補完が行われることを確かめなさい。また、ファイル 名を何も打っていない状態でタブを打つと、ディレクトリの内容が次々と切り 替わる。このことを確かめなさい。 (Unix の bash でもタブによる補完は可能。)

★練習問題(1110) 学類PC/Windows Vista: PuTTY による iMac への遠隔ログイン

PuTTY を用いて、SSH プロトコルで(暗号化された通信路を使って) iMac に遠隔ログインして利用しなさい。
  1. PuTTY を実行する。 「スタートメニュー」で、「すべてのプログラム→PuTTY→PuTTY」と選択する。
  2. PuTTYを実行すると、次のような「PuTTY設定」のウインドウが 現れる。左側の「カテゴリ」から「セッション」を選びなさい(実行直後には、 最初からそうなっている。)。
    PuTTY、設定、セッション (クリックで拡大)
  3. セッションでは、「ホスト名」に遠隔ログインししたいコンピュータの名 前を打ち込む。たとえば、「cosmos10.coins.tsukuba.ac.jp」と 打ち込む。
  4. 次に、左側の「カテゴリ」から「ウインドウ」の下の「変換」を選ぶ。 「文字コードの設定:」で、接続先の文字コードを選ぶ。iMac の場合は、 「EUC-JP」を選ぶ。
    PuTTY、設定、ウインドウ、変換 (クリックで拡大)
  5. 「セッション」に戻り、「開く」ボタンを押す。
  6. 最初にあるホストに接続した時には、次のような警告が出る。 この時、44:08:af:d4:56:7d:b9:20:25:d2:dd:0c:03:27:a4:d4 であることを確認し、「はい」を押す。
    PuTTY、セキュリティ警告 (クリックで拡大)
  7. login as: に対してログイン名を打つ。
  8. Password: に対してパスワードを打つ。
ログインに成功すると、ls, cd, mkdir, emacs 等のコマンドが利用できる。た だし、emacs は、iTerm の中で動作するものだけが利用できる。Dock から実行 するものは利用できない。

★練習問題(1111) 学類PC/Windows Vista: PuTTY によるその他のコンピュータへの遠隔ログイン

PuTTY により、iMac 以外のホストへ遠隔ログインしなさい。ただし、ホストの 公開鍵の fingerprint (指紋) と文字コード、次のようになっている。
acacia01-50, burnet00-50, cosmos01-50 (coins iMac)
fingerprint 44:08:af:d4:56:7d:b9:20:25:d2:dd:0c:03:27:a4:d4, 文字コード EUC-JP
www.coins.tsukuba.ac.jp
fingerprint 3d:78:df:9c:5e:55:88:5f:0c:b2:8e:71:4a:0c:47:13, 文字コード EUC-JP
viola01.coins.tsukuba.ac.jp
fingerprint 43:1a:7a:7f:f7:d6:3a:82:5c:10:98:b0:13:58:9e:c7, 文字コード UTF-8
遠隔ログインを行い、次のコマンドを実行しなさい。そして、遠隔ログインを 行っていない時(ローカルでの実行結果)と比較しなさい。

★練習問題(1112) 学類PC/Windows Vista: Tera Term による遠隔ログイン

PuTTY と同様に、Tera Term を用いて遠隔ログインをしなさい。 接続先は、練習問題(1111) を参考にしなさい。
  1. Tera Term を実行する。 「スタートメニュー」を表示し、 「すべてのプログラム→Tera Term→Tera Term」と選択する。
  2. 実行したら「新しい接続」というウインドウが表示される。 「ホスト」に遠隔ログインししたいコンピュータの名前を打ち込む。たとえば、 「cosmos10.coins.tsukuba.ac.jp」と打ち込む。「サービス」としては、 SSH、「TCPポート#」としては、22を選択する。最後に「OK」ボタンを押す。
    Tera Term、設定、セッション (クリックで拡大)
  3. 最初にあるホストに接続した時には、次のような警告が出る。ホストの公開鍵 の指紋(fingerprint)を確認する。 (練習問題(1111) 参照)。 確認できれば、「このホストをknown hosts リストに追加する」のチェックボッ クスにチェックを入れる。最後に、「接続」ボタンを押す。
    Tera Term、設定、セキュリティ警告 (クリックで拡大)
  4. 次に「SSH認証」のウインドウが表示される。 「ユーザ名」にユーザ名を打つ。coinsでは「チャレンジレスポンス認証を使う (キーボードインタラクティブ)」を選ぶ。他のホストでは、「プレインテキ ストを使う」をチェックして「パスフレーズ」にパスワードを打つ必要がある 場合もある。あるいは、公開鍵と秘密鍵の組みを用意して、「RSA/DSA鍵を使う」 を選ぶ方法も使える。
    Tera Term、SSH認証、チャレンジレスポンス (クリックで拡大)
  5. 次のウインドウでは、パスワードを打ち、「OK」ボタンを押す。
  6. ログインに成功した後には、「設定」メニューの「端末」で、次のような 項目を必要や好みに応じて調整する。 Tera Term、設定、端末 (クリックで拡大)

★練習問題(1113) Unix: nkfコマンド

nkf (network kanji finter) は、Unix (iMac, Linux)で動作する漢字コードを 変換するためのプログラムである(学類のWindows機では動作しない)。 The Unix Super Text 16.1節 参照手引き 2.7.2項 参照。 man nkf参照。

Unix 側(MacOSX, Linux)で nkf を用いて、テキスト・ファイルの漢字コードを 変換してみなさい。

nkf は与えられたテキスト・ファイル(または標準入力)の漢字コードを自動的 に判定し、漢字コードの変換を行い、標準出力へ出力する。次の例は、 file.txt の漢字コードを EUC-JP に変換して別のファイル file-euc.txt に保存している。

$ nkf -e file.txt > file-euc.txt [←]

よく使うオプション

-j
出力を JIS に (標準)
-e
出力を EUC-JP に
-s
出力を Shift_JIS に
-w
出力を UTF-8 に
--guess
文字コードの推定を行い、(変換後のデータではなく)推定結果を表示する。
次の例は、テキストファイルfile.txtの漢字コードをEUC-JP に変換し ようとしているが、この方法は うまくいかない( 重要なファイルで試してみて はいけない)。
$ nkf -e file.txt > file.txt [←]
その理由は、標準出力の切り替え> を使った瞬間にファイルの内 容が消されるからである。漢字コードを変換したい時には、次のように一度、 別の一時ファイル(temporary file)に保存する。
$ ls -l file.txt [←]
(モードの確認)
$ ls tmpfile [←]
ls: tmpfile: No such file or directory
$ nkf -e file.txt > tmpfile [←]
$ mv tmpfile file.txt [←]
$ chmod モード file.txt [←]
ファイルのモードは保存されないので、必要なら ls -l で調べて、後で chmod で戻しなさい。

★練習問題(1114) 学類PC/Windows Vista: Windows でのテキスト・ファイルの作成

Windows で、次のような方法でテキスト・ファイルを作成しなさい。

★練習問題(1115) 学類PC/Windows Vista+Unix: テキスト・ファイルの漢字コードの確認

Windows でテキスト・ファイルを作成すると、どのような文字コードが使われ るか確認しなさい。 ただし、これらのプログラムを用いても、正しく表示されないこともある。

★練習問題(1116) 学類PC/Windows Vista+Unix: テキスト・ファイルの漢字コードの調整

  1. Windows 側でH: ドライブの下に漢字を含むテキストファイルを作成しな さい。
  2. Windows で、PuTTY 、または、Tera Term を実行してUnix に遠隔ログイ ンをしなさい。遠隔ログインした端末の中で、1.のファイルを、画面に表示し なさい。
  3. 文字化けしたら、nkf コマンド、lv コマンドを使って変換したり、 PuTTYやTera Term の設定を変更しなさい。

★練習問題(1117) 学類PC/Windows Vista: シャットダウンと再起動

Windows が動いている状態で、シャットダウン、または、再起動を行いなさい。 手引き 5.3.1項 参照

★練習問題(1118) 学類PC: 再起動・電源オン直後の起動するOSの選択

学類PC で OS を選択するメニューを表示し、必要なOSを起動しなさい。

★練習問題(1119) 学類PC/Linux: 起動、ログイン、ログアウト、停止

Linux を起動しなさい。

★練習問題(1120) 学類PC/Linux: アプリケーションの実行

学類PC/Linux にログインすると、一番上に「アプリケーション」を含むメ ニュー・バーが現れる。それを利用して、次のようなアプリケーションを実行 しなさい。
文字端末
Firefox
Emacs
GNOMEヘルプブラウザ
一番上のメニューバーの中で、 「システム」 メニューの「ヘルプ」を選ぶ。

★練習問題(1121) 学類PC/Linux: GNOME端末、日本語EUC

学類PC/Linuxでは、標準の文字コードが UTF-8 になっている。 文字コードを EUC にしてみなさい。 「日本語 (EUC-JP)」等必要に文字コードがメニューに現れない時には、「端末 (T)」メニューから「文字コードの設定→追加と削除」で追加するとよい。 文字コードを変更したら、次のようにして効果を確かめなさい。
$ echo $LANG [←]
$ date [←]
$ locale [←]
$ LANG=ja_JP.eucJP [←]
$ locale [←]
$ date [←]
$ []

★練習問題(1122) 学類PC/Linux: sshコマンドによる遠隔ログイン

GNOME端末の中で、ssh コマンドを実行し、遠隔ログインしなさい。 接続先や実行するコマンドとしては、 練習問題(1111) を参考にしなさい。

★練習問題(1123) 学類PC/Windows Vista: 「ドキュメント」のディレクトリの変更

最初の状態では、「ドキュメント」は、 移動プロファイル に含まれている。これを、H:ドライブの下になるように変更しなさい。

これで、Windows で「ドキュメント」を参照すると、「H:\WinFiles\My Documents」へ書かれる。このディレクトリは、Unix では、 ~/WinFiles/Documentsに対応する。

なお、アプリケーションでファイルを保存する時にWindows が示す「ドキュメ ント」のディレクトリを使わずにH:ドライブ以下のディレクトリに保存 してもよい。

★練習問題(1124) 学類PC/Windows Vista: その他の移動プロファイル中のディレクトリの変更

練習問題(1123) と同様の操作を次のディレクトリについ て行いなさい。

★練習問題(1125) iMac/Windows Vista: マルチOS環境

3C205 にある iMac (cosmos01からcosmos50) で、 iMacコンピュータでのマルチOS環境 を利用してみなさい。そこで、MacOSX ではない OS で、このページにある課題 で実行できるもの行いなさい。

★練習問題(1126) Unix: Emacs M-x set-buffer-file-coding-system

Emacs を使って、ファイルの文字コードを変更することができる。 このことを確認しなさい。

★練習問題(1127) Unix: lv コマンドによる文字コード変換

lv コマンドは、ページャであるが、nkf の代わりに文字コード変換のプログラ ムとして利用することもできる。このことを確認しなさい。
$ lv -Oej file.txt > file-euc.txt [←]
$ lv -Oj file.txt > file-jis.txt [←]
$ lv -Os file.txt > file-shift_jis.txt [←]
$ lv -Ou8 file.txt > file-utf8.txt [←]

★練習問題(1128) Unix: smbclient

Unix で smbclient を実行しなさい。
$ smbclient //lilac-fsm.coins.tsukuba.ac.jp/ログイン名 [←]
この結果、パスワードが求められる。それには、coins のログイン名を打つ。 smbclient のプロンプト (smb:\>など) が表示されたら、 次のような smbclient のサブコマンドを実行してみなさい。 smbclient については、man smbclient、The Unix Super Text 89.2節 Samba 参照参照。

■課題11 学類PC(WindowsとLinux)

以下の問題の回答をテキスト・ファイルに記述し、レポート提出ページから提出しなさい。

(1) 学類PC/Windows Vista で「コマンドプロンプト」を実行し、その中で次のよう なコマンドを実行し、テキスト・ファイルを作成しなさい。

hostname  >  hostname-ipaddr.text
ipconfig  >> hostname-ipaddr.text
dir hostname-ipaddr.text
(ファイルの大きさの確認)
type hostname-ipaddr.text
(ファイルの内容の確認)
作成したファイルを、Unix 側(MacOSX iTerm、PuTTY、または、Tera Term)で次 のように打ち、文字化けしないで表示されることを確認しなさい。
date
ls  -l hostname-ipaddr.text
(ファイルの大きさの確認)
nkf -e hostname-ipaddr.text
(ファイルの内容の確認)
最後の Unix 側の画面の表示の様子を、シェルのプロンプトも含めて提出しな さい。nkf の代わりに lv コマンドをつかってもよい。端末の文字コードによっ ては、nkf コマンドに与えるオプションを変更しなさい。

(2) 学類PC/Linux で「GNOME端末」を実行しなさい。そこで次のようなコマ ンドを実行しなさい。

hostname     >  hostname-ipaddr2.text
ifconfig -a  >> hostname-ipaddr2.text
date         >> hostname-ipaddr2.text
ls -l hostname-ipaddr2.text
(ファイルの大きさの確認)
cat hostname-ipaddr2.text
(ファイルの内容の確認)
このテキスト・ファイルを、レポートに含めなさい。 Emacs insert-file を使って、ファイルを挿入すると良い。

(3) The Unix Super Text の次の部分を読みなさい。

次の項目について簡単に説明しなさい。HTMLと似ているものについては、HTML のタグ名を示してもよい。たとえば、「\section」の説明として、「HTMLの <H1>と似ている。」と回答してもよい。

(4) [加点] Unix 側で、漢字とASCII文字含む3-5行のテキスト・ファイルを作 成しなさい。そのファイルの漢字コードと行末のコードを調べなさい。そのファ イルの漢字コードを Shift-JIS に、行末コードを Windows のもの(CR LN, 16 進数で 0d 0a、^M ^J、\r\n)に変換しなさい。変換するには、たとえば、 Emacs を使う方法、nkf コマンドを使う方法、その他の方法がある。レポート には、どのような方法で変換したのかを記述しなさい。

変更後のファイルを、 Windows 側でメモ帳、または、ワードパットで開き、きちんと表示されること を確認しなさい。さらに、変換前と変換後のファイルについて、ls -l, nkf --guess, od -xc, hexdump -c コマンドの結果を示し、きちんと変換されてい ることを示しなさい。

(5) [加点] 練習問題(1125) にあるマルチOS環境 を利用してみなさい。そして、MacOSX ではない OS を実行し、課題(1)、また は、課題(2)と同じようなことを行い、その結果を同様にレポートに含めなさい。 ただし、ファイル名として同じものを使うと問題があるので、 「hostname-ipaddr3.text」や「hostname-ipaddr4.text」な ど、別のものに変えて行いなさい。

課題(1)、または、課題(2) に加えて、次のことを含めなさい。


Last updated: 2012/06/14 12:02:17
Yasushi Shinjo / <yas@cs.tsukuba.ac.jp>