Berry LinuxをUSBメモリにインストール

初出2005年6月17日 最終更新2005年6月17日

中田裕一朗氏が開発されている Berry Linux をUSBメモリにインストールすると、 CD-ROMドライブのない1スピンドルマシンでもBerry Linuxが使用できます。

CD,DVDドライブのついているマシンでも、USBメモリからブート出来ると、 DVD鑑賞するのに都合がいいですね。

また、ポケットに入れても持ち運べるので大変便利ですね。 このページではUSBメモリにBerry Linuxをインストールする方法を紹介します。

用意するもの

  • Berry Linux のiso・・・・http://berry.sourceforge.jp/download.htmlから好きなものをダウンロード
  • 作業用マシン・・・・grubがインストールされたUNIX、Linuxマシン(Linuxを推奨)

構築手順

※以降は作業マシンがLinuxであることを前提として説明します。

  1. ダウンロードしたBerry Linuxのisoファイルをループバックマウント
    # mount -o loop berry-mini-0.54.iso /tmp/pnt  # 事前に適当なマウントポイントを作成しておく。
    
    ※自分の環境に合わせて適当に読み替えて下さい。
  2. USBメモリをマウント
    # mount -t vfat -o shortname=winnt,codepage=932,iocharset=euc-jp /dev/sda1 /tmp/pnt2 # 事前に適当なマウントポイントを作成しておく。
    
    ※自分の環境に合わせて適当に読み替えて下さい。
  3. スクリプトの準備 以下のスクリプトを適当な名前で保存し、自分の環境に合わせてBERRYCDとUSBMEMを修正する。
    #!/bin/sh
    # berrylinuxusbinstall.sh
    
    BERRYCD=/tmp/pnt
    USBMEM=/tmp/pnt2
    
    [ -z "$(mount|cut -f3 -d" "|grep $BERRYCD)" ] && echo "$BERRYCD not mounted" && exit 1
    [ -z "$(mount|cut -f3 -d" "|grep $USBMEM)" ] && echo "$USBMEM not mounted" && exit 1
    
    rm -rf $USBMEM/BERRY
    mkdir $USBMEM/BERRY
    
    cp -p $BERRYCD/Setup/initrd.gz     $USBMEM/BERRY
    cp -p $BERRYCD/Setup/splash.xpm.gz $USBMEM/BERRY
    cp -p $BERRYCD/Setup/stage1        $USBMEM/BERRY
    cp -p $BERRYCD/Setup/stage2        $USBMEM/BERRY
    cp -p $BERRYCD/Setup/vmlinuz       $USBMEM/BERRY
    cp -p $BERRYCD/BERRY/BERRY         $USBMEM/BERRY
    
    cat > $USBMEM/BERRY/grub.conf <<EOF
    default=0 
    timeout=10 
    splashimage=(hd0,0)/berry/splash.xpm.gz 
    # keymap for jp106
    setkey doublequote at
    setkey ampersand caret
    setkey quote ampersand
    setkey parenleft asterisk
    setkey parenright parenleft
    setkey tilde parenright
    setkey equal underscore
    setkey plus colon
    setkey colon quote
    setkey asterisk doublequote
    setkey bracketleft bracketright
    setkey braceleft braceright
    setkey bracketright backslash
    setkey braceright bar
    setkey backslash equal
    setkey underscore plus
    setkey backslash bracketleft
    setkey bar braceleft
    setkey F9 equal
    setkey F10 bracketleft
    setkey equal k73
    setkey bracketleft k7d
     
    title BERRY(ja,normal) 
    root (hd0,0) 
    kernel /berry/vmlinuz devfs=mount boot=cdrom berry_dir=/berry/berry lang=ja vga=791 splash=silent 
    initrd /berry/initrd.gz 
     
    title BERRY(ja,failsafe) 
    root (hd0,0) 
    kernel /berry/vmlinuz devfs=mount boot=cdrom berry_dir=/berry/berry lang=ja vga=normal atapicd nosound noapic noacpi acpi=off noscsi nodma nousb nopcmcia nofirewire noagp nomce nodhcp xmodule=vesa 
    initrd /berry/initrd.gz 
     
    title BERRY(en,normal) 
    root (hd0,0) 
    kernel /berry/vmlinuz devfs=mount boot=cdrom berry_dir=/berry/berry lang=en vga=791 splash=silent 
    initrd /berry/initrd.gz 
     
    title BERRY(en,failsafe) 
    root (hd0,0) 
    kernel /berry/vmlinuz devfs=mount boot=cdrom berry_dir=/berry/berry lang=en vga=normal atapicd nosound noapic noacpi acpi=off noscsi nodma nousb nopcmcia nofirewire noagp nomce nodhcp xmodule=vesa 
    initrd /berry/initrd.gz 
    
    title boot (hd1,0)
    	rootnoverify (hd1,0)
    	makeactive
    	chainloader +1
    title boot (hd1,1)
    	rootnoverify (hd1,1)
    	makeactive
    	chainloader +1
    title boot (hd1,2)
    	rootnoverify (hd1,2)
    	makeactive
    	chainloader +1
    title boot (hd1,3)
    	rootnoverify (hd1,3)
    	makeactive
    	chainloader +1
    EOF
    
    umount $BERRYCD
    umount $USBMEM
    
    exit 0
    
  4. スクリプトの実行
    # berrylinuxusbinstall.sh
    
  5. USBメモリへのgrubのインストール

