#freeze
*GLAN Tank インストールまとめ [#xafdc833]

-インストール概要~
--まず、デフォルトのインストーラからインストールを行う。
--次にインストーラからshellに抜け、initrdをレスキューシステムとして使用できるように変更。
--その後、GLAN Tankで、そのレスキューシステムを使用してdebianのインストールを行います。~
~
-レスキューシステムの特徴~
--USBシリアルケーブルを接続した状態で起動すると、initrdがrootfsなレスキューシステムが起動します。
--USBシリアルケーブルを接続しない場合は、通常通り/dev/hda3から起動します。
--もちろんUSBシリアルケーブル経由でシステムのメンテナンスが可能。
--kernelはUSBシリアルサーポートモジュールを組み込むんだモノを使用。
--&color(red){補足:なんでこんな面倒なことをしてるかと言うと、ずばり、シリアルケーブルを買いそびれたからです。};~

~
**デフォルトのインストーラにて [#f750033c]
-WIN機にHDDをセットして、CDブート
-"DEBIAN"を選択する。
-インストールが終了したらCTRL-Cでshellに抜ける。
-インストールされた物を確認。ファイルは全て/dev/hda1 (/boot)にインストールされている。
#pre{{
# mount -t ext3 /dev/hda1 /mnt
# cd /mnt
# ls
barbara-base.tgz
base.20051219RC2.md
debian-base.tgz
initrd
initrd.hdb
zImage
}}
**initrdをレスキュー用ファイルシステムとして使用するための変更 [#b0f985cf]
-追加ファイルを外部のサーバから取得するため、まずネットワークの設定を行う。(DHCPを使った例)~
#pre{{
# ifconfig eth0 down
# dhclient
}}

-追加ファイルの取得と展開
#pre{{
# cd /mnt
# wget http://eggplant.ddo.jp/www/download/glantank/initrd_ttyUSB0.tgz
# tar vxfz initrd_ttyUSB0.tgz
initrd_ttyUSB0/
initrd_ttyUSB0/zImage
initrd_ttyUSB0/initrd/
initrd_ttyUSB0/initrd/sbin/
initrd_ttyUSB0/initrd/sbin/mkreiserfs
initrd_ttyUSB0/initrd/sbin/reiserfsck
initrd_ttyUSB0/initrd/sbin/resize_reiserfs
initrd_ttyUSB0/initrd/sbin/debugreiserfs
initrd_ttyUSB0/initrd/sbin/reiserfstune
initrd_ttyUSB0/initrd/sbin/mkfs.reiserfs
initrd_ttyUSB0/initrd/sbin/fsck.reiserfs
initrd_ttyUSB0/initrd/linuxrc
initrd_ttyUSB0/initrd/etc/
initrd_ttyUSB0/initrd/etc/inittab
initrd_ttyUSB0/initrd/etc/securetty
initrd_ttyUSB0/initrd/etc/rc.d/
initrd_ttyUSB0/initrd/etc/rc.d/rcS2
}}
-initrdの変更
--initrdをほどく
#pre{{
# cd /mnt
# cp initrd initrd.orig.gz
# zcat initrd.orig.gz > initrd.new
# mkdir img
# mount -o loop initrd.new img
# cd img
}}
--initrdの変更
---./linuxrc~
#pre{{
#!/bin/sh

export PATH=/sbin:/bin:/usr/sbin:/usr/bin

### mount proc
    mount -t proc proc /proc

### load drivers
    for i in leddrv buzdrv btndrv  # same as module and device name
    do
        /sbin/insmod /lib/modules/noversion/$i.ko $* || exit 1
    done

### check boot device
    stty -F /dev/ttyUSB0 38400 > /dev/null 2>&1
    if [ $? -eq 0 ] ; then
        ROOT_DEVICE=0x0100    # initrd
    else
        ROOT_DEVICE=0x0303    # /dev/hda3
    fi

### set root device
    echo $ROOT_DEVICE > /proc/sys/kernel/real-root-dev
    umount /proc
    exit 0
}}

---./etc/inittab
#pre{{
&color(red){::sysinit:/etc/rc.d/rcS2};
&color(red){ttyUSB0::askfirst:/bin/sh};
ttySC1::askfirst:/bin/sh
::ctrlaltdel:/sbin/reboot
::shutdown:/sbin/swapoff -a
::shutdown:/bin/umount -a -r
::restart:/sbin/init
}}
---./etc/securetty
#pre{{
console
ttySC1
&color(red){ttyUSB0};
}}
---./etc/rc.d/rcS2
#pre{{
#!/bin/sh

# mount filesystems
mount -t proc /proc /proc
mount -o remount,rw /
}}
---reiserfsの各種管理ツールをコピー~
(reiserfsでルートファイルシステムを構築したいので。)~
#pre{{
# cp /mnt/initrd_ttyUSB0/initrd/sbin/* ./sbin
}}
--initrdを戻す
#pre{{
# cd /mnt
# umount /mnt/img
# gzip initrd.new
# cp initrd.new.gz initrd
}}
-USBシリアルコンソールをサポートしたkernelに差し替える。~
ehci_hcd、ohci_hcd、usbserial、pl2303、ftdi_sioと、reiserfsを組み込んだカーネル。~
#pre{{
# cd /mnt
# mv  zImage zImage.orig
# cp initrd_ttyUSB0/zImage .
}}
-準備完了
#pre{{
# cd /
# umount /mnt
# shutdown -h now
}}
GLANTANKへHDDを組み込み、USBシリアルコンソールを接続して電源ONすれば、レスキューシステムが立ち上がる。~
(シリアルのボーレートは38400で接続すること)~
#pre{{
Please press Enter to activate this console.


BusyBox v1.00 (2005.02.14-02:37+0000) Built-in shell (ash)
Enter 'help' for a list of built-in commands.

/ # df
Filesystem           1k-blocks      Used Available Use% Mounted on
/dev/root.old             5639      3965      1674  70% /

&color(red){ネットワークを設定すれば、wgetが使用可能になります。};
/ # ifconfig eth0 192.168.1.83
/ # ifconfig
eth0      Link encap:Ethernet  HWaddr xx:xx:xx:xx:xx:xx
          inet addr:192.168.1.83  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Memory:80000000-80020000
}}
**debianインストールからtelnetまで[#ta5597e6]
-方針
--先ほど導入したレスキューシステムを起動して、debianのインストールを行う。~
--RAIDは使用しない。(たぶんレスキューシステム上からRAIDの構築も可能と思われる。)~
~
-パーティション設定
--/dev/hda1と/dev/hda2は触らない。
--/dev/hda3を削除して、/dev/hda3〜/dev/hda5を作成
#pre{{
# fdisk /dev/hda
}}
こんな感じにパーティションを作成した。
#pre{{
   Device Boot      Start         End      Blocks   Id  System
/dev/hda1               1          32      257008+  83  Linux
/dev/hda2              33          64      257040   82  Linux swap / Solaris
/dev/hda3              65        4928    39070080   83  Linux
/dev/hda4            4929       19457   116704192+   5  Extended
/dev/hda5            4929        9792    39070048+  83  Linux
/dev/hda6            9793       19457    77634081   83  Linux
}}
--リブート~
パーティションテーブルを書き換えたので念のためリブート
#pre{{
# reboot

すぐ立ち上がるはず。リブート後、下記のメッセージが出力される。
Please press Enter to activate this console.
}}
-rootfs(/dev/hda3)をreiserfsへ~
#pre{{
# mkreiserfs /dev/hda3
…省略
ReiserFS is successfully created on /dev/hda3.
}}
-debianベースシステムの展開~
debianのベースシステムは/dev/hda1下に用意されているので、それを/dev/hda3下へ展開。~
#pre{{
# mount -t reiserfs /dev/hda3 /mnt/hda3
# mount -t ext3 /dev/hda1 /mnt/hda1
# cd /mnt/hda3
# tar vxzpf /mnt/hda1/debian-base.tgz
}}
-各種ファイルの変更
--./etc/securetty~
rootでtelnetログインできるように下記を追加!
#pre{{
pts/0
pts/1
}}
--./etc/hosts~
#pre{{
127.0.0.1 localhost.localdomain localhost
192.168.1.83 glantank
}}
--./etc/hostname~
#pre{{
glantank
}}
--./etc/resolv.conf
#pre{{
nameserver 192.168.1.1
}}
--./etc/network/interfaces
#pre{{
# /usr/share/doc/ifupdown/examples for more information.

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
# iface eth0 inet dhcp
iface eth0 inet static
       address 192.168.1.83
       netmask 255.255.255.0
       network 192.168.1.0
       broadcast 192.168.1.255
       gateway 192.168.1.1
}}
--./etc/fstab
#pre{{
proc                            /proc           proc    defaults        0 0
/dev/hda1                       /boot           ext3    defaults,rw     0 0
/dev/hda2                       swap            swap    defaults        0 0
/dev/hda3                       /               reiserfs    defaults,rw     0 0
}}



