Building Plamo Linux (for TOWNS) |
Plamo Linux を
FM TOWNS に対応させる方法 Slackware Linux, and Plamo Linux などから、 FM TOWNS 対応についての考察 |
Home | 1st. Release 2002/07/22 / Last update. 2007/05/05 (JST) |
Plamo Linux
を TOWNS 対応にする方法ついてまとめる
(途中の)ページです。
|
TOWNS 用の Linux の配布は、以前「Slackware (もっと前は、SLS) へのTOWNS用の追加パッケージ / インストーラを組み合わせた形」 で行われていました。 その頃の Slackware は、日本語環境を構築する追加パッケージ JE/PJE と 組み合わせて広く使われていました。 しかし、『英語圏のディストリビューション』と『日本語追加パッケージ』 を使うのではなく、『日本語対応ディストリビューション』を(作る)使う と言う流れになっていました。このため JE/PJE は、その役割を終えるよう になっていきました。 Plamo Linux は、このような流れの一つとして Slackware Linux を元に 日本語化させたものとして作られました。 また当時の Linux に起きた大きな変化にカーネルや標準ライブラリの変更が ありました。 これに伴い Slackware も大きく変化することになった。 そして新しい PJE が出なくなった事により Slackware をサポートする事より も Plamo Linux を TOWNS 対応にした方が、簡単と思われました。 上記の事から、更新が止まっていた Slackware ベースの TOWNS パッケージ /インストーラを(暫定的に)更新することを最初の目的とし、 次に Plamo Linux 対応を検討し始めました。 |
当時、TOWNS 用に対応されていた Slackware は、Slackware-3.1 までで、 LINUX JAPAN 誌の創刊2号のものが最新でした。そのため Slackware を ベースとしたものから、Plamo をベースとしてた現在のものまで、 以下のように作成し移行して来ました。
上記の表の様な順で、試してきて Plamo/TOWNS ができてきたわけです。 以下に Plamo/TOWNS の構成要素、TIPS をまとめます。
上記のような要素をまとめて Plamo/TOWNS を作っている訳ですが、 全てを把握できていないため問題点もあります。
|
PC/AT互換器用ディストリビューションを元に Linux/TOWNS を(多少、強引に)
動かす方法に付いて
〜Slackware-3.5 で試みた事より〜 |
ここでは、Linux/TOWNS 未対応のディストリビューションやパッケージの
バージョンが新しすぎて未対応のものを、強引(?)にTOWNS で動かす方法を解説
します。 これは、(私が試した中で) 最初に Slackware-3.5 ベースの Linux/TOWNS の動作環境を 作ったときにやった方法を(思い出しながら)書きます。
この方法は、IA-32 アーキテクチャ向けのディストリビューションであれば、
Plamo や Slackware 以外でも可能と思われます。
|
Slackware-3.1 ベースの TOWNS Linux を納めた CD-ROM では、
TOWNS 対応のために CD-ROM の TOWNS ディレクトリ配下に TOWNS 用の
インストーラとパッケージを収録 しています。 これは、(確かな記憶とは言えないが)当時の Slackware は、 PC/AT互換機のみを ターゲットとしていたことと Slackware 自体には、手を加えないと言う前提条件 があったことから、そういう構成になっています。 Plamo の方は、PC-98x1 に対応するために、パッケージ自体も共通で使うもの 独自に手が加えられたものの2種類で構成されています。
上記の表では、AT / TOWNS 用 Slackware, Plamo の CD-ROM
の概要についてまとめました。
インストーラ(1次インストーラ) インストールの最初の段階で CD-ROM(もしくは、フロッピーなど) から起動し、 各パッケージのインストールを行うソフトウェアです。 パッケージ Slackware 系では、tar+gzip の形式で圧縮されたファイルです。
|
Slackware や Plamo の1次インストーラは、フロッピィディスクや CD-ROM から
起動され、通常、RAM ディスクへ展開されます。前の章では、1次インストーラ
の構成要素をまとめました。その中の「1次インストーラ」の中にルートイメージが
ありここにインストーラのスクリプトなどが組み込まれています。 5.1 「1次インストーラ」のルートイメージの中身を見る
5.1.1 ルートイメージのデバイスに展開して中身を見る
ルートイメージは、RAM ディスク(やフロッピィ)に展開されて使用します。
つまり実際のインストーラの流れと同じに様に展開しマウントすれば、中身を
見る事も編集する事もできます。
5.1.2 ルートイメージをループデバイスを使用して中身を見るループデバイス (/dev/loop) を使用すると、実際にインストールのときに 使われるデバイスを使用するよりも簡単にマウントできます。
このループデバイスを使用するためには、カーネル作成時 5.1.3 「1次インストーラ」のカーネルについて「1次インストーラ」のカーネルは、initrd などのインストールに必要な機能を 組み込んだものになります。Plamo/TOWNS の場合は、Slackware-3.1 用の TOWNS インストーラ用のカーネルの設定を元に調整しています。
上記の様に、Plamo/TOWNS では、Slackware-3.1 用の TOWNSインストーラ用の カーネルや設定を同じように公開しています。 5.2 「1次インストーラ」の中身を見る
Plamo の 1次インストーラのルートイメージの内部をマウントする方法を説明します。
1次インストーラのルートイメージの内部をマウントする方法を説明します。 |
Slackware や Plamo のパッケージは、tar+gzip 形式で書庫化, 圧縮された ファイルです。依存関係の管理などの機能は持ちません。
そのため tar , gzip コマンドだけで作成・展開・内容表示する事もできます。
6.1 「パッケージ」の中身を見る以下に、GNU tar を使ってファイル一覧を表示させる例を示します。
tar と gzip を別々に使うと以下のようになります。 6.1.1 「パッケージ」を作る
パッケージを作るためには、まず、作りたいパッケージのソースコードを入手して、
それを正しくコンパイルできないと行けません。 残念ながら、evol-mixer は、パッケージ作りのサンプルとしては、適当でない部分が いくつかあります。ここでの一番の問題は、1 つは本来の場所以外へインストールする ときに適当なオプションが無いことです。
本来なら また、今回のインストールでは、パーミッションについてあまり注意を払っていませんが a1/devs.tgz の様に パーミッション、所有ユーザー、所有グループ などに注意を払う必要があるパッケージもあります。
実際のところ、今回のものは、GNU tar を使ったパッケージも makepkg
を使ったものも、そんなに変わりません。 6.1.2 主要パッケージの構成
これまで見てきたように、Plamo/Slackware のパッケージは、単なる
tar+gzip のファイルであり実際どのように展開されるかは、
1次インストールの対象となるパッケージが収まっている部分のトップ ディレクトリには、各パッケージをまとめたディレクトリ以外に以下の ファイルがあります。
ここで紹介した、「ファイルリスト一覧」や「チェックサム」を納めたファイル は、インストール自体には関係ないですが、パッケージの内容を把握には良い でしょう。
「チェックサム」は、各ファイル(この場合は、パッケージ)から
取られた指紋(の様な数字)です。
当然パッケージがアップデートされれば、この部分が変わります。
指紋と同じような性質を持つ事からダウンロードする際に
(ウィルスやトロイの木馬などの要因も考えて)ファイルが改ざんされていない
かを調べるときに用いられます。 以下に Plamo Linux の「ファイルリスト一覧」(filelist.gz) と「チェックサム」 (md5sum) ファイルの作り方の例を示します。(あんまりいい例ではないけど…。)
「ファイルリスト一覧」は、全てのパッケージに対して
「tar tvzf ….tar.gz」したものなのです。
上記の各パッケージ中のファイルをどこのディレクトリへ配置するか、
つまりインストール先を決めるには、一定の基準が必要になってきます。
*1: インストールスクリプトによってファイル
が作成されたり、移動されたり、削除される事もありますが…。
6.2 パッケージとシリーズの構成パッケージは、 CD-ROM の中で、a1, ap1, n1, x1 などのディレクトリ名の 配下にまとめられています。この a, ap, n, x などは、パッケージの分野毎に まとめたものでシリーズと呼ばれています。 シリーズの各ディレクトリには、以下のファイルが収録されています。
インストーラがインストールの際に、このファイルに納められた メッセージを表示します。 例えは、Slackware-3.1 の "A" の シリーズでは*3、 "a1","a2","a3","a4",…,"a8" となっています。 "a1","a2",…,"a7" までのディレクトリには、install.end ファイルは 置きません。シリーズの終端となる "a8" のみにinstall.end ファイル を置きます。 *3: Slackware のシリーズは、(全てのシリーズではないですが…) フロッピーディスクの単位で納められるように考慮されており、 そのため 1 つのシリーズが、複数のディレクトリへ分割されている 場合があります。 Plamo Linux の場合、1 つのシリーズは、1 つのディレクトリに まとめられています。 以下に、Plamo および Plamo/TOWNS のシリーズの一覧と TOWNS 対応にする ために修正したパッケージ数などをまとめています。
上記の表は、 Plamo-2.1 での加えた変更点です。 |
mozilla を使用して、このページを印刷する場合、
を使用すると文字や罫線が表示されると思います。
Postscript のファイルを残しておきたい場合
(変換後にファイルにしておくと印刷する前に gvで、 イメージを確認する事もできます) |
丸市 展之