私の場合、こんな感じです。 自分の環境に適宜合わせて下さい。

# grub
    GRUB  version 0.93  (640K lower / 3072K upper memory)

 [ Minimal BASH-like line editing is supported.  For the first word, TAB
   lists possible command completions.  Anywhere else TAB lists the possible
   completions of a device/filename.]

grub> root (hd3,0)
 Filesystem type is fat, partition type 0x6

grub> setup --prefix=/berry (hd3)
 Checking if "/berry/stage1" exists... yes
 Checking if "/berry/stage2" exists... yes
 Checking if "/berry/fat_stage1_5" exists... no
 Running "install /berry/stage1 (hd3) /berry/stage2 p /berry/grub.conf "... succeeded
Done.

grub>quit

使い方

PCのBIOS設定を変更してUSBからブートできるようにして下さい。
また起動デバイスの順番を内臓ハードディスクよりもUSBメモリを優先にして下さい。

コメント

動作報告・問題点などありましたらコメントをお願いします。 コメントをぶら下げるには編集ボタンを押してください。

コメント:
  • grub.conf、boot=cdromになってますけど、あってます?うちではエラーでました。外したらnow booting の画面のまま止まってしまいました。from=sda1つけてみてもだめでした。一応御報告しときまつ。 --
  • 直接の答えではありませんが、質問者さんが戸惑っているであろうポイントをお伝えします。 grubプロンプトやgrub.conf(menu.lst)中に出てくる”(hd0,1)”とか”(hd3,0)”を説明します。hd?の?の部分はBIOSが認識しているHDDの番号(0が基数)です。通常のHDDからOSを起動した状態では大抵hd0がブートHDDです。しかしUSBメモリからブートした状態ではhd0はUSBメモリになります。次に、”(hd3,0)”の0の部分は1つのHDDの中でのパーティションの番号(0が基数)です。この値はパーティションテーブル等の記述に従って決まります。
  • ドライブ構成をメインにインストール環境を教えていただけますか? --
  • 書き間違えを遠慮せず質問してください。 --
  • >起動デバイスの順番を内臓・・・>内蔵 --

タグ:

+ タグ編集
  • タグ:

このサイトはreCAPTCHAによって保護されており、Googleの プライバシーポリシー利用規約 が適用されます。

最終更新:2006年07月30日 11:29