このページでは、起動時にサーバーとサービスを起動する方法について説明し、Webminを使用して起動時に独自のコマンドを実行する方法について説明します。
Linuxブートプロセスの概要
PCの起動時に最初に発生するのは、ROMからのBIOSのロードです。 BIOS(Basic Input / Output System)は、メモリおよびその他のハードウェアチェックを実行し、マスターブートレコードまたはMBRと呼ばれるシステムのハードディスクの最初の部分から小さなコードをロードします。このコードはブートローダーと呼ばれます 、およびオペレーティングシステムのメニューをユーザーに表示し、そのうちの1つをロードする責任があります。 Linuxで利用できるLILOやGRUBなどのブートローダーはいくつかありますが、それらはすべて基本的に同じことを行います。
カーネルがロードされると、ルートファイルシステムがマウントされ、initプログラムが実行されます。このプログラムは、残りのブートプロセスの管理を担当します。 / etc / inittabを読み取ります ファイルを作成し、指定したコマンドを実行します。最も重要なコマンドは、起動スクリプトの実行を開始します。これらの各スクリプトは、ネットワークインターフェイスの初期化、Webサーバーの起動、他のファイルシステムのマウントなどの単一のタスクを担当します。後のスクリプトの一部は前のスクリプトに依存しているため、スクリプトの順序は固定されています。たとえば、ネットワークインターフェイスが有効になるまで、ネットワークファイルシステムをマウントすることはできません。
シャットダウン時に、一連のスクリプトも実行され、サーバーをシャットダウンしてファイルシステムをアンマウントします。これらのスクリプトの順序も固定されているため、ネットワークやその他の基本的なサービスの非アクティブ化は最後に行われます。ハードウェアによって要求およびサポートされている場合、シャットダウンプロセスの最後のステップは、カーネルによるシステムの電源オフになります。
Linuxシステムが起動すると、どのランレベルに応じて異なるスクリプトが実行されます。 ランレベルは、ブートローダーまたは / etc / inittabによって設定できます。 ファイル。一般的に使用されるランレベルは次のとおりです。
- 5-グラフィカルモード
- すべてのサーバーとサービスが開始され、Xはコンソールにグラフィカルログインプロンプトの表示を開始します。
- 3-マルチユーザーモード
- すべてのサーバーとサービスが開始されますが、コンソールで使用できるのは通常のテキストログインのみです。
- 2-NFSを使用しないマルチユーザーモード
- ほぼすべてのサーバーとサービスが開始されていますが、NFSファイルシステムはマウントされていません。
- 1-シングルユーザーモード
- 最も基本的なシステムの初期化のみが実行され、コンソールでルートシェルが開きます。このランレベルは、一部の起動スクリプトが失敗し、システムが起動できなくなった場合に役立ちます。
SysVInit構成モジュールに関する以下のセクションを参照してください。 起動ランレベルを変更する方法については、こちらをご覧ください。
ディレクトリ/etc/rc.d/init.d 通常、実際の起動シェルスクリプトを保存するために使用されます。各ランレベルで開始または停止されるスクリプトは、 /etc/rc.d/rc_X_.dからのシンボリックリンクによって決定されます。 ディレクトリ、ここで X ランレベル番号です。各シンボリックリンクにはS_YY_scriptnameのような名前があり、 YY ブートプロセスでスクリプトが開始される順序です。数値が小さいほど、スクリプトは早く開始されます。したがって、 /etc/rc.d/rc5.d/S10network /etc/rc.d/rc5.d/S80sendmailの前にランレベル5で実行されます。
すべてのLinuxディストリビューションが起動スクリプトにこれらのディレクトリを使用しているわけではありません。 /etc/init.dを使用するものもあります 実際のスクリプトファイルの場合、他のファイル(古いバージョンのSuSEなど)はすべてを / sbinに配置します ディレクトリ。幸い、 /etc/rc.d 新しいディストリビューションでは、標準のベースディレクトリになりつつあるようです。もちろん、Webminを使用している場合は、これらのディレクトリがどこにあるかを常に認識しているため、これらのディレクトリの場所について心配する必要はありません。
起動およびシャットダウンモジュール
このモジュールを使用すると、モジュールによってアクションと呼ばれる、起動時とシャットダウン時に実行されるスクリプトを作成および編集できます。 Webminのシステムカテゴリの下にあり、入力すると、メインページに、起動時に開始されたかどうか、使用可能なすべてのアクションのリスト、およびそれぞれの簡単な説明が表示されます。例については、この画像を参照してください。
-
起動とシャットダウンの概要 モジュール(上部と下部のみが表示されます)
各Linuxディストリビューションには独自の標準アクションスクリプトのセットがあるため、あるシステムではスクリプトhttpdがApache Webサーバーを起動しますが、別のシステムではapacheと呼ばれる場合があります。ただし、説明から各スクリプトの機能を理解できるはずです。
起動時に開始するアクションの構成
ApacheWebサーバーやSquidProxyServerなどのシステム上のサーバーが起動時に現在起動されていない場合は、このモジュールを使用して変更できます。ほとんどのLinuxディストリビューションでは、ディストリビューションに付属するすべてのサーバーに独自の起動アクションスクリプトがありますが、デフォルトですべてが有効になっているわけではありません。起動時に開始するアクションを構成するには、次の手順に従います。
- モジュールのメインページで、変更するアイテムのチェックマークをクリックします。
- 適切なボタンを使用して、選択したアクションを開始/停止/再開/有効化/無効化します。
アクションの詳細は、アクション名をクリックして編集できます:

