インターフェイスの考え方
X Window – 基本的な考え方
新しく Linux を使い始めたユーザであれば、まず X Window をお使いのことでしょう。 X Window (X11 または X と表記する場合もあります) は Linux PC に対してグラフィカルな環境 (GUI) を提供する仕組みで、さまざまなデスクトップ環境を動作させることができます (このような仕組みにより、 Mac や MS-Windows のようなモダンなコンピュータに似た外観になっています) 。 X Window を動作させない場合は、シンプルな文字のみの環境になり、シェルと呼ばれる仕組みを通じて Linux PC を操作することになります。また、 Linux の X Window では、ユーザにとって使いやすいグラフィカル環境を提供するため、 X Window 上でウインドウマネージャやデスクトップ環境と呼ばれる仕組みを動作させます。 (なお、 Mac や MS-Windows では GUI と ASCII シェル (CLI/CUI) との明確な区別はありませんし、ランレベルのような仕組みもありません。そのため、 Mac/MS-Windows はただ 1 つだけの GUI を利用することができます。 Linux の場合は、数多くある中から選択することができます)
openSUSE では、主に下記の 4 つのデスクトップ環境を提供しています:
上記以外にも、 openSUSE では様々なデスクトップ環境を提供しています。 openSUSE が実装しているグラフィカルユーザインターフェイス (GUI) について、詳しくは こちら をお読みください。 また、 X Window System (Wikipedia) や openSUSE Wiki 内の記事もお読みください。
X Window - 仕組み
X Window は非常にパワフルな仕組みで、 "クライアント" と "サーバ" と呼ばれる要素に分割することのできる優秀な設計を持つ仕組みです。 X Window を 1 台の PC で使用しているユーザであれば、 "クライアント" と "サーバ" の両方を同じコンピュータ内で動作させていることになります (つまり、クライアントもサーバも透過的に扱っていることになります) が、 X Window では "クライアント" と "サーバ" を別々のマシンで動作させることもできます。そのため、たとえば X11 と Secure Shell (ssh) プログラム (下記参照) を併用することで、 X Window のアプリケーションをリモートのマシンで動作させ、表示だけを "ローカルの" PC に持ってくる、といったことが実現できます。これは特に LAN 環境で接続されているリモートのマシンだけでなく、インターネットを介して接続しているような環境でも便利に使用することができます。
Linux シェル / コマンドラインインターフェイス
シェル は コマンドラインインターフェイス (CLI) を意味する言葉で、 MS-DOS (もしくは Windows ではコマンドプロンプト) によく似た仕組みですが、 Linux のマルチタスク処理をフルに活用できる仕組みになっています。シェルはその入り方にもよって、フルスクリーンであったりウインドウマネージャ内のウインドウであったりしますが、動作しているのは一般に bash (Bourne-again shell) と呼ばれる、 GNU プロジェクトが作成した Unix シェルになっています。 Bash は多くの Linux システムで規定のシェルとして指定されていますが、 Mac OS X やその他の Unix 系オペレーティングシステムでも動作させることができます。 openSUSE の場合は一般に、 Konsole (<ALT><F2> を押して "konsole" と入力して <Enter> を押す) か xterm (<ALT><F2> を押して "xterm" と入力して <Enter> を押す) から利用することができます。 アプリケーションはシェルからも起動することができますが、問題を調べたりする際など、さまざまな理由からシェルを多用します。
ユーザ (User) とアプリケーション (Application), シェル (Shell) やカーネル (Kernel), ハードウエア (Hardware) などとのやり取りについて、概要は下記の図をご覧ください: