方針 Edit

  • 新システム概要
    • LANDISKの中身を全て入れ替える。
    • debian iohach版とdebian26のデュアルブート環境を構築する。
    • debian26と/shareはジャーナリング機能を有するReiserFSを使用する。
    • LANDISKの分解(HDDの取り出しやシリアルコンソール追加)なしで移行できる方法を考える。

  • パーティション分割
パーティション開始終了サイズIDファイルシステム 備考
/dev/hda1110208G83ext2debian iohack版 (linux-2.4.21-iodata)
/dev/hda210211053256M82swap-
/dev/hda31054615340G83ReiserFSdebian26 (linux-2.6.11-sh)
/dev/hda4615419457100G83ReiserFS/share (共有領域) 


  • boot
    sh-lilo-sel改 を使って、下記2つのブートラベルから起動できるよう設定する。
    • /dev/hda3 … ブートラベル1 … 通常使用
    • /dev/hda1 … ブートラベル2 … レスキュー用

  • 移行手順
    次ような手順で行えば、LANDISKからHDDを取り出さずに移行できそうだ。
    (常に2つのブートラベルから起動できるよう、保険をかけながら構築していく。)

    • (1) ReiserFS対応カーネルでブート
      オリジナルのカーネルはReiserFS未対応であるため、対応カーネルに差し替える。
      さらに、作業上必要になる各種ツールのインストールを行う。(wget、ReiserFSツール、sh-lilo-sel改等)
      そして、sh-lilo-sel改を使用して、ReiserFS対応カーネルから起動を行う。
      なお、保険として、オリジナルカーネルからもブートできるようsh-lilo-sel改を設定をしておく。

    • (2) パーティション分割とファイルシステムの作成
      ReiserFS対応カーネルで起動後、
      fdiskを使用して、/dev/hda1〜3を削除、/dev/hda1〜4を新規作成する。
      その後、/dev/hda3と/dev/hda4をReiserFSへ。
      なお、マウントして使用中の/dev/hda1のサイズ変更も同時に行うことになるが、
      先頭位置を変えずにサイズを増加させるだけなので問題ない(ハズ)。

    • (3) debian26環境の構築
      /mnt/hda3へReiserFS化した/dev/hda3をマウントして、debian26環境の構築を行う。

    • (4) debian26環境からブート
      sh-lilo-sel改を使用して、/dev/hda3上のdebian26環境からブートする。
      保険用として、/dev/hda1からもブートできるように設定しておく。

    • (5) /dev/hda1の初期化準備
      起動したdebian26上で/dev/hda1を/mntへマウンドして作業を行う。
      LANDISKのオリジナル環境のバックアップや、iohackのベースシステムの取得等を行う。

    • (6) /dev/hda1の初期化とブート設定
      /dev/hda1の初期化を行う。
      初期化を行うとブートできなくなるため、ブートラベルの再設定を速やかに行う。

    • (7) debian-iohack版の構築
      最後にdebian-iohack版の環境構築を行い、システムの移行作業は無事終了。

    それでは実際に行ってみましょう。

手順(1) ReiserFS対応カーネルでブート Edit

  • LANDISKへtelnetしてrootになる
    手順省略…

  • ルートファイルシステムをrwでリマウント
    # mount -o rw,remount /
    
  • 各種ツールのインストール
    http://eggplant.ddo.jp/www/download/debian_iohack_base/renewal.tgz を取得してルートで展開します。
    なお、本アーカイブには、
    等が含まれます。
    # cd /
    # tar vxfz 何処かの/renewal.tgz
    ./boot/
    ./boot/boot.b-selk
    ./boot/.config-2.4.21
    ./boot/System-2.4.21.map
    ./boot/vmlinuz-2.4.21
    ./boot/vmlinuz-2.6.11-sh
    ./etc/
    ./etc/lilo-selk.conf
    ./lib/
    ./lib/modules/
    ./lib/modules/2.4.21/
    ./lib/modules/2.4.21/kernel/
    ./lib/modules/2.4.21/kernel/fs/
    ./lib/modules/2.4.21/kernel/fs/smbfs/
    ./lib/modules/2.4.21/kernel/fs/smbfs/smbfs.o
    ./lib/modules/2.4.21/kernel/net/
    ./lib/modules/2.4.21/kernel/net/appletalk/
    ./lib/modules/2.4.21/kernel/net/appletalk/appletalk.o
    ./lib/modules/2.4.21/kernel/drivers/
    ./lib/modules/2.4.21/kernel/drivers/usb/
    ./lib/modules/2.4.21/kernel/drivers/usb/hid.o
    ./lib/modules/2.4.21/kernel/drivers/usb/pwc.o
    ./lib/modules/2.4.21/kernel/drivers/usb/emi26.o
    ./lib/modules/2.4.21/kernel/drivers/usb/scanner.o
    ./lib/modules/2.4.21/kernel/drivers/usb/usbvideo.o
    ./lib/modules/2.4.21/kernel/drivers/usb/serial/
    ./lib/modules/2.4.21/kernel/drivers/usb/serial/pl2303.o
    ./lib/modules/2.4.21/kernel/drivers/usb/serial/ftdi_sio.o
    ./lib/modules/2.4.21/kernel/drivers/usb/serial/usbserial.o
    ./lib/modules/2.4.21/kernel/drivers/usb/konicawc.o
    ./lib/modules/2.4.21/kernel/drivers/usb/ov511.o
    ./lib/modules/2.4.21/kernel/drivers/usb/audio.o
    ./lib/modules/2.4.21/kernel/drivers/usb/usb-midi.o
    ./lib/modules/2.4.21/kernel/drivers/usb/printer.o
    ./lib/modules/2.4.21/kernel/drivers/media/
    ./lib/modules/2.4.21/kernel/drivers/media/video/
    ./lib/modules/2.4.21/kernel/drivers/media/video/videodev.o
    ./lib/modules/2.4.21/kernel/drivers/sound/
    ./lib/modules/2.4.21/kernel/drivers/sound/ac97_codec.o
    ./lib/modules/2.4.21/kernel/drivers/sound/soundcore.o
    ./sbin/
    ./sbin/fdisk
    ./sbin/lilo-selk
    ./tools/
    ./tools/wget
    ./tools/reiserfsck
    ./tools/resize2fs
    ./tools/mkreiserfs
    
  • 少し脱線
    いろいろなカーネルモジュールが用意されていることが見てわかると思います。
    これらモジュールは、これから構築するdebian iohack環境で使用できます。
    今は必要ないけど、後で忘れないように
    # depmod -a
    
  • lilo-selk(sh-lilo-sel改)を打ち込む
    (ブート設定の詳細は、/etc/lilo-selk.confを参照のこと)
    # /sbin/lilo-selk -C /etc/lilo-selk.conf
    Added linux-iodata *     ← 今までと同じカーネルでブート  
    Added linux-2.4.21    ←  ReiserFS対応のカーネルでブート
    
    これで、上記2つのラベルからブート可能になりました。

  • ブートラベル2から起動
    sh-lilo-sel改を使用すると、シリアルコンソール無しの環境でも2つのラベルからブート可能になります。
    • 2番目のラベル(linux-2.4.21)から起動するには
      電源ボタンをOFFにしてLANDISKをシャットダウンします。
      その状態から、電源ボタンをON→OFF、そしてHDDの回転が安定したころ、再度電源ボタンをONにします。
      (1番目のラベルから起動する場合は、今までどおりONにすればOKです。)

    • 起動確認
      telnet後dmesg表示が次のようになっているとOKです。
      なお最終行あたりにエラーがでますが、今は無視してて大丈夫です。
      # dmesg
      Linux version 2.4.21 (root@landisk) (gcc version 3.0.4) #1 Sat Jun 11 18:57:56 JST 2005
      I-O DATA DEVICE, INC. landisk3 support.
      …省略…
      Unable to handle kernel NULL pointer dereference at virtual address 00000004
      pc = c014c3b6
      
      *pde = 00000000 [#u06e172b]
      Oops: 0001
      
      PC  : c014c3b6 SP  : 8fab1f64 SR  : 40008001 TEA : c014a034    Not tainted
      R0  : 00000028 R1  : 00000000 R2  : c015b660 R3  : 00000000
      R4  : c015b9c4 R5  : 00000001 R6  : 00000001 R7  : 8c211b34
      R8  : c014c000 R9  : c015b650 R10 : 8fab0000 R11 : 8fab5000
      R12 : 0040ce40 R13 : 00401874 R14 : 8fab1ffc
      MACH: 00000022 MACL: 000a16f0 GBR : 00000d80 PR  : c014c394
      

      前のページ 次のページ

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2006-06-13 (火) 20:02:27 (6534d)