はじめに †
LANDISKのカーネルソースをKernel2.6へ移植して、
SH-Linuxのホームページで公開されている
Fedora Coreのルートシステム上で動作させてみました。
- 本システムの特徴
- Fedora Core 2(FC2)ベース
- Linux Kernel 2.6.11
- glibc 2.3.3
- yumでSH-Linuxのホームページに用意されたパッケージ群を自動取得
(yumとは、いわばapt-getのFedora Core版)
- GCC3.4系やjava等も動くらしい。
- SH-Linux Kernel Swtcherを使用することでHDDブートセクタを触ることなく、
root=/dev/hda3より起動
- あたらし物好きなデストリビューションなので、少々バギーな所が欠点です。
Fedora Coraのパッケージ、ありがたく使用させていただきました。
SH-Linuxのホームページ関係者の方々に感謝いたします。
SH-Linux Kernel Switcher のインストール †
まず、SH-Linux Kernel Switcherをインストールします。
Ver2.1を必ず使用してください。
インストール方法は、SH-Linux Kernel Switcher を参照してください。
FC2ディストリビューションのインストール †
- basesystemの解凍
本ページ下方の「人柱になっても良いという方へ」のリンク先から、
FC2-basesystem-xxxxxxxx.tgzを取得して、LANDISKの/mnt/hda3/へ解凍します。
なお本basesystemには、LANDISK用のカーネルとカーネルモジュールを含んでいます。
cd /mnt/hda3
tar vxfzp FC2-basesystem-xxxxxxxx.tgz
- ファイルの移動またはリンク
解凍後、/mnt/hda3/FC2内の各ディレクトリを/mnt/hda3/直下に移動、またはリンクします。
dev,proc,mntは必ず・/mnt/hda3/直下へ移動しなければなりません。
その他はリンクでも移動でもどちらでもかまいません。
移動の際、パーミッションやオーナーが変化しないように注意してください。
drwxr-xr-x 29 root root 4096 3月 5 12:47 .
drwxr-xr-x 29 root root 4096 3月 5 12:47 ..
drwxr-xr-x 2 root root 4096 4月 10 2004 .landisk
drwxr-xr-x 2 48 48 4096 7月 10 2004 .landisk-update
drwxrwxr-x 19 root root 4096 3月 5 09:06 FC2
lrwxrwxrwx 1 root root 10 2月 22 05:02 bin -> FC2/bin
lrwxrwxrwx 1 root root 11 2月 22 05:03 boot -> FC2/boot
drwxr-xr-x 22 root root 118784 3月 5 11:39 dev
lrwxrwxrwx 1 root root 10 2月 22 05:02 etc -> FC2/etc
lrwxrwxrwx 1 root root 10 2月 22 05:03 exp -> FC2/exp
lrwxrwxrwx 1 root root 11 3月 5 12:47 home -> FC2/home
lrwxrwxrwx 1 root root 13 2月 22 05:02 initrd -> FC2/initrd
lrwxrwxrwx 1 root root 10 2月 22 05:03 lib -> FC2/lib
drwxr-xr-x 2 root root 4096 1月 14 09:16 mnt
lrwxrwxrwx 1 root root 10 2月 22 05:02 opt -> FC2/opt
dr-xr-xr-x 36 root root 0 3月 5 11:39 proc
lrwxrwxrwx 1 root root 11 2月 22 05:02 root -> FC2/root
lrwxrwxrwx 1 root root 11 2月 22 05:02 sbin -> FC2/sbin
drwxr-xr-x 14 root root 4096 3月 5 03:41 share
lrwxrwxrwx 1 root root 10 2月 22 05:03 sys -> FC2/sys
lrwxrwxrwx 1 root root 10 2月 22 05:02 tmp -> FC2/tmp
lrwxrwxrwx 1 root root 10 2月 22 05:02 usr -> FC2/usr
drwxr-xr-x 4 root root 4096 11月 7 2003 spool
lrwxrwxrwx 1 root root 10 2月 22 05:03 var -> FC2/var
※オレンジ色のファイルは、LANDISKオリジナルのファイルです。
- IPアドレスの設定
次の5つのファイルに記述されたIPアドレスを、各自の環境にあわせ修正します。
- /mnt/hda3/etc/hosts
LANDISKの/etc/hostsをコピーします。
eggplant.ddo.jpという行があると、yumが正常に動作しません。
- /mnt/hda3/etc/resolv.conf
LANDISKの/etc/resolv.confをコピーします。
- /mnt/hda3/etc/sysconfig/network
NETWORKING=yes
HOSTNAME=landisk;
GATEWAY=192.168.1.1 ← ルータ等のIPアドレス
- /mnt/hda3/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.1.81 ← LANDISKのIPアドレス
NETMASK=255.255.255.0
- /mnt/hda3/etc/hosts.allow
telnetで接続を許可する端末のIPアドレスを記述します。
次の記述は192.168.0.xx、192.168.1.xxからのアクセスを許可するようになっています。
#
# hosts.allow This file describes the names of the hosts which are
# allowed to use the local INET services, as decided
# by the '/usr/sbin/tcpd' server.
#
in.telnetd : 127.0.0.1 192.168.1. 192.168.0.
- yumの設定
http://eggplant.ddo.jp/www/download/FedoraCore/ からパッケージをダウンロードするよう
エントリを追加します。ここには、SH-Linuxのホームページに用意されていないパッケージや
管理人が修正したパッケージ等を置いています。
- /etc/yum.conf
[main]
cachedir=/var/cache/yum
debuglevel=2
logfile=/var/log/yum.log
pkgpolicy=newest
distroverpkg=redhat-release
tolerant=1
exactarch=1
retries=20
[base]
name=Fedora Core $releasever - $basearch - Base
baseurl=http://rpm.sh-linux.org/rpm-2004/target/
exclude=XFree86*, pspell, bonobo-activation*
[base-kogiidena]
name=Fedora Core $releasever - $basearch - Base-Kogiidena
baseurl=http://eggplant.ddo.jp/www/download/FedoraCore/
以上で準備は完了です。
Kernel2.6とFC2の起動 †
- kernelsw.pl(SH-Linux Kernel Switcher)
kernelsw.plとは、カーネルを動的にブートするためのプログラムです。
lilo.confファイルに似た次のファイルを指定して、ブートパラメータを設定します。
linear
boot=/dev/hda
disk=/dev/hda
bios=0x80
timeout=50
default=linux
image=/mnt/hda3/boot/zImage
label=linux
root=/dev/hda3
read-only
offset_address=0x00800000
append="mem=64M console=ttySC1,9600 root=/dev/hda3 fastboot"
※起動時、コンソールを持たないLANDISKの場合、fsckからの問いかけに返答することができないため、
appendにfastbootオプションを指定して、fsckをスキップします。
- カーネルイメージの読み込み
kernelsw.pl(SH-Linux Kernel Switcher)を用いてカーネルを読み込みます。
# cd /mnt/hda3/
# kernelsw.pl boot/kernelsw.conf
Loading .... done.
==============================================
SH-Linux Kernel Switcher V2.1
----------------------------------------------
image = /mnt/hda3/boot/zImage (size:1261568,page:309)
root = /dev/hda3 (read-only)
append = "mem=64M console=ttySC1,9600 root=/dev/hda3 fastboot"
offset_address = 0x00800000
----------------------------------------------
kernel boot parameter details
0 : 0x1 # read-only root file system
1 : 0x0 # RAMDISK Flags
2 : 0x303 # Root device (/dev/hda3)
3 : 0x1 # Loader type (LILO = 1)
4 : 0x0 # Initrd start
5 : 0x0 # Initrd size
6 : 0x0 # Not defined yet
7 : 0x0 # Not defined yet
==============================================
#
- Kernel 2.6の起動
この状態でLANDISKの電源ボタンをOFFにすると、カーネルの起動が始まります。
(数秒後、電源ボタンをON側に戻しておくように。)
約15〜30秒後、telnetdが起動され、外部からアクセス可能になります。
※初回起動時はRSA鍵の設定等を行うようで、もう少し時間がかかるかもしれません。
Telnet接続と動作確認 †
電源OFF †
参考文献 †
人柱になっても良いという方へ †
SH-Linux Kernel Switcher でのみ動作を確認しています。
最悪システムを破壊してしまう恐れがありますが、使ってみたいという方はどうぞ!
情報交換欄 †
LANDISK上のFC2やKernel2.6に関して現状、情報がほとんどありません。
動作報告、不具合報告等、なんでもお寄せいただければ幸いです。
- 今の所、問題なく動作しています。ありがとうございます。(HDL-250U) -- std?
- 動作報告ありがとうございます。コメントがあるのも見逃していました。すみません。 -- 管理人?
- 動作しました。但、現在rpm.sh-linux.orgからyumできないようです。 -- Tomy?
- 開発環境をdebianのdebtをar-tarで取り敢えずkernel2.4.6-14のコンパイルも成功したのですが、debから更にインストールしていたらいつのまにか起動しなくなってしまいました。残念。 -- Tomy?
- 回線やサーバネックでyumの公開を取りやめたのかもしれませんね。冒険する場合は、chroot環境で行うといいかも。 -- 管理人?
- 壊れた原因を調べているのですが、不明なので再度この上にbase-xxxをオーバーライトしてみます。多分動くと思います。パーティションで分けていてdebianも動作中なので被害は無いのですが。 -- Tomy?
- 原因がわかりました。FCとDebianでは/etc/init.d/ が異なっていて、FCではシンボリックリンクでdebianではディレクトリでした。.debのインストールでシンボリックリンクが切れてしまったのが原因でした。動いたの良いのですがyumもapt-getも意味をなさないし......... -- Tomy?
- yumの原因がわかりました。yum2.1?位から仕様が変わったようで、現在はheadersを使用しないようです。sh-linuxは新版対応で、eggplantのは旧版対応らしいです。従って両方同時jにアクセスは不可? -- Tomy?
- FC2(rpm-2004)とFC3(rpm-fc3)があるようですが、どちらの話をしていますか?私はあまり詳しくないのですが、FC2はyum2.0系なのでheadersが必要なのですが、現在削除されてしまっているようです。FC3はyum-2.1系でheadersの代わりに、repodataという物を参照するみたいです。 -- 管理人?
- rpm-2004の方にもrepodataが有ったと思ったのですが、今見てみると無いですネ。私の勘違いかも。ところで、yumをlandiskではなくPentiumからnfsを介して実行するとかなり速いです。rpm-fc3でFC3になったのですが、色色有りましてrpmdbが破壊してしまいました。さて、どうしましょう。 -- Tomy?
- 今パーティションが余ってなくて追試できないのですが、FC3のベースアーカイブがあるといいですね。旨くいったら公開してみてはいかがでしょうか!頑張ってくださいね。 -- 管理人?
Counter: 9559,
today: 3,
yesterday: 0