| 更新履歴 | |
| 2002.04.04 | リンク切れ修正など、tomsrtbt知らないうちにバージョンが上がった(1.7.366) |
|
「1FD Linux ディストリビューション」というものが多々あって、私も愛用しているものがいくつかあります。ルーターとしては雑誌に記事も書いた[mosquito]、リカバリ他ツール系としては[tomsrtbt]がなんといってもヨイ!素晴らしい。ほぼ理想に近いのです。知らないヒト、これはスゴイよ!マジで。
ルーター用途モノについては実は[floppyfw]というのを永いこと愛用していたのですが、最大の弱点は PCMCIA 対応でなかったこと(再構築で可能ではある。現在ベータである2.4系カーネル版がstableになったら再び乗り換え予定)。実は私のホレ込んでいる上の2つは PCMCIA 対応!という所が嬉しいのですね。鯖のほとんど(全てじゃん)がノートPCである私の環境ではまさに「救世主」なのでした。これで、自分であーでもないこーでもないとソースハックしてカスタマイズする作業から解放されます。さて、mosquito については「 Linux World 」に書いた記事以外の(ボツ部分(^^;)部分や補足など、ホトボリがさめたら書くのでちょっと待っててね。今回は tomsrtbt について書くですよー(結局これも記事に書いてしまったが...)。 ■ tomsrtbt の嬉しさ ■
いろんな使いみちはシリーズの最後に書くとして、まずはフロッピーを作りましょ。 ■ tomsrtbt の入手とインストール ■ tomsrtbt とは Thomas Arthur Oehser さんが開発している 1FD Linux ディストリビューション。 tomsrtbtのページからダウンロード元を辿れます。適当に選んでリストのページへ飛ぶと、樽玉があります。Windows でフロッピーを作成する人は dos とかついたヤツを選べばよいのでしょう(たぶんね)。今見た限りではバージョンは 1.7.361 でした。バージョンは読み替えてください。適当な所に持ってきて(実はカスタマイズのたびによく使うので、専用の作業ディレクトリを作った方がよい)、 $ tar zxvf tomsrtbt-1.7.361.tar.gz $ cd tomsrtbt-1.7.361 では展開されたファイルを見てみましょう。 まず重要なのはマニュアルですが、tomsrtbt.FAQ がそうです。 なんだかネット検索すると、tomsrtbt について触れてるページはやたら多いのですが、 触れてるだけのばっかりなので、しょうがないから細かくやりましょう。 訳もつけます、ただし、しまケロ流ね。は? Dos のは訳しませんよ。ごめんね。 -------------------------------------------------- 原文ここから from tomsrtbt.FAQ ----- 4) GNU/Linux installation a) extract the .tar.gz archive b) Be root c) Be in the tomsrtbt-■ 最低限の環境設定 ■ tomsrtbt の強さはなんといってもノートPC で使えること。ぜひ実際にノートで立ち上げてみましょう。 ま、ここではとりあえず環境設定について。 当然、tomsrtbt はメモリ上にシステムが展開されます。こういったタイプの 1FD OS を使用するとき最も重要なことの一つが「環境の設定変更をどう保存するか」です。コレを知らないと、デフォルトのまま使いつづけるとか、起動のたんびに設定することになるばかりか、最初の起動後、通常のディストリビューションの感覚で何も知らずに変更していって、そのままシャットダウンしてパー、だとか、保存方法がわからなくてパー、とかいう状況に陥って人生がイヤになります。 コレも一部マニュアルの訳でいってみましょう。 -------------------------------------------------- 原文ここから from tomsrtbt.FAQ ----- 7) Customizing If you have problems, try doing it under tomsrtbt instead of on your own system. I test and support it under itself! To customize startup, edit settings.s and rc.custom.gz on the floppy. Of course you have to "gzip -d" rc.custom.gz to edit it. Use /dev/fd0u1722 to mount it, /dev/fd0 or /dev/fd0H1440 will not work. Typical uses: insmod, ifconfig, route, resolv.conf, hosts, mount, etc. to be continued(shimakero) ----- 原文ここまで -------------------------------------------------- 訳ここから ----- 7) Customizing 今あんたが使ってるシステムになんか不満や問題があったら tomsrtbt を使ってみてくんな。tomsrtbt で解決してやることが できっかもしれねえな。 To customize startup, edit settings.s and rc.custom.gz on the floppy. カスタマイズ作業はフロッピー上の settings.s rc.custom.gz を編集することから始まるかんな。 わかってると思うけどさ、.gz ファイルはそのまま編集は出来ねえよ。 だから rc.custom.gz を編集するには gzip -d で伸張してからだ。 で、フロッピーをマウントするのは /dev/fd0 とか /dev/fd0H1440 じゃなくって、/dev/fd0u1722 だぞ。 〜 以下省略 ----- 訳ここまで --------------------------------------------------まあ、実際はコレくらい知っておけばとりあえず使えるようになる。 ではちょっと例を挙げてみよう。 ※IPアドレスを静的にする。 使えるPCカードについてはドライバのリストなどを見て各自用意してください。けっこういろいろ使えそうなので驚く。また、ドライバは[ここ]からダウンロードして追加できる 初期状態ではネットワークアダプタには DHCP でIPアドレスが振られる。裏を返せば DHCP鯖が存在しないと降られるアドレスがないため eth デバイスが存在しない状態となる(認識はされて動作準備は出来ている)。最初にマニュアルを読んでないと驚く。そしてノートPCの場合で、しかも他のディストリビューションで多少の心得がある場合は、きっと、/etc/pcmcia/network.opt あたりを見に行くだろう。するとさらに驚く。 /etc/pcmcia/network.opt は実質的に空っぽなのね...。 変数設定と制御のプレースホルダがあるだけで、実質なにもしないのである。もちろん、これに何を書いても無駄だ。 正解はマニュアルにある通り、settings.s rc.custom.gz の2つのファイルを編集することである。 まずはとりあえず、settings.s の中身を見よう(コメント行と紛らわしいのでプロンプトとして kero01.pond をつける)。 kero01.pond# mount /dev/fd0u1722 /mnt kero01.pond# cd /mnt kero01.pond# less settings.s 実行結果 #DOMAIN= #DNS_1= #IPADDR= #NETWORK= #NETMASK= IF_PORT=10baseT PASSWD=ea416ed0759d46a8de58f63a5977499 FD=/dev/fd0u1722 FN="b 2 60" ..... 上のようにネットワーク周りがコメントアウトされている。ここを書き込んで生かす。 ここまで黙っていたが、なんと vi が装備されている。 容量に対してケチくさい 1FD 界では涙モノだ。 「 vi があればオレは無敵だ」などとつい口に出してしまってもかまわない。 kero01.pond# vi settings.s さて、IPアドレスとして 192.168.1.10 を振るなら ---------- DOMAIN=asyoulike DNS_1=yourknownns IPADDR=192.168.1.10 NETWORK=192.168.1.0 NETMASK=255.255.255.0 でよいでしょう。もちろん DOMAIN と DNS_1 はあなたの環境に合わせて。 これだけではまだ DHCP で取りにいってしまうので、それを止めさせるため、 rc.custom.gz をいじる。 kero01.pond# gzip -d rc.custom.gz kero01.pond# vi rc.custom eval 'dhcpcd--' とかいう行がはじめの方にあるだろう。コレをコメントアウトすればよい。 #eval 'dhcpcd --' とりあえずここまででリブートしてみよう。 kero01.pond# umount /mnt kero01.pond# reboot 今度は指定したIPアドレスが降られているはずだ ifconfig で確かめよう。ん?ダメだって? eth0 が出てこないって? またぁ、安いPCカード使ってんでしょ。正しい! ここでうまく動いちゃったのは eepro とか使ってるようなヒトです。 まったくうらやましい!しかし、そういったヒトはしまケロの話しなぞ 聞こうとは思わないだろうから殆どいないでしょう。 でないと私が寂しすぎ(^^;。でも、ま、ここで一段落して、 次はお決まりのネットワークデバイス認識とカスタマイズについて、 その後は利用法、応用法について書いてくつもりなのでしばしお待ちを。 なんて、待てないよね(^^; とにかくネットワークカード使えるようにしないと嬉しくないもんね。 ではいきますか。 ■ PCカードを認識させて動かす ■ tomsrtbt で私が気に入ってる点の1つに、基本的な Linux システムとまったく同じように扱えるというのがあるのね。実際は細工しまくりなんだけど、ユーザーに見えてる部分はまったくフツーの Linux というわけ。だから、フツーのディストリビューションでやることをやればよいのですな。では、大まかな流れを
では、おなじみ Corega の EtherII PCC-T と Melco LPC2-T を動かす例を書いていきましょう。 まず、フロッピーを作成したとき、install.s を実行したホスト、ディレクトリに入ります。仮に /usr/local/tomsrtbt ということにしましょう。ここに unpack.s という実行可能ファイルがありますね。こいつがフロッピーの中身をフツーのファイルツリーに展開するスクリプト。 まず、ドライブに tomsrtbt のフロッピーを入れる。で、 # cd /usr/local/tomsrtbt # ./unpack.s /dev/fd0u1722 すると、 tomsrtbt-1.7.361.unpacked というディレクトリができる。 # cd tomsrtbt-1.7.361.unpacked # ls 実行結果 1 2 buidit.s license.html この 2 というディレクトリにツリーがある。つまり 2 が tomsrtbt の / なわけだ。 ちなみに 1 は /dev/fd0u1722 を除いたときに入ってたファイル群。 以後、etc とか出てきますが、本体システムのと勘違いしないように。 # cd 2 ls するとほら、見慣れたツリー。 さて、モジュールは足りてるか見てみよう。例の2枚で合わせて pcnet_cs.o pcmcia_core.o ds.o 8390.o を使う。もう最近ではこーいうの何枚か覚えちゃったよ。 # lib/modules/pcmcia # ls pcnet_cs.o, pcmcia_core.o, ds.o 全部あった。さすが NE2000コンパチです。 では次 # ../net # ls plip.o しか入ってないのね。あらら。だめじゃん NE2000 コンパチ(笑)。 しょうがないので、tomsrtbt ダウンロードサイトの add-ons から 8390.o.bz2 というのをとってきて、どっかで # bzip2 -d 8390.o.bz2 して、8390.o を作って、net の中に入れます。 さて忘れていけないのは、この 8390 を使わせる設定。 pcnet_cs があって、8390 が無い状態で平然としていたシステムに 世の中優等生ばかりでないことを教えてやらねばなりません。 etc/pcmcia/config を編集します。これも毎度お馴染みの作業です。 # shimakero device "pcnet_cs" class "network" module "net/8390", "pcnet_cs" #device "pcnet_cs" # class "network" module "pcnet_cs" のように以前のをコメントアウトして、8390 を関連付けます。 で、さらに # shimakero card "Corega PCC-T Ethernet" version "corega K.K.", "corega EtherII PCC-T" bind "pcnet_cs" card "Melco LPC2-T Ethernet" manfid 0x01bf, 0x2216 bind "pcnet_cs" と追加して、カードとモジュールをバインドさせて、 モジュールはOK。 これであとは圧縮すればよいです。 え? network.opts 書かなきゃだめじゃんって? さっき言ったでしょ、tomsrtbt では setting.s に書いたものが 有効なんです。PCMCIA でもおんなじなのですよ。 ではフロッピーを作り直しましょう。 # cd /usr/local/tomsrtbt-1.7.361/tomsrtbt-1.7.361.unpacked で戻って、そこにある buildit.s を実行する。 buildit.s はこの上のディレクトリにもあるが、こっちを実行する。 # ./buildit.s すると $HOSTNAME-tomsrtbt-1.7.362 $HOSTNAME-tomsrtbt-1.7.362.tar.gz という2つのファイルが出来る。開発番号がインクリメントされている。 なんか大きなお世話かも(笑)。 で、このディレクトリのほうに入る。 # cd $HOSTNAME-tomsrtbt-1.7.362 # ls どっかで見たような...そうです。最初にフロッピーを作成した install.s のあるディレクトリの構成。つまり、ここで ./install.s すると 今までの設定を反映したフロッピーが出来るというわけ。なーるほど。 # ./install.s でフロッピーが出来ます。起動させると今度は 「ピッ、ピッ」と2つとも高い音、うれしー ○(≧▽≦)o というふうにどんどんカスタマイズできるわけです。 カスタマイズ方法もわかったし、ネットワークにもつながったし、 さー遊んでみよう! 以上はもちろん tomsrtbt.FAQ に書いてあるです(たぶんね)。さて、つぎは活用編を書きますのでしばしお待ちを。 |