情報実験機用 セットアップ CD の作成方法 & インストール方法

以下ではセットアップ CD の作成方法とインストール方法について説明します. 2004 年度 VTA は 「1. セットアップ CD によるインストール方法」を参照 の上, 担当マシンのセットアップを 9/24(金) までに完了させてください. 作業時間は順調に行って, 一つのマシンあたり 30 分程度です.


目次

  1. セットアップ CD によるインストール方法
  2. セットアップ CD の作成方法

1. セットアップ CD によるインストール方法

1.1 用意するもの

準備として以下のものを用意する.

これらは情報実験室前方右側の 3n 機の棚にマシン毎にラベルを貼って保管してあります. 作業中に不具合が見つかった際には予備を用意してありますので申し出て下さい.

1.2 BIOS の設定

セットアップ CD を入れる前に BIOS の設定を行う. 設定の仕方は, 例えば,

http://www.ep.sci.hokudai.ac.jp/~inex/y2003/1128/WinXP_install/bios.html

に書かれてありますが, ブートシーケンスは CD-ROM を 1番にします. そうしないと CD から起動せず, インストール作業ができないので注意!

1.3 インストールの作業手順

セットアップ CD を CD-ROM ドライブに投入して, マシンを再起動させると, Debian GNU/Linux のインストーラが起動する.
起動している最中に root.bin のディスクを要求されるので, root.bin ディスクをフロッピードライブに入れ, Enter を押す. しばし待つ.