アクションの開始と停止
アクションスクリプトは通常、起動時に開始され、シャットダウン時に停止されますが、Webminを使用していつでも開始または停止できます。多くのアクションスクリプトは、サーバーのステータスの表示やサーバーの構成の再読み込みなど、追加の機能を実行することもできます。アクションを開始または停止するには、次の手順を実行します。
- モジュールのメインページで、アクションの名前をクリックします。これにより、下の画像に示すアクション編集フォームが表示されます。
- ページの下部中央には、アクションスクリプトを実行して何らかの機能を実行するためのボタンの列があります。スクリプトによっては、使用できるボタンが異なる場合がありますが、最も一般的なものは次のとおりです。
- 今すぐ開始
- サーバーまたはサービスをすぐに開始します。 Linuxの一部のバージョンでは、アクションがすでに開始されており、サーバーがすでに実行されている場合、これは何もしません。
- 今すぐ停止
- サーバーまたはサービスを停止します。一部のLinuxバージョンでは、アクションがすでに開始されていない限り、これは何もしません。
- 今すぐ再起動
- サーバーを停止して再起動します。多くの場合、アクションがまだ開始されていない場合、これは何もしません。
- 利用可能な場合は今すぐリロード
- 、この関数は、アクションによって開始されたサーバーに、構成ファイルを再読み取りするように指示します。
- ステータスの表示
- サーバーが実行されているかどうか、実行されている場合はそのPIDを通知するメッセージを表示するだけです。
- 実行したい機能のボタンをクリックすると、アクションスクリプトからの出力を示すページが表示されます。これは、アクションが正常に実行されたかどうかを示す必要があります。
新しいアクションの追加
起動時に実行するコマンドがある場合は、新しいアクションスクリプトを作成するのが最良の方法です。手動でコンパイルおよびインストールされたApacheWebserverやQMailMailServerなどのサーバーにはアクションがないため、サーバーを起動するために必要なコマンドを実行するサーバーを作成する必要があります。
独自のアクションを作成するには、次の手順に従います。
- モジュールのメインページで、[新しい起動およびシャットダウンアクションの作成]をクリックします 既存のアクションのリストの上または下にリンクします。これにより、新しいアクションスクリプトのコードを入力するための図9-3に示すフォームが表示されます。
- 名前 フィールドに、 qmailのようなアクションの短い名前を入力します 。すべてのアクションには一意の名前を付ける必要があります。
- 説明 フィールドに、アクションを説明するテキストを数行入力します。たとえば、Qmailメールサーバーを起動するなどです。 。これは、モジュールのメインページの説明の下に表示されます 桁。
- 起動コマンド フィールドには、起動時にアクションを開始するときに実行するシェルコマンドを入力する必要があります。たとえば、Qmailを開始する場合は、 / var / qmail / rcと入力します。 。
- シャットダウンコマンド フィールドには、アクションの停止時に実行するコマンドを入力する必要があります。たとえば、Qmailを停止するには、 killall -9 qmail-sendと入力します。 。
- 起動時にアクションを実行する場合は、[起動時に開始しますか?]オプションをはいに設定します。 。
- 最後に、作成をクリックします ボタンをクリックして、新しいアクションを保存します。 Webminは、入力したコマンドと標準のラッパーを組み合わせて/etc/rc.d/init.dディレクトリにスクリプトを作成し、有効なアクションスクリプトを作成します。アクションは、最後に実行されるように、注文番号99の現在のランレベルで実行されるように設定されます。どのランレベルとどの順序でアクションを実行するかを正確に制御できるようにする場合は、モジュール構成の[*個々のランレベルの選択を許可する*]オプションを参照してください。 以下のセクション。
-
新しい起動アクションを作成する
アクションが作成されたら、次のプロセスに従って開始コマンドと停止コマンドを編集できます。
- モジュールのメインページで、アクションの名前をクリックします。これにより、図9-2に示すアクション編集フォームが表示されます。
- アクションスクリプト テキストボックスで、「start」のような行を探します)。起動時に実行されるコマンドは、その後、;;だけを含む行を上に移動します。必要に応じて編集しますが、周囲のコードはそのままにしておきます。同様に、アクションが停止したときに実行されるコマンドは、「stop」)と;;の間にあります。スクリプトの他の部分を変更することは、自分が何をしているのかを理解していない限り、悪い考えです。
- 保存をクリックします ボタンをクリックして変更を適用します。
自分で作成したものだけでなく、既存のアクションスクリプトはすべてWebminを使用して編集できます。 Webminによって作成されたスクリプトとはまったく異なる形式になる可能性があるため、編集には注意してください。
システムの再起動またはシャットダウン
Linuxシステムは、単に電源を切ったり、リセットボタンを押したりするのではなく、常に適切なコマンドを使用して再起動またはシャットダウンする必要があります。そうしないと、ローカルハードドライブ上のデータが失われる可能性があり、非ジャーナリングファイルシステムを使用している場合は、起動時にfsckを使用した長いファイルシステムチェックを確実に待つ必要があります。
再起動するには、次の手順を実行します。
- Bootup and Shutdownモジュールのメインページの下部にある、システムの再起動をクリックします。 ボタン。これにより、本当に再起動するかどうかを確認するページが表示されます。
- システムの再起動をクリックします 確認ページのボタン。シャットダウンプロセスはすぐに開始され、コンソールでログインしている場合、セッションはログアウトされます。すべてのシャットダウンスクリプトが実行された後、概要で説明されているように、システムは再び起動します。
シャットダウンのプロセスはほぼ同じです。シャットダウンシステムを使用するだけです。 代わりに、ページの下部にあるボタン。
起動およびシャットダウンモジュールの構成
ほとんどのモジュールと同様に、起動とシャットダウンはモジュール構成をクリックして構成できます。 メインページのリンク。これにより、標準の構成編集ページに移動します。このページでは、構成可能なオプションで次の設定を使用できます。 ヘッダー:
オペレーティングシステムの種類に基づいてWebminによって自動的に設定されるため、構成ページの他のオプションは変更しないでください。
その他のオペレーティングシステム
Linuxで使用される起動スクリプトのシステムは、他の多くのUnixオペレーティングシステムで使用されていますが、すべてではありません。それを使用するものでさえ、それらの実装に若干の違いがあり、ほとんどすべてが実際のスクリプトとリンクを格納するために異なるディレクトリを使用します。
- Sun Solaris 、 HP / UX 、 SCO UnixWare 、 SCO OpenServer 、
Compaq Tru64 / OSF1 およびSGIIrix
- これらのオペレーティングシステムはすべて、Linuxと非常によく似たアクションスクリプトを使用しますが、異なるディレクトリに保存されます。システムに付属しているものには説明がないため、モジュールのメインページにはデフォルトでアクション名のみが表示されます。
- FreeBSD 、 NetBSD およびOpenBSD
- BSDファミリのオペレーティングシステムは、アクションスクリプトをまったく使用せず、代わりに、起動時に実行される固定されたスクリプトのセットに依存します。これらのスクリプトの1つ(/etc/rc.local)は、システム管理者が起動時に実行する独自のコマンドを追加するためのものです。これらのオペレーティングシステムのいずれでも、モジュールのメインページには、システムの再起動の上にrc.localファイルを編集するためのフォームが表示されます。 および*シャットダウンシステム*ボタン。起動時に実行するコマンドを追加するには、テキストボックスにコマンドを入力して、[保存]をクリックします。 ボタン。
- IBM AIX
- AIXは、アクション・スクリプトがないという点でBSDオペレーティング・システムと非常によく似ています。代わりに、ファイル/ etc / rcを編集して、モジュールのメインページのフォームを使用して、起動時に実行するコマンドを追加できます。
- Apple MacOS X
- AppleのバージョンのUnixは、起動時に実行されるアクションを保存するために、サポートされている他のオペレーティングシステムとはまったく異なるファイルのセットを使用します。個別のアクションスクリプトはまだ存在しますが、それらを表示および編集するためのこのモジュールのユーザーインターフェイスはまったく異なります。
お使いのオペレーティングシステムが上記のリストにない場合、そのオペレーティングシステムはブートアップおよびシャットダウンモジュールでまったくサポートされていないため、モジュールアイコンはWebminに表示されません。
SysVInit構成モジュール
この章の概要で説明したように、起動時に実行するコマンドを決定するためにシステムによって読み取られる最初のファイルは/ etc/inittabです。これは、Linuxカーネルのロードが完了した後に実行される最初のプロセスであり、システムがシャットダウンされるまで実行され続けるinitプログラムによって読み取られます。 inittabファイルは、起動するランレベル、すべてのアクションスクリプトを開始するために実行するコマンド、テキストとグラフィカルログインプロンプトの表示を開始するプロセス、および差し迫った停電の場合に実行するコマンドを指定します。
Webminのシステムカテゴリの下にあるSysVInit構成モジュールを使用して、これらのコマンドのいずれかを編集できます。ただし、これらはシステムが正しく起動することを保証するために重要であるため、実際に何をしているかを理解していない限り、それらを編集することはお勧めできません。変更したいのは起動ランレベルだけです。これにより、システムが不要なグラフィカルログインプロンプトを不要な場合に表示しなくなります。
初期ランレベルを変更するには、次の手順に従います。
- SysVInitConfigurationモジュールに入ります。次の画像に示すように、メインページには、コマンドのリストと、コマンドが実行されるランレベルと状況が表示されます。
- IDのエントリをクリックします アクションが含まれる行の列 システム起動後 。これにより、inittabファイルエントリを編集するためのフォームが表示されます。
- ブートアップランレベルの場合 オプションで、現在選択されているレベルの選択を解除し、新しいレベルを選択します。 * 3 *(テキストログインモードの場合)または* 5 *(グラフィカルログインモードの場合)など、1つのレベルを選択するようにしてください。各ランレベルの意味の詳細については、この章の概要の説明を参照してください。
- 保存をクリックします ボタンをクリックして、変更をinittabファイルに書き込みます。ブラウザはモジュールのメインページに戻ります。
- 必要に応じて、BootupandShutdownモジュールを使用してシステムを再起動できます。
-
- SysVInit構成モジュール
このモジュールは、Solaris、HP / UX、UnixWare、OpenServer、AIX、およびIrixオペレーティングシステムでも使用できます。その基本的な構造と目的はすべてのシステムで同じですが、実際のデフォルトのコマンドは大幅に異なります。ただし、起動ランレベルを変更するための上記の手順は、すべてのオペレーティングシステムで機能します。
コンテンツ
モジュール構成
-
起動シャットダウン構成