Vitruvian Penguin
knoppix

[knoppix:2468] Re: KNOPPIX-RW (Cannot boot)要望

Date: Sun, 21 Dec 2003 18:05:01 +0900
X-mailer: Microsoft Outlook Express 6.00.2800.1158
K.Iwaiさん、こんにちは。宮脇です。

> 出口が見えてきたところで、要望があるのですが、
> メモリが1GB必要と言われてもかまいませんので、
> KDE(コントロールセンター、インフォセンター含む)、Konqueror,Kateが使え、
> logを取得できるようなパッケージ構成で作っていただくわけにはいかないでしょ
うか?
>
> 私はWindows校からの転校生なのでKDE無しだと何をどうして良いのか
> わからない場面がたくさんあります。
> 「お前が作れよ」とか言われそうですが、まだそこまでの技術レベルには
> 至っておりません。
>
> 大幅なパッケージの追加・変更には多大な時間と労力が必要なことは
> 容易に想像できますので、強くは要望できませんが、
> KDE版があれば詳細な実験レポートを作成できることは確約できます。
プログラミングに慣れたハイスキルな方とお見受けしましたので、そのつもりで
レスさせていただきます。少々長文ですが、よろしくお願いいたします。

このご要望には、KNOPPIX-RWより、KNOPPIXの産総研版をベースにした方が
よいと思います。toramオプションは、KNOPPIX 3.3からサポートされています。
メモリが大きければ、inode数の問題も生じないので、今回のような修正は必要
無いかもしれません。

KNOPPIX-RWにあって、産総研版KNOPPIXない機能のうち、どの機能に魅力を
感じているのでしょうか。私が一番魅力を感じているのは以下の点です。

(1)産総研版KNOPPIXの最新版をベースとしているが、大幅にダイエットされて
おり、わずか150MBに収まっている。このため、メモリの少ないマシンでも、toram
オプションを使用してオンメモリで使用できる。
しかも、ベースが最新版なので安心。

しかし、どうもこれではなさそうですね。以下の点でしょうか。

(2)CDブートLinuxであるにもかかわらず、パッケージの追加・更新がapt-getで
簡単に出来る。
(3)パッケージの追加・更新結果をCD-R・RWに書き戻すことが出来る。

もし、この(2)(3)であれば、産総研版KNOPPIXでも出来ます。

---

(2)なら、[knoppix:2138〜2160]の記事が参考になります。
[knoppix:2158]で河野さんは「apt-get update」と「apt-get install postgresql」
をKNOPPIXで実行するには、どうすれば良いかを示してくれました。

南島さんは、これをさらに進めて、多くのパッケージをインストールできる汎用性を
求めたようで、より多くのディレクトリが/ramdisk上で実体化されています。
この南島さんの発想を[knoppix:2158]のようにmkwritableスクリプトで実現すると、
次のようなスクリプトになります。
for dir in /etc /bin /sbin /usr /lib; do
   find $dir -type d|while read path; do
      mkwritable $path
   done
done
find /KNOPPIX/etc -type f|while read path; do
   mkwritable $path
done
mkwritable /var/lib/dpkg/*
mkwritable /var/lib/apt/lists/lock
mkwritable /var/lib/apt/lists/partial
mkwritable /var/cache/apt/archives/partial
mkwritable /var/cache/apt/archives/lock

ただし、これを実行するには以下の準備が必要です。

(a)/etcをルートファイルシステムから/ramdiskに移動します。これには、linuxrcの
中で、以下の3ステップを実行する必要があります。
         cp -pr /etc /ramdisk/etc
         rm -rf /etc
         ln -s /ramdisk/etc /etc
私のサイト「KNOPPIX実験室」で提供しているminiroot.gzを使っていただける場合
は、「mvetc」オプションを指定すると、これが実行されます。

(b)inodeは、たぶん12万くらい必要になると思います。
私のサイト「KNOPPIX実験室」で提供しているminiroot.gzでは、inode数=/ramdisk
サイズ[単位:KB]になっているので、メモリが160MB位から実行できるようになると
思います。
#この場合、メモリ1GBだとinode数が多くなりすぎる嫌いがありそうですね。
#次にminiroot.gzを更新するときは、[knoppix:2460]に示したように折れ線状に
#inode数が増加するようにしたいと考えています。

---

ここまでくれば、(3)の目的で、KNOPPIX-RWのmk-knxrw-imageスクリプトや
mk-knxrw-cdスクリプトを産総研版KNOPPIXで使うことも出来るのではないで
しょうか。ただ、CDに書き戻すには、空き容量が小さいので、少々窮屈かも
しれませんが。

ただ、この方法で保存した設定を読み込むのは少々工夫が要ります。
KNOPPIX標準のknoppix.shで読み込むようにすることも出来ますが、その場合
は設定を保存したマシンでしか読み込むことが出来ません。それでもよければ、
この方法で読み込むのは簡単だと思うので挑戦してみてください。

なぜそうなるかというと、knoppix.shで読み込む方法だと、マシン構成の自動
認識処理(knoppix-autoconfigの大半)が終わった後で設定を読み込むため、
設定ファイルに自動認識される構成情報が入っていると、せっかく自動認識
した情報を、保存したマシンの構成情報で上書きしてしまいます。
そして、mk-knxrw-image等では自動認識される構成情報も保存されます。

KNOPPIX-RWだと、保存した設定を別のマシンで読み込んでもウマくいくのは
linuxrcで設定を読み込むからです。この場合、設定を読み込んだあとで、
マシン構成の自動認識処理が実行されるのでウマくいくのです。
ただし、例外もあります。設定が保存されていたら自動認識処理をスキップ
するような処理が入っている場合です。わたしのマシンのネットワーク機能が
自動認識されないのはこの辺が原因だろうと思っています。(未調査)

したがって、KNOPPIX-RWのように、保存した設定を他のマシンでも読める
ようにするには、KNOPPIX-RWのlinuxrcを参考にしてKNOPPIXのlinuxrc
を書き換える必要があります。

---

以上、実験したわけではないので、本当にウマくいくかどうか保証の限りでは
ありませんが、基本的な考え方は、こうだと思います。

#わたしも、この辺の実験をしたいとは思っていますが、年内、あまり時間が
#割けそうにないもので、K.Iwaiさん(または、他の誰か)に実験していただ
#けるとありがたいなと思って、このレスを書きました。
<Prev in Thread] Current Thread [Next in Thread>