OS とは
コンピューターを動かすための基本ソフトとして、OS があります。通常、OS がなければコンピュータを動かす事はできません。
また、OS が異なれば、同じコンピュータを利用していても異なる動作を示します。
OS は CPU、メモリ、ハードディスク、キーボード、ディスプレイなどのハードウエアを管理し、その上で動くアプリケーションの処理などを管理します。
Windows や MacOS も OS の1つであり、Linux も同様です。また、Linux カーネルとは、リーナス・トーバルズによって開発された OS の核の部分指します。
Linux の特徴
Linux の大きな特徴は以下の4つになります。
- CUI(文字ベース)※ X と呼ばれる GUI もある
- マルチユーザシステム(複数ユーザの同時使用が可能)
- 強力なネットワーク機能
- UNIX 互換 OS ※ MINX を改良して作成している
- オープンソースソフトウエア ※ 自由に入手ができ、修正して再配布が可能
オープンソース化の運動は、マサチューセッツ工科大学から始まった運動です。 いまでは、MIT、GNU、GPL などのさまざまなライセンスがあります。 オープンソースのソフトウェアは「有用であるとは思うが無保証である」と言われるとおり動作保障などは行われておりません。
Linux の構成
カーネル(OS の中核)
カーネルの役割は、
- ハードウエアの管理
- データの入出力
- 実行するプログラムプロセス管理
などが挙げられます。他にもファイルシステムの管理など、重要な機能がありますが、このような OS としての基本機能を提供する部分を「カーネル」と呼びます。
正確には、Linux とはこのカーネル部分のみを指します。
ライブラリ(アプリケーションをOS上で動かすためのファイル郡)
Linux はカーネルだけではつかいものになりません。「ソフトなきマシンはただの箱」というようにその上で便利なアプリケーションが動くからこそ、実用に値します。 そこで 、アプリケーションをこの Linux 上で動かすために「ライブラリ(library)」と呼ばれるファイル郡が準備されています。 いわば、OS と アプリケーションを結びつける「のり」のような働きをするものです。 ライブラリもプログラムの一種であり、アプリケーションの開発する際にそのライブラリの機能を組み込むことによって OS と連携した動作を行うことができるのです。
シェル(ユーザとアプリケーションが対話するためのプログラム)
ライブラリはプログラムと OS との連携に使われますが、これだけではユーザが実際にプログラムを利用する環境が整ったとは言えません。 そこで、用いられるのがユーザから入力を受付たり、返答をしたりするためのプログラムです。これを「シェル(shell=貝殻)」と呼びます。 カーネルを核とすれば、シェルはそれを包み込む殻となります。Linux における基本的なシェルは「ターミナル」と呼ばれます。 ターミナルを起動し、さまざまな「コマンド」を入力することにより、アプリケーションを起動したりする事ができるのです。 これらの「コマンド」を駆使して、使い方を習得するのが Linux の学習の第一歩です。
ディストリビューション
Linux カーネルは OS の中核を実装しています。しかし、実際利用する環境では、カーネルだけではなく、様々な デバイスドライバやツールなどが必要となります。これらのツールを1つずつ揃えることも可能ですが、かなりの労力が必要になります。 そこで、Linux は通常「ディストリビューション」という形で提供されています。ディストリビューションは Linux カーネル + 必要(便利)なソフトウエア のパッケージからできています。
ディストリビューションには、大きく RedHat 系 と Debian 系 という2つに分けられます。 TDR では、CentOS(gaia luna系) と Vine (wani携帯) を採用しています。どちらも RedHat 系に分類されます。 主なディストリビューションは以下の通りです。Linux Server OS のほとんどが、RedHat または CentOS と言われています。
| Red Hat 系 | |
|---|---|
| Red Hat Enterprise Linux | 最大手が提供する Linux。保守サービスなども行い企業向けの色合いが強い。事実上の業界スタンダード |
| Fedora | Red Hat の試作と位置づけ。更新が早く最新技術を取り込んだものになります。完全フリーライセンス。 |
| CentOS | Red Hat とほぼ同じクローン。保守などがない。TDR では gaia, luna シリーズで採用。 |
| Vine | 日本産まれの Linux 。他の OS が 日本語にまともに対応していなかった為に作られた。日本語環境に優れている。TDR では wani サーバで採用。 |
| Turbo Linux | 早期で日本で立ち上がった米国発祥ブランドの Linux。漢字対応やデスクトップ化で人気が出た。 |
| Debian 系 | |
|---|---|
| Debian GNU | 中立性、柔軟性が高く完全なフリーソフトを目指しボランティアが開発を進めています。 |
| Ubuntu | 年に2回のバージョンアップと使いやすさ、インストールしやすさを目的に設計されています。廉価ノート PC で採用されています。 |
| KNOPPIX | Debian ベースにしたドイツ製の軽量 Linux。周辺機器の認識能力が高くインストール時に手間がすくない。 |
| その他 | |
|---|---|
| Slackware | 古くからあるディストリビューションで、非常にコンパクトな作り。他のディストリビューションと違いパッケージを管理するツールがない。 |
| opneSUSE | ドイツ発祥の Linux で欧州でのシェアが大きく、独自のパッケージ管理機能を搭載。Xen との相性が良いと言われています。 |
Linux の基本的な利用法
Linux には、「ユーザ」という概念が存在します。これは、Linux がマルチユーザシステムになっているため、利用者を区別するために行われています。
- 参考) 現在、SSH ログイン中のユーザを表示するコマンド
- w
ログイン・ログアウト
Linux のシステムを利用する際には、システムに登録されたユーザでログインしなければ、利用することができません。
-
login:naoki
Password:xxxx
利用をおえるときには、ログアウトという手続きが必要になります。
- 参考) ログアウト方法
- exit
- logout
- [Ctrl]+[d]
管理者ユーザ root
Linux システムには、root という名のユーザが存在します。これは、管理者のためのアカウントで、スーパーユーザと呼ばれます。
root は一般ユーザでは行えない特殊なコマンドが実行できます。例えば、コンピューターの停止やユーザの追加などを行えるのは root だけです。
root と 一般ユーザを区別する簡単な方法は、ターミナル上に表示される文字列で判断する事ができます。
- 一般ユーザ
- [naoki@gaia05 ~]$
- root
- [root@gaia05 ~]#
入力を待機しているプロンプトにユーザ名が表示されます。一般ユーザは「$」、root は 「#」が表示されます。
コマンドライン上での操作
CUI であるコマンドラインでの操作は、基本的に
コマンドを入力して、[Enter] キーを押す。
コマンドの結果が表示される。
という対話的なものになります。コンピュータとユーザの対話に使われるのが、コマンドというわけです。
コマンドは一般的に以下のような書式になります。
- コマンド オプション 引数[Enter]
オプションは、コマンドごとに異なります。コマンドの動作を指定する際に用います。
コンピュータの起動と停止
コンピュータの起動
マシンの電源をつけるだけで、自動的に Linux が起動します。様々なメッセージが流れたあと、ログイン画面が表示されます。
コンピュータの停止
システム自体を停止するためには、root で以下いずれかのコマンドを実行します。
- 例) コンピュータの停止
- # shutdown -h now
- # halt -p
- # init 0
コンピュータの再起動
システム再起動するためには、root で以下いずれかのコマンドを実行します。
- 例) コンピュータの再起動
- # shutdown -r now
- # reboot
- # init 6