2012年4月9日月曜日

UNIXのお勉強⑥

【13章 こんなときどうする】

■UNIXでのトラブル状況(主に端末エミュレータ操作時のトラブル)
(1)キー入力が出来ない
→〈Ctrl+S〉でスクロールをロックしていないか?(※〈Ctrl+Q〉でロック解除)
→何らかの原因で処理がストップしている.プロセスの一時停止や終了を試みる!
【Viの場合】
①ファイルセーブ(Esc押す.「:w!」と入力)
②通常の方法でViを終了(Esc押す.「Z(大文字)」を2回連続入力)
上記でもダメな場合…
①'強制終了(Esc押す.「:q!」と入力)
(2)キー反応がおかしい
→キー入力がおかしく,ログアウトすらままならない
①他の端末から同じホストにログイン.外部からログインシェルを終了させる.
※終了させるログインシェル:コマンドシェルの中で最も若いIDを持つプロセス
(プロセスを終了させるには〈kill〉コマンドを使用)
(3)ホストからの反応がない
→自作のプログラムを実行した場合などは,バグの可能性が大!!
(4)ログインできない
→致命的なトラブルである場合が多い!!
①他の端末からそのホストにログイン.〈kbd_mode -a〉と入力.
他には…
②パスワード関連
③ホームディレクトリがあるか確認
④アカウントのシェル設定が間違っている
(5)ログアウトできない
→軽症トラブル
①現在のコマンドシェルがログインした時のシェルではない(「Not login shell」と表示)
(→ログインシェル以外はログアウトではなくて単に終了する事.exitコマンド使用)
②ストップしているプロセスが残っている(「There are stopped jobs」と表示)
(→psコマンドやjobsコマンドで残存プロセス確認し,終了させる)
(6)電源が切れた,切れている
(7)File system fullというメッセージが出た
→「システムが使用しているディスク装置の空き容量がなくなり,ファイルの書き込み    ができなくなった」というメッセージ
①ディスクの状態を調べる(dfコマンドを使用)
②不要なファイルを消す
※末尾に「~」のついたファイル(エディタなどが自動的に作るバックアップ
ファイル,例:mbox~)は基本的に不要.特に,電子メールBOXのバックアップ     ファイルは大きい場合が多いのでこまめに消すこと.また,「.logout」ファイル     にバックアップファイルを消すようなコマンドを書き込むのも1つの手.
※圧縮プログラムを用いて自分のファイルのデータサイズを小さくするのも大切.     compressコマンドで圧縮出来る.
②'システム管理者へ通報
(8)rsh,rcpなどのPermission deniedというメッセージが出た
→「そのオペレーションに対してシステムが許可を出せない」という意味.
(9)異常な名前のファイルができた
①シェルのメタキャラクタを含むファイル
→基本的にはワイルドカード(11.5参照)を用いて消す.

■トラブルへの主な対応作業
①ホストマシンのシステム状態確認
→「ping hostname」で,
稼働している場合は「hostname is alive」
稼働していない場合は「no answer from hostname」と出力される
→稼働判定ではなく,ホストの現在の状況が知りたい場合
「rsh hostname uptime」と入力
※rsh(20.4節)…リモートシェルの略.リモートホストhost nameでコマンドを実行す           るためのコマンド.
※uptime…ホストの稼働時間,現在のユーザ人数,ロードアベレージ(システムの負荷を        表す数値.下巻42.3.3参照)を表示するコマンド.

■プロセスの確認と消去
①現在の自分の動かしているプロセス情報の入手方法
→psコマンド使用
(「プロセスID,プロセスステータス,コマンド名」の3つの情報を得る.
 *コマンド名について…プロセスIDが5768であるemacsを終了させる場合には
「kill 5768」と入力する.)


この章の内容はトラブル対策.「File system fullというメッセージが出た」についてだが,「メールで容量をいっぱいにしてはいけない,要らないものはすぐ消去すべき」という内容をもっと昔に読んでいれば…と思った.



お勉強TEXT

1 件のコメント:

  1. compressコマンドは今ではあまり使われていないと思います.他にもっと良い圧縮コマンドがいろいろあります.私はgzipが好きです.

    返信削除