メニューを開く

2018/04/30

Linux ~システムの起動/停止手順~

システムの起動/停止シーケンスを理解することで、Linuxの仕組みや設定に対する理解も深めることができ、システムの運用保守にも役立つといわれています。それでは、さっそくLinuxの起動シーケンスです。
Linuxの起動シーケンス
電源ON
    ⇩
BIOSがディスクのMBRという先頭ブロックのブートローダーをメモリ上に読み込みます。
    ⇩
ブートローダーがカーネル(vmlinuz)とイニシャルRAMディスク(initrd)をメモリに読み込みます。
    ⇩
カーネルが初期化シーケンスを実行し、メモリに読み込まれているinitrdをマウントします。
    ⇩
カーネルがinitrdを使ってrootファイルシステムをマウントします。
    ⇩
カーネルがinitプロセスを生成し、起動時のカーネルオプション指定に従ってinit以外のプロセス(/bin/bashなど)を生成します。
    ⇩
initは起動されるとRun Control Script(/etc/rc.sysinit、/etc/rc)を実行し、/etc/inittabのシステムの各ランレベルの起動サービスの指定に従ってデーモンを起動します。
次に、起動シーケンスに出てきたランレベルです。ランレベルとは、Linuxの動作モードのことで、0から6の7種類あって、そのレベルに従って起動/停止されるサービスが異なります。各ランレベルの意味は、こんな感じになっています。
ランレベル
レベル
 0  システム停止(シャットダウン)
 1  シングルユーザーモード(rootのみ)
 2  ネットワークなしのマルチユーザーモード
 3  通常のマルチユーザーモード
 4  未使用
 5  グラフィカルログインによるマルチユーザーモード
 6  システム再起動
 そして、起動/停止されるサービスのスクリプトは、/etc/rc.d/rcレベル.dに格納されています。また、頭文字がS(Start)は起動、K(Kill)は停止を表します。続く2桁の数値は実行の優先順位を表していて、数値の小さいものから順に実行されます。
サイト構築をする際には、自動起動するサービスを追加するために設定を行うのですが、設定方法が、これまでよく使われていた起動システムであるSysVinit系と新しい起動システムSystemdで違うので、また別の機会に記事にします。

2018/04/07

Linux ~サイト構築の基礎知識~

Linuxは、カーネルと呼ばれるオペレーティングシステムの最も基本的な5つの機能を持つVanillaカーネルと呼ばる基本ソフトウェアで、UNIXの互換OSです。OSといえば、有名なのはWindowsやMacOS、Google Chrome OSなどがありますが、LinuxもそんなOSの1つです。
自宅サーバーやVPSなどのサーバー環境構築に多く使われているそうなんです。これは、LinuxがGUNプロジェクトが提唱しているGeneral Public License(GPL)というライセンスで無償ということで、安価にサーバーを構築出来るということも関係しているらしいです。
MataKitena BlogのWordPressブログサイトもLinuxを使って構築したサイトなんですよ。ということで、WebサーバーやWordPressブログサイト構築をする際に、知っておいた方が良いと思う基礎知識をまとめておきます。


  1. ソフトウェアの依存関係
  2. セキュリティ設定
  3. ダイナミックDNS

1.ソフトウェアの依存関係
ディストリビューションによって異なりますが、複数のソフトウェアをパッケージという単位でダウンロードやインストール、アンインストール、アップデートできるように管理されていますが、Webサーバーやブログサイトを構築するためには、複数のソフトウェアを組み合わせたり、それぞれのソフトウェアのバージョンを調整する必要があります。例えば、RedHat系のディストリビューションでは、ソフトウェアはrpmパッケージという単位で管理されていて、yumというツールを用いればソフトウェアの依存関係を自動で解消してくれます。

2.セキュリティ設定
インターネット上にWebサーバーやブログサイトを公開すると、ローカル環境で使用していた時とは違い、たくさんの人がサーバーにアクセスできるようになります。大切なサーバーやサイトを守るためのセキュリティ対策は必ず実施するようにしましょう。
詳細は、MataKitenaのブログ(Webcrow)のこちらの記事を見て下さいね。


3.ダイナミックDNS
ダイナミックDNS(DDNS)は、自宅PCのIPアドレスをドメイン名に対応させるサービスです。一般的に自宅PCは、プロバイダにより割り振られたグローバルIPアドレスを使ってインターネットに接続しています。ただし、このグローバルIPアドレスは、一旦切断して再接続するとIPアドレスが変更される動的IPアドレスになっています。固定IPアドレスのサービスも存在しますが、通常は動的IPアドレスになっていますので、ドメイン名に対応しているIPアドレスが変わってしまうと、自宅PCにアクセスできなくなってしまいます。
DDNSでは、一定間隔でIPアドレスが変更されたことを検出して、変更されたIPアドレスとドメイン名を動的に紐付けることで、自宅PCのIPアドレスの変更に関係無く、ホスト名で自宅PCにアクセス出来るようになるんですよ。
詳細は、MataKitenaのブログ(Webclow)のこちらの記事を見て下さいね。