Boot: という表示が画面下に出たら Enter を押す. インストール作業は以下の手順に従う.

  1. キーボードの設定 (Configure the Key Board)
    • qwerty/jp106 Japan を選択

  2. ハードディスクのパーティション分け (Partition Hard Disk)
    • 今までのパーティションを Windows 領域も含めて全て削除
      (`Delete'にカーソルを合わせEnter).
    • ハードディスクの全ての領域を 1 つのパーティションとする.
      (`NEW' にカーソルを合わせEnter. Primary を選択. ハードディスクの全領域を hda1 とする)
    • ブートフラグを付ける(`Bootable'にカーソルを合わせEnter).
    • パーティションテーブルをディスクに書き込む
      (`Write'にカーソルを合わせEnter).

  3. スワップパーティションの設定は行わない
    (alternative: do without swap partition を選択).

  4. ハードディスクの初期化・マウント(Initialize Hard Disk)
    • 不良ブロックのチェックは行わなくてよい.

  5. マウントポイントの設定 (Mount as the Root Fillesystem?)
    • "Yes" を選択.

  6. ブートローダの設定 (Make bootable Hard Disk)
    • "/deb/hda : Install LILO in the MBR"を選択 (ディスクの一番始めに書き込んである MBR に lilo を インストールする).

  7. 再度ブートローダの設定 (Make bootable Hard Disk)
    • "/dev/hdb1: Instal LILO in the /target/boot boot sector" を選択 (パーティション /dev/hda1 の一番始めに書き込んである MBR に lilo をインストールする).

1.4 イメージの展開

マウントポイントの設定の後, インストーラーのメニュー画面を下の方までスクロールして 下から 3 番目の "Execute a Shell" を選択しシェルを起動する.

尚, この時のファイルシステムは以下のようになっている.

# df
Filesystem .......... Mounted On
/dev/ram0 .......... /
/dev/hda1 .......... /target

以下はシェル(ash)上での作業となる. まずセットアップ CD を read-only でマウントする (/dev/hdb は CD-ROM を示す).

# mount -o ro /dev/hdb /mnt

一時保存ディレクトリとして TMP を用意する.

# mkdir /target/TMP
# cd /target/

CD 上の圧縮されたイメージ root.boot.gz をハードディスク上に展開する. この作業は 10 分程度かかる.

# gzip -c -d /mnt/root.boot.gz | /mnt/restore -r -f - -T ./TMP

"Missing blocks at the end of ./dev/xconsole, assuming hole "と表示されるが 気にせずに待つ.

最後に lilo を実行する. -r オプションを付けて実行する. (target ディレクトリ以下で lilo が実行される.)

# lilo -r /target
Added Linux *
# umount /mnt

CD, フロッピーディスクを抜いて PC を再起動する.
# reboot
起動の最後に root パスワードを聞いてくるので小西までお知らせください.
root でログインします.

1.5 各種設定

  1. VTA のアカウントの追加と root 権限の委譲

    root 権限を小西から VTA に委譲します. root パスワードを passwd コマンドで変更して下さい.

    次に VTA のアカウントを作成します. コマンドは, adduser です. その前に, deluser nakagami として下さい! 初期設定では昨年の TA 中神さんのアカウントができていますが, 必要がないので削除 します. また, TA の 道政さん (michi), やまだ由さん (yukiko), 小西 (konijo) のアカウントも 09/24 までに忘れずに作成するようにしてください.

    さらに VTA, TA のどちらにも sudo 権限を与えるべく /etc/sudoers ファイルを編集してください. 編集の仕方は, 例えば,

    http://www.ep.sci.hokudai.ac.jp/~inex/y2003/1219/Debian_install/after_install.html

    の「2. sudo の設定」[2.2] 実際の設定 に書かれてあります.

  2. /etc/fstab の編集

    # vi /etc/fstab

    /hda3, /hda5 の行を削除してください.

  3. 不要なファイルの削除

    # cd /
    # rm restoresymtable

  4. /etc/hostname の編集
    joho05 と書かれているので, joho?? (?? ; 担当の情報実験機の番号)に変更.

  5. /etc/hosts の編集
    joho05 と書かれているので, joho?? に変更.

  6. /etc/network/interfacesの編集
    • 以下の auto lo, iface lo, auto eth0, iface eth0 inet static, adress, netmask, network, broadcast, gateway 行のコメントアウト(#)を外し, 以下のように編集する.
    • adress には 192.168.16.1?? を入力(?? は実験機の番号)

    auto lo
    iface lo inet loopback
    ............................
    ............................
    auto eth0
    iface eth0 inet static
      adress 192.168.16.1??
      netmask 255.255.255.0
      network 192.168.16.0
      broadcast 192.168.16.255
      gateway 192.168.16.1

    • 変更を有効にする.

    # /etc/init.d/networking restart

    • ネットワークがつながるか確かめる(例: ping www.ep.sci.hokudai.ac.jp).

1.6 動作確認

最後に以下の動作についてチェックをしてください.

以上で作業終了です. お疲れさまでした.

2. セットアップ CD の作り方 (2003年度TA: 中神さん作成)

2.0 作業の目的

     
  1. 情報実験用のブータブルリカバリー CD を作成する上での雛型となるマシンの構築  
  2. 雛型マシンのシステムをコピーし CD イメージを作成.

2.1 仕様

雛型マシンとして

         
  1. OS のインストール   
         
    • Windows とは共存させない. /dev/hda1 に Linux をインストール.
    • デバイスドライバとして net/tulip ドライバをインストールする.    
    • ネットワークには DHCP を用いて接続する.
      
  2. インストールするパッケージ (最低限)
         
    • ファイル&ディレクトリ管理
           ls, cat, less, rm
    • エディタ, 言語環境
           vi, emacs+canna, kinput2
    • ネットワーク関連
           ping, traceroute, nslookup, netstat, ssh , telnet, ftp  
    • ブラウザ
           netscape, mozilla
    • X 関連
           xserver, xfont, afterstp, twm
  3. 環境設定
         
    • X の設定 :解像度 1024 * 768
    • .emacs の準備 → /etc/skel/ 以下に格納    
    • .xinitrc を準備 → /etc/skel/ に格納    
    • 文字コードのセット
           /etc/profile に LANG=ja_J.ujis をセット
           /etc/profile に alias kterm='kterm -km euc' をセット

リカバリー CD 作成準備

      
  1. パーティションは 2 個用意する。
    • /dev/hda1 : Linux
    • /dev/hda2 : コピー用
  2. インストールするべきパッケージ
         
    • mkisofs
    • dump
  3. 復旧に必要なコマンドの準備    
    • restore (dump ファイル内 : # apt-get source dump)
    • gzip
  4. カーネルの再構築    
    • loopback デバイスをサポートしておく
      
  5. 必要とされるブートイメージ : rescue.bin

2.2 作業手順

目次
      
  1. OS のインストール   
  2. 環境の設定   
  3. パッケージのインストール(CD作成に必要なもの)   
  4. カーネルの再構築   
  5. バックアップファイルの製作   
  6. CD イメージの作成
  1. OS のインストール

      2002 年度情報実験を参照   http://www.ep.sci.hokudai.ac.jp/~inex/y2002/0110/Debian_install /install.html

    [変更点]
    • Partition hard disk
              
            hda1  Boot Primary Linux          3002.23 
            hda5       Logical Linux swap      131.61
            hda2       Primary Linux          3314.79
           
    • Select the mount point
            hda1    /
            hda2    /home
           
       
    • Install the Base System

      2003/09/11 現在専攻の ftp サーバが down していたため, 地球流体電脳倶楽部 の北大ミラーサイトを利用しました.
      network : ftp://dennou-h.ees.hokudai.ac.jp/library/Linux/debian

    • apt configuration

      deb ftp://dennou-h.ees.hokudai.ac.jp/library/Linux/debian woody main contrib non-free
      deb ftp://dennou-h.ees.hokudai.ac.jp/library/Linux/debian-jp woody-jp main contrib non-free
      deb ftp://dennou-h.ees.hokudai.ac.jp/library/Linux/debian-non-US woody/non-US main contrib non-free
      deb ftp://dennou-h.ees.hokudai.ac.jp/library/Linux/debian woody-proposed-updates main contrib non-free

    • Select tasks to install

      * X window system
      * desktop environment
      * Japanese environment

       
    • セキュリティー上問題のあるパッケージだけ削除する.
      • その他不必要なパッケージの削除はまだ行わない  
      • コマンドの作成時に必要なパッケージまで削除してしまう可能性がある.  
      • パッケージの削除は CD 作成の直前に行う.

  2. 環境の設定
        
    • セキュリティー設定

      # vi /etc/inetd.conf

      全ての行をコメントアウトし再起動

      # ps aux | grep intet
      # kill -HUP xxx (xxx はinetd のプロセス番号)

    • sudo の追加
      nakagamiを /etc/sudoers に追加
        
    • /etc/X11/Xsession の編集

      最終行に以下を追加

      LANG=ja_JP.ujis ; export LANG &
      LC_ALL=jp_JP.ujis ; export LC_ALL &
      exec afterstep

    • /etc/X11/afterstep/autoexec

      Function "InitFunction" で
      EXEC "I" kterm & を追加
       
    • 日本語の設定

      日本語環境の構築(epdns)参照
         http://www.ep.sci.hokudai.ac.jp/~epdns/dvlop/basic/japanize.html
          
      • locale の設定

        /etc/locale.gen に以下を追加

          ja_JP.EUC-JP EUC-JP

        以下のコマンドを実行

        # locale-gen
         
      • emacs の設定

        • パッケージのインストール
          emacs20-dl, emacs20-dl-el, emacs20-dl-dev, canna, emacs-dl-canna

                     
        • /etc/skel/.emacs に以下を追加する。
           (set-language-environment "Japanese")
           (set-default-coding-systems 'euc-japan)
           (set-terminal-coding-system 'euc-japan)
           (set-buffer-file-coding-system 'euc-japan)
           (set-default-font "-*-fixed-medium-r-normal-*-16-*-*-*-*-*-fontset-standard")
           (progn (load-library "canna" ) (canna) )
           (global-set-key "\C-o" 'canna-toggle-japanese-mode)
          
              
         
      • kinput2 の設定   
            
        • インストールするパッケージ

                kinput2-canna

        • 設定ファイルの編集
          /etc/skel/.bashrc, .bash_profile の両方に次の一行を追加する
                    export LANG=ja JP.ujis
                    export LC_ALL=ja.JP.ujis
                 export XMODIFIERS="@im-kinput2"
          
          /etc/skel/.xinitrc
                   xrdb -merge ~/.Xresources
                   kinput2-canna&
                   exec afterstep
          
          /etc/skel/.Xresources
                  *inputMethod:   kinput2
                  #define XIM kinput2
                  Kinput2*conversionStartKeys: Shiftspace
                  krxvt*inputMethod: XIM
                  krxvt*kanji_encoding:    eucj
                  KTerm*inputMethod: XIM 
                  KTerm*VT100*KanjiMode: euc
                  KTerm*openIm: true
          
               /etc/skel/.emacs に以下の一行を追加

              (set-keyboard-coding-system 'euc-japan)

        • /etc/network/interfaces

          以下のように編集
               # The loopback interface
               # auto lo
               #iface lo inet loopback
          
               #iface eth0 inet static
               #        address 192.168.0.105
               #        netmask 255.255.255.0
               #        network 192.168.0.255
               #        broadcast 192.168.0.255
               #        gateway 192.168.0.1
          
          ※ この状態でままイメージを作成する。イメージ作成後はこの設定を有効にしてイメージファイルを転送する. ネットワークの設定を有効にするには以下のコマンドを実行.

           
          # /etc/init.d/networking restart

  3. パッケージのインストール(CD 作成に必要なもの)

    バイナリでインストール : mkisofs
    ソースからインストールし静的リンク : dump, e2fsprogs

    • mkisofs のインストール

      # apt-get install mkisofs

    • e2fsprogs, dump のインストール

      ソースをダウンロードするために /etc/apt/sources.list に以下を追加する。
          
      deb-src ftp://dennou-h.ees.hokudai.ac.jp/library/Linux/debian stable main contrib non-free
      deb-src ftp://dennou-h.ees.hokudai.ac.jp/library/Linux/debian-non-US stable/non-US main contrib non-fr
      deb-src ftp://dennou-h.ees.hokudai.ac.jp/library/Linux/debian-jp stable-jp main contrib non-free
      
      dump, e2fsprogs のソースを入手.

      # apt-get source dump e2fsprogs

      ef2psprogs のインストール (INSTALL ファイルを参照)

      # cd e2fsprogs-1.27
      # mkdir build
      # cd build
      # ../configure
      # make
      # make check
      # make install-libs

      dump を静的にインストール

      # cd dump-0.4b27
      # ./configure --enable-stabic
      # make
      # make install

      本当に静的リンクされたか確認

      # ldd dump
      not a dynamic executable

      # ldd /usr/local/sbin/restore
      not a dynamic executable

      ※ 静的リンクとは?

      コマンドが使用するライブラリをリンクしておけば、ディスク障害などで共有ライブラリを読み込めなくなった時でも、コマンドが使用できる。コマンドのビルト時に-static オプションを付ければライブラリを静的にリンクできる。

  4. カーネルの再構築

    loopback デバイスをサポートする.

    • ソースの入手

      http://packages.debian.org/unstable/devel/kernel-source-2.4.21.html

      より kernel-source.2.4.21 を入手

    • カーネルの設定

      [!注意事項]

      ※1 カーネルイメージをなるべく小さくするために必要のないものは組み込まないようにする。
      ・rescue.bin (1.44MB) に収まらない!

      ※2 DOSFAT fs, MSDOS fs は再インストール時の root.bin を読み込む時に必要となるので必ず y にすること!

      [新たに追加するもの]
      net/ Dec tulip
      Block device / Loop back device
                     RAM disk support
      File systems / DOS FAT fs support 
                     MSDOS fs support
                     VFAT(Windows-95) support
                     FIle systems / Native Language Support / Codepage 437
                                                              Japanese charset
                                                              NLS ISO 8859-1
      
      [削除するもの]
      Processor type and features / Symmetric multi-processing support 
      General setup / kernel suppport for a.out binaries 
      networking options / IP: multicasting
      SCSI support / SCSI support
      network device support / EtherExpressPro/100 
      File systems / Network File systems / NFS file system support
                                            NFS server support
      Sound / Soound card support
      USB  / Support for USB
      
      又、CD イメージ作成前に以下の作業を行なっておく.

    • 不必要なパッケージの削除
    • /etc/network/interfaces の設定をコメントアウトしてあるか確認.
    • vmlinuz.old の消去

      • /etc/lilo.conf

        image = vmlinuz.old の行以下を消去
        # lilo

      • /boot/vmlinuz-2.2.20 の消去

        # rm /boot/vmlinuz-2.2.20

      • /vmlinuz.old の消去

        # rm /vmlinuz.old

  5. バックアップファイルの製作

    • Linux をシングルユーザーモードで起動する

      ブート時に Lilo と表示したら Shift キーをおして
          
      boot : Linux -s

      とする。
    • dump する

      /dev/hda2 のイメージを /dev/hda3 の領域にフルダンプする。

      # mkdir /home/nakagami/joho5/
      # cd /home/nakagami/joho5
      # mkdir root
      # dump -0 -a -f - / | gzip -c > /home/nakagami/joho5/root/root.boot.gz

      [オプションの意味]

      - 0 : full dump
      - a : メディアの終わりまでデータを書き込む
      - f : 出力先ファイル名
      gzip -c : 出力したファイルを gzip で圧縮

      10 分少々で dump 終了。

      # ls -l root.boot.gz

      容量は 308 Mbyte.

    • rescue.bin の編集

      # mkdir ~/joho5/rescue

      Windows 領域から rescue.bin を ~/joho5/rescue/ にコピーする. loopback デバイスを使ってイメージファイル rescue.bin をファイルシステムとしてマウントする.

      # mount -o loop /home/nakagami/joho5/rescue/rescute.bin /mnt

         linux.bin を vmlinuz-2.4.21 と入れ替える

      # cp /boot/vmlinuz-2.4.21 /mnt/linux.bin
      # umount /mnt

        
  6. CD イメージの作成

    /home/nakagami/joho5/cdrom 以下に次のファイルを揃える

    rescue.bin, root.boot.gz
    gzip (/bin/gzip からコピー)
    restore (/usr/local/sbin/restore からコピー)

    次のコマンドを発行してイメージを作る。

    # cd ~/joho5/cdrom/
    # mkisofs -b rescue.bin -c boot.cat -R -o rcd0913.img ./

       [オプションの意味]

    - b : ブートフロッピーのイメージファイルへのパス
    - c : ブートイメージに対するカタログファイルへのパス
    - R : RockRidge 形式に対応したファイルの情報を CD イメージファイルへ    付加
    - o : 出力先のファイル

    確認
    # mount -o loop ./rcd0912.img /mnt
    # ls /mnt/
    boot.cat, gzip, rescue.bin restore, root.boot.gz

  7. rcd****.img を CD-R に焼く

最終更新日: 2004/09/08 小西丈予