-準備完了
#pre{{
# cd /
# umount /mnt/hda1
# umount /mnt/hda3
# reboot
}}
USBシリアルケーブルを即座に取り外す。
-telnet
#pre{{
Debian GNU/Linux 3.1 glantank
glantank login: root
Last login: Sun Jan 15 21:34:53 2006 from 192.168.1.2 on pts/0
Linux glantank 2.6.10-iop1 #22 Fri Aug 19 13:37:07 JST 2005 armv5tel GNU/Linux

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
glantank:~#
}}
* memo [#h077a85f]
-Seagete Barracuda 7200.7 160GB (ST3160023A) 一台で運用予定 -> 問題なく動いた
-Zaurusの開発環境として使用できるかも!と期待
-ザウルス&サインはVGA、[[夢と小物のエンジニアリング:http://symzing.way-nifty.com/blog/2005/11/post_5612.html]] より~
ザウルスにサインはVGAをつないでいる人がいるようだ。~
GLANTANKでも、同じアーキなので、できないことはなさそうね。ー>できた。~
**ARM版debianの使用感等 [#i7a61dd1]
-X window, vnc
--Xの起動に時間がかかる。起動時のみマウスが追従しない。
--一旦起動するとストレスなく使用できる。
--wdmは動作しなかったので、xdmで代用
-emacs21,anthy
--emacs21も起動時かなり時間がかかる。一旦起動すると快適に使用可
--anthyはなんか動作が変。仮名漢字変換時、最終文字が変換対象にならない。
-gcc-3.4
--うごきまっせ!
-サインはVGA
--うごきまっせ!…  &ref(usb2vga.tgz);
---カーネルドライバ、sisusbvga.ko
---xfree86用モジュールsisusb_drv.o を含む
-kernelをビルドしてみる
--メモリ128MBなんで贅沢しちゃいます、ってことで、~
ehci_hcd、ohci_hcd、usbserial、pl2303、ftdi_sio、+αを組み込みビルド~
--cmdlineが反映されないみたい。console=ttyS0をttyUSB0に変えたかったんだけど。~
--reiserfsは組み込まれたみたい。~
--sisusbvgaも組み込まれたみたい。(VGA Consoleなし。2.6.10ではサポート外?)~
*コメント欄 [#d32f5219]
-kernelは、ぜんぶビルドすると、馬鹿みたいに時間がかかるよ。--zimage binary-arch kernel_sourceで2時間弱くらい。全部やると8時間たっても終わらなかった。imageだけなら1時間くらい。 -- [[kinneko]] &new{2006-01-16 (月) 22:00:37};
--普通の方法でビルドしていますが1時間以上かかりました。HDDが遅いのかも。ビルド速度はSH4とあまり変わらないような気がします。 -- [[管理人]] &new{2006-01-17 (火) 00:17:23};
--そうなんですよ。Apacheとかのビルドでも、SHと変わりないくらいです。パワーはあるくせに、結果を出せないので嫌いなんです。 -- [[kinneko]] &new{2006-01-17 (火) 12:20:07};
--USB判断での起動セレクト成功おめでとう! -- [[kinneko]] &new{2006-01-19 (木) 14:17:54};
--initrdの構成、よく練られていますね。これ単体でLinuxがインストールできてしまうのですから!。デフォルト状態では、ほとんどの機能が眠っていて、もったいないです。これでチョンボってもPCに繋ぐ必要がなくなります。嬉 -- [[管理人]] &new{2006-01-20 (金) 00:28:14};
-(1)シリアルケーブルがある場合は、どのような流れになりますか?(2)「USBシリアルコンソールをサポートしたkernelに差し替える。」をもう少し詳しくお願いします。差し替えるってことはすでに組み込んだカーネルを用意していないといけないってことでしょうか? -- [[t_dragon_2000]] &new{2006-01-29 (日) 22:10:51};
--(3)USBシリアルケーブルはどこのメーカの何がいいですか?(4)/etc/apt/sources.listには、ARM版の指定でいいのでしょうか?ftp://ftp.jp.debian.org/debian-jp とかでもOKでしょうか? -- [[t_dragon_2000]] &new{2006-01-29 (日) 22:17:26};
--(1)持ってないのでわからない。挑戦者の手順どおりでOKのはず。(2)YES。上記initrd_ttyUSB0.tgzのものが使えるかも。(3)[[ここ参照。>USBデバイス動作実績一覧]]PCに繋ぐなら、9pinメスーメスのインターリンクケーブルも必要。(3)しらない(笑)、無変更でOK。 -- [[管理人]] &new{2006-01-29 (日) 23:32:37};
-PLANEX URS-02 , IBM USB Serial Parallel Adapter(P/N 22P5298)でインストールできました。 -- [[t-ayako]] &new{2006-02-05 (日) 01:12:14};
--ご報告ありがとうございます。こんな手間暇かかる方法を追試してくださる方がいるとは思いませんでした。汗。ところで、そのUSBアダブタ、相性問題で回収騒ぎになっているようですので、ロット番号を確認しておいたほうが良いかもしれませんね。早とちり、2002年の話でした。orz. -- [[管理人]] &new{2006-02-05 (日) 11:23:18};
-本サイトの手順に従いレスキュ・システムを構築して、HDDをGLAN Tankから取り出すことなくいろいろ試行錯誤をして楽しんでおりました。ところが、ある日PX-TV402Uを使ってテレビ録画をしようと思い、シリアル・ケーブルを接続せず/dev/hda3から起動した状態で、sushi-kさんのPcWEBの記事「http://journal.mycom.co.jp/articles/2006/04/22/glantank」の手順に従ってPX-TV402U用のカーネル・ドライバをシステムのルート・ダイレクトリーにインストールしようとしたところ、おおもとのファイル・システムにリセットがかかった様な感じでGLAN Tankが起ち上がらなくなってしまいました。基本的な起動の仕組みが解っていない故の質問で恐縮ですが、こうした場合、PX-TV402Uのカーネル・ドライバをどこへ(/dev/hda3での起動状態で「tar  xvzpf …‥-C /?」)インストールすればよろしいのでしょうか?ご教授いただければ幸いです。 -- [[TN]] &new{2006-05-16 (火) 20:58:16};
--手順どおりrootfsをreiserfsで構成している場合、reiserfsモジュールをカーネルに組み込むことが必須となりますが、sushi-kさんのカーネルはどうなっているのでしょうか?そこで扱われているカーネルの構成を確認してみてはいかがでしょうか?(sushi-kさんのブログで質問すればすぐ教えてくれるんじゃないかな?)。
ちなみに。本サイトでは、デフォルトカーネルにreiserfsモジュールを組み込んだカーネルを使っています。(ehci_hcd、ohci_hcd、usbserial、pl2303、ftdi_sioも組み込んである。)P.S. sushi-kさんのシステムを入れるということは、構築済みのレスキューシステムが消えちゃうということですので念のため。 -- [[管理人]] &new{2006-05-16 (火) 21:24:35};
--早速のアドバイス有り難うございます。本サイトのレスキューシステムの枠組みの中で、/dev/hda3の起動システム上にPX-TV402Uのドライバを載せるためには高度の技を必要とするのでしょうか? -- [[TN]] &new{2006-05-16 (火) 22:21:23};
--高度な技はいらないと思います。それよりも現状を把握することが重要。いちかばちか、PX-TV402Uのドライバだけ抜き出して手動で組み込んでみてはどうでしょうか?運がよけれ動くでしょう。ドライバ、カーネル、initrdは1セットで使用することが前提なので動かないこともあるでしょうが。 -- [[管理人]] &new{2006-05-17 (水) 00:47:07};
- sargeにはいってるgcj... 簡単なプログラムもセグフォルトに。。 -- [[mmm]] &new{2006-08-09 (水) 19:01:24};
- free-java-sdk入れてjavacが動いている人はいるみたいですよ。 -- [[kinneko]] &new{2006-08-10 (木) 13:30:44};
- jikesのほうは問題なく動作していますが、sablevmはかなりバグ.ありで動かすのにちょっと苦労しました。汗; 白箱を本格的ゲー鯖として使ってるため、高速なgcjがほしいとこです。 -- [[mmm]] &new{2006-08-10 (木) 16:13:51};
- SableVM SDKが動いているんですか。それは面白いですね。でも、ゲー鯖は無理があるかな... -- [[kinneko]] &new{2006-08-10 (木) 17:33:01};
- この場を借りさせてくださいm_m... どなたかGLANTANK(sarge armv5tel)でgcjの動作確認とれている方おりますでしょうか? -- [[菅井徹]] &new{2006-09-11 (月) 09:59:02};
- 菅井さん、私のglantankでは最新のgcj,jdbc,postgresqlが動いていますよ。www.geocities.co.jp/maninohooで確認してみてくださいw -- [[mani]] &new{2006-09-14 (木) 09:10:18};
- 添付ファイルspamがたくさんついてますね。さすがにこれは私では消せない。 -- [[kinneko]] &new{2007-02-06 (火) 13:31:45};

//#comment

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS