|
|
LinuxOSの使いこなし術
|
LinuxOSを使いこなすクライアントOSとの違い絶対パスと相対パス"パスが通っている"とは?"/"と"."と".."の意味"."(ドット)ファイルについてワイルドカードと正規表現コマンドの強制終了コマンド操作の補完機能コマンド操作の履歴機能リダイレクトとパイプ属性とパーミッション〜その1属性とパーミッション〜その2アカウント情報ファイルの操作ランレベルについてシステムが起動しないときはハードディスクの増設アプリケーションの導入法 |
LinuxOSが起動しなくなる?LinuxOS は非常に安定で強固な OS ですが、不具合を起こすことがないというわけではありません。
LinuxOSで利用する
サーバー
アプリケーション
の大部分はLinuxと同じくオープンソース
WBEL や CentOS のサーバーアプリケーションは "/etc/rc.d/init.d/" 以下に収容されている起動 スクリプト によって起動/終了を制御しています。 実はこのスクリプトがサーバーアプリケーションの起動時に様々なチェックを行い、動作に不調をきたすような設定を検知すると起動そのものを行わないようにしています。 しかしその起動スクリプトにさえ想定できないような無茶な設定が行われると、最悪の場合 OS を道連れに「フリーズ」という事態に陥るかもしれません。
その他にも例えば
"root"
のパスワードが分からなくなって
ログイン
できなくなったとか、
"/etc/fstab"
の記述
WindowsOSに詳しい方であれば、システムの起動に必要な最低限のデーモンとデバイスドライバだけを起動させて「安全に」システムを起動させる セーフモード での起動方法をご存知と思いますが、LinuxOSでもその方法に該当する シングルユーザーモードによる強制起動 という手段がありまます。 WindowsOSの場合は更に、 インストール CD から起動してシステムを修復する 回復コンソール という仕組みが実装されていますが、LinuxOSの場合にも同様の レスキューモード という手段が準備されています。 こういった「最終手段」ともいうべきテクニックはできるだけ使わないに越したことはないのですが、まさかのときのために「そういう手段もある」ということを覚えておくと何かのときに役に立つかもしれません。 以下、 シングルユーザーモード と レスキューモード の概要について説明します。
強制的にシングルユーザーモードで起動する |
||||||||
|
|
シングルユーザーモードは必要最小限の デーモン 以外は起動しませんし、パスワード不要で自動的に "root" アカウントで ログイン することになります。 つまりシングルユーザーモードで起動しておけば、 ログ ファイルを解析したり ntsysv コマンド でデーモンの起動情報を変更するなりして問題の対処に当たることが出来るわけです。もちろん テキスト エディタで設定ファイルを修正することもできます。 また起動後に passwd コマンドでそのまま "root" アカウント のパスワードを再設定できますから、"root"のパスワードを忘れてしまったときなども簡単に対処することができます。
システムをシングルユーザーモードで起動するには
"/etc/inittab"
を書き換えて再起動するか
しかし既にシステムが起動できない状態にあるときにはこういった方法は使えませんので強制的にシングルユーザーモードで起動することになります。 シングルユーザーモードではネットワークが利用できませんから、リモートではなくサーバー機を直接操作することになります。 まず ホスト機 の電源を入れたら、画面上に WBEL や CentOS の最初の起動画面、
CentOS5の起動画面(ここでeキーを押す) |
||||||||
| CnetOSやWBELをクリーンインストールした直後は、このリストにはひとつしか選択肢はありませんが、 yum によるカーネルの アップデート などが行われると上段に新しいカーネルがリストされていきます。 |
が出たときに e キーを押します。すると以下のような カーネル バージョンの選択画面になります。
CentOS5のカーネルバージョン画面(ここでeキーを押す) このリストでハイライトしているカーネルバージョンが現在使用中のものですから、ここでもそのまま e キーを押します。 すると以下のような OS の起動選択画面になりますから、ここで "kernel〜" で始まる行をカーソルキーで選び、もう一度 e を押します。
CentOS5の起動選択画面(kernel〜を選んでeキーを押す) すると、以下のようなコマンド入力画面になります。
コマンド入力画面 ここで "[スペース]single" とタイプして Enter を押します。
" single"を入力 すると" single"が追加された起動コマンドラインが起動選択画面にリストされます。
" single"が追加された起動選択画面(kernel〜を選んでbキーを押す) ここでこれを選択して b キーを押します。するとシステムがシングルユーザーモードで起動します。
シングルユーザーモードでの起動画面 プロンプト の形式が通常のログイン時と異なりますが、これは bash の初期設定ファイルが読み込まれていないだけですので特に気にする必要はありません。 ここで実施したシングルユーザーモードでの強制起動は一時的なものですので、 reboot コマンドなどで再起動すると強制起動前のランレベルで起動するようになります。
|
||||||||
最終手段のレスキューモード例えば サーバー を構成する ハードディスク に障害が起こったようなケースでは、起動時に必要なデバイスが マウント できず、起動できなくなることがあります。 |
|||||||||
|
|
シングルユーザーモード はハードディスクに インストール されているシステムから起動しなければなりませんから、こういう場合には当然役に立ちません。 そこで WBEL や CentOS では、インストール CD から起動して、インストールCD内の起動システムと メモリ 空間だけを利用して起動させる レスキューモード が準備されています。 レスキューモードを利用しなければならないときというのはシステム上にかなり深刻な事態が起こったときに限られるはずで、何の前触れもなくシステムが不調になってレスキューモードのお世話になるようなケースでは、ある程度のデータの喪失は覚悟する必要はありますし、 ハードウェア の交換なども必要になるかもしれません。 実際のところ、レスキューモードによるシステムの修復は容易なことではありませんから、データのバックアップさえ持っていれば無理してレスキューモードでの修復を試みるよりも OS の再インストールを検討したほうが早道かもしれません。 しかしながらバックアップをとっていないデータなどがまだシステム上に取り残されているような場合はレスキューモードからの救出をチャレンジしてみる価値はあるでしょう。 レスキューモードは、稼働中のものと同じ ディストリビューション のインストールCDから ホスト機 を起動して呼び出します。
インストールCDによるホスト機の起動方法は、WBELやCentOSのインストールの場合と同じですから、各種OSのインストーラーの起動方法
インストールCDからホスト機が起動したら一番最初の画面ですぐに、 linux rescue Enter とタイプします。
レスキューモードでの起動方法(CentOS5) |
||||||||
|
ご利用の環境によっては日本語が利用できないことがあります。そのときは頑張って英語を解読しながら先に進んでください。
内容は同じなので難しくはないと思います(多分)。 |
通常はこのあと、操作言語の指定とキーボード種別の指定の ダイアログ が呼び出されますので、順に "Japanese" 、 "jp106" を選択すればOKです。 このあと、WBELやCentOSのインストーラから提供される デバイスドライバ で利用可能な NIC が検出されると、ネットワークの設定を行うか否かのダイアログが表示されます。
ネットワーク設定の開始画面 |
||||||||
| ネットワーク環境が必要ない場合には 「いいえ」 を選択すると設定をスキップできます。 |
ここで
「はい」
を選択するとここからネットワーク設定のダイアログに移りますので、お使いのネットワーク環境に合わせて各パラメータを設定していきます
ネットワークの設定が終わったら、既存のファイルシステムの読み込みを行うかどうかのダイアログが表示されます
ファイルシステム読み込みのダイアログ ここではひとまず 「続行」 を選択して先へ進んでみましょう。 もしも既存のファイルシステムに問題がない場合はここで自動的に読み込まれて以下のようなダイアログが表示されます。
ファイルシステム読み込み成功のダイアログ ここで 「OK」 ボタンを押すと既存のファイルシステムが "/mnt/sysimage/" 以下にマウントされてレスキューモードが起動します。 |
||||||||
|
|
このあと、ダイアログの説明のとおり chroot /mnt/sysimage Enter を実行すると、CDから起動したシステムではなく既存のシステムがルートディレクトリとなって後の操作を行うことができるようになります。
レスキューモードの画面 "chroot" による作業を終了したい場合は exit Enter とタイプします。 そしてレスキューモードを終了して再起動するには、chrootを抜けた後にもう一度 exit Enter とタイプします。 もしも既存システムのマウントがうまくいかないときは、前のダイアログで 「読み取りのみ」 あるいは 「スキップ」 を選択して先に進みます。 「スキップ」 を選択した場合、現在起動中のファイルシステム上に mkdir コマンド で適当なディレクトリを作成し、既存のデバイス名に対して個別に mount コマンドの実行を試みることになります。 このあたりの作業になってくると、もう初心者レベルでの説明は難しいので割愛します。 やる気と根性のある方はインターネットなどから情報を検索してチャレンジしてみてください。
|
|
|
| このサイトは既に更新を終了していますが、今のところ店じまいの予定はありません。 リンクフリー ですので、趣味や勉強のためでしたら、引用、転用、コピー、朗読、その他OKです。このサイトへのリンクについては こちら をご覧ください。 |
| ”Linux”は、Linus Torvalds 氏の各国における登録商標です。”Red Hat”及びRed Hatのロゴおよび Red Hat をベースとしたすべての商標とロゴは、各国におけるRed Hat, Inc. 社の商標または登録商標です。その他のプログラム名、システム名、製品名などは各メーカー、ベンダの各国における登録商標又は商標です。 |