ライブ版の総ファイルサイズは約10MB、超小型Linuxディストリビューション「Tiny Core Linux」

 近年のLinuxディストリビューション界では、FedoraやUbuntuといった「フル装備」のディストリビューションだけでなく、Puppy LinuxDamn Small Linux(DSL)など、「小型・軽量」をアピールするディストリビューションも増えている。そのなかでも「Tiny Core Linux」は、ライブ版のファイルサイズがわずか10MBという、まさに「超小型」なLinuxである。

 Tiny Core Linuxはサイズは小さいものの、X Window SystemによるGUIを備えた「実用的」なディストリビューションである(図1)。英語版での比較になるものの、同様に「小型・軽量」で知られているPuppy Linuxのサイズは約100MB、DSLでも50MBということで、Tiny Core Linuxの小ささは際立っている。Tiny Core Linuxの最新版は、2009年6月28日にリリースされたバージョン2.1である。

図1 Tiny Core Linuxのデスクトップ
図1 Tiny Core Linuxのデスクトップ

Tiny Core Linuxは起動も高速

 Tiny Core Linuxは、一般的なディストリビューションと同様にハードディスクにインストールすることも可能だが、CDやUSBメモリから起動するライブ版Linuxとしての使い方が主流だ。ファイルサイズが小さいこともあり、CDメディアを使用した場合でも短時間で起動できる。たとえば、筆者の環境ではPuppy Linux 4.2の起動時間が約80秒だったのに対して、Tiny Core Linuxは30秒弱で起動した。

 Tiny Core LinuxのX Window SystemにはXVesaをベースした「Tiny X」、ウィンドウマネージャはJWMが使用されている(図2)。また、画面下部にはMac OS XのDockに似たランチャーであるwbarが配置されている。

図2 起動直後のTiny Core Linuxデスクトップ
図2 起動直後のTiny Core Linuxデスクトップ

 なお、初期状態ではユーザー「tc」(パスワードなし)でログインが行われ、ホームディレクトリは/home/tcに設定されている。スーパーユーザーのパスワードは設定されていないため、管理作業はsudoコマンド経由で行う。また、デスクトップ上を右クリックすると表示されるメニューから「XShells」-「Root Access」-「Dark」などを選択するころで、スーパーユーザー権限でターミナルを起動できる(図3)。

図3 デスクトップを右クリックするとメニューが表示され、アプリケーションやターミナルを起動できる
図3 デスクトップを右クリックするとメニューが表示され、アプリケーションやターミナルを起動できる

独自のコントロールパネル「cpanel」

 wbarで左から2つめに表示されている「Panel」アイコンをクリックすると、GUI管理ツールである「cpanel」が表示される(図4)。ここから日付時刻やネットワークの設定、各種サーバーの起動/停止などが行える。

図4 Tiny Core Linuxの管理ツール「cpanel」
図4 Tiny Core Linuxの管理ツール「cpanel」

 たとえば、ネットワークはデフォルトではDHCPによって設定されているが、これを手動で設定するには、まず「DCHP Client」をOffにし、次に「Netcardconfig」を起動して設定を行えば良い(図5)。

図5 cpanelで「Netcardconfig」を選択すると、ネットワーク設定ツール「Netcard Conf」が起動する
図5 cpanelで「Netcardconfig」を選択すると、ネットワーク設定ツール「Netcard Conf」が起動する

デフォルトでは最小限のアプリケーションのみを搭載、必要なアプリケーションはオンラインでインストール

 メジャーなアプリケーション群が標準搭載されているPuppy Linuxと異なり、Tiny Core Linuxはデフォルトの状態でほとんどアプリケーションが搭載されていない。FirefoxなどのWebブラウザや電子メールソフトはもとより、エディタでさえ標準で用意されているのは一般的なvimではなくviだ。その潔さがTiny Core Linuxのサイズの小ささの秘密でもある。といっても、必要なパッケージはインターネット上のリポジトリからオンラインでインストールできるため、ネットワークに接続できる環境であれば不自由は感じないだろう。

 Tiny Core Linuxでは追加パッケージのことを「エクステンション」と呼ぶ。エクステンションのタイプは「TCE」(拡張子が「.tce」)と「TCZ」(拡張子が「.tcz」)に大別される。TCEはアプリケーションをそのまま実メモリ内に読み込んでしまう方式、後者は圧縮された読み込み専用ファイルシステムである「cramfs」あるいは「squashfs」を使用して、エクステンションをループバックデバイスとしてマウントして使用するものだ。

 TCEの方はメモリにアプリケーションを展開しているため、数が増えるにしたがって実メモリを圧迫していく。そのため、メモリの少ないマシンでサイズの大きなエクステンションを複数インストールすることはできない。それに対して、TCZではストレージ内にエクステンションが展開されるため、メモリ容量をあまり気にせずに利用できる。

Appbrowserによるエクステンションのインストール

 エクステンションのインストールは、wbarの右端のアイコンをクリックすると表示されるGUIツール「Appbrowser」を使用する。まず、「Connect」メニューから「TCE」もしくは「TCZ」を選択し、どちらのリポジトリを利用するかを設定する(図6)。

図6 Appbrowserでは、まずTCEとTCZのどちらを利用するかを選択する
図6 Appbrowserでは、まずTCEとTCZのどちらを利用するかを選択する

 するとパッケージ一覧が表示されるので、目的のパッケージを選択し「Install Selected」をクリックしてインストールを行う。もちろん、依存するパッケージがあればそれらも一緒にインストールされる(図7)。

図7 AppbrowserではFirefoxなどの定番ツールがインストール可能だ
図7 AppbrowserではFirefoxなどの定番ツールがインストール可能だ

ハードディスクにエクステンションを保存する

 「継続的なリポジトリ」(Persistent Personal Repository、PPR)機能を使用すると、ダウンロードしたエクステンションをハードディスクに保存することが可能だ。そのためには、ハードディスクのパーティション内に「tce」という名前のディレクトリを作成する。たとえば、/dev/hda1に作成した場合、起動時のブートオプションで次のように指定する。

tinycore tce=hda1

 以上で、TCE、TCZに関わらずインストールしたエクステンションはtceディレクトリ以下に保存されるようになる。

ユーザデータの保存

 ホームディレクトリ以下のユーザデータは、cpanelから呼び出せる「Backup/Restore」機能を利用して指定したデバイスにバックアップできる。ファイル形式はtgz形式で、バックアップファイルの名前は「mydata.tgz」になる。

 あるいは、継続的なリポジトリと同じように、継続的ホームディレクトリ(Persistent Home)機能を使用してハードディスク上にホームディレクトリを作成することもできる。たとえば/dev/hda1にホームディレクトリを保存したい場合、ブートオプションで次のように指定すればよい。

tinycore home=hda1

リマスタリングとハードディスクやUSBメモリへのインストール

 Tiny Core Linuxはデフォルトでは必要最小限のソフトウェアしか含まれていないが、パッケージの追加、システム設定のカスタマイズを行った、いわゆるリマスタリング版を作成することことも可能だ。手順についてはTiny Core LinuxのWikiページ内「Remastering TC」にて解説されているので、こちらを参照してほしい。

 Tiny Core Linuxをライブ版としてではなく、ハードディスクへインストールして利用することもできる。ただし、GUIインストーラは用意されていないため、端末で、ディスクのフォーマット、システムのインストール、GRUBの設定といった作業を順に行う必要がある。手順についてはTiny Core LinuxのWebサイト内の「Install Tiny Core Linux」ページで解説されている。

 なお、バージョン2.1ではライブUSBメモリ版を簡単に作成できるusbinstallコマンドが追加された。端末でsudo経由でusbinstallコマンドを実行し、画面の指示に従って、フォーマットやソースを指定するだけでUSBメモリへのインストールが行える。

 また、本家のTiny Core Linuxは英語環境のみだが、日本語化に挑戦しているユーザーもいる。2ちゃんねるのTiny Core LinuxスレッドではTiny Core Linux 2.1の日本語リマスタリング・キットなども投稿されている(図8)。

図8 日本語化されたTiny Core Linux
図8 日本語化されたTiny Core Linux