ksaitoの日記

日々試したことの覚え書き

玄箱/PRO

移転しました。

自動的にリダイレクトします。

すこし前から気になっていた玄箱/PROをとうとう買ってしまいました。
[rakuten:clevery:1394485:detail]

以下は玄箱/PROにDebianをインストールしたときのログです。

ハードディスクの初期化

80GBのハードディスクがあったのでIDE-USBケーブルでデスクトップPCに接続します。

ハードディスクは表のようにパーティションを初期化します。(サイズは適当です)

/dev/sdb1 Linux (83) 78GB
/dev/sdb2 Linux swap (82) 2GB

初期化には、fdiskを使います。
dコマンドで既存のパーティションを削除し、nコマンドで表のようにパーティションを作成します。
tコマンドでswapの設定をしてaコマンドでブート可能フラグを設定しました。

$ sudo fdisk /dev/sdb

このディスクのシリンダ数は 14593 に設定されています。
間違いではないのですが、1024 を超えているため、以下の場合
に問題を生じうる事を確認しましょう:
1) ブート時に実行するソフトウェア (例. バージョンが古い LILO)
2) 別の OS のブートやパーティション作成ソフト
   (例. DOS FDISK, OS/2 FDISK)

コマンド (m でヘルプ): m
コマンドの動作
   a   ブート可能フラグをつける
   b   bsd ディスクラベルを編集する
   c   dos 互換フラグをつける
   d   領域を削除する
   l   既知の領域タイプをリスト表示する
   m   このメニューを表示する
   n   新たに領域を作成する
   o   新たに空の DOS 領域テーブルを作成する
   p   領域テーブルを表示する
   q   変更を保存せずに終了する
   s   空の Sun ディスクラベルを作成する
   t   領域のシステム ID を変更する
   u   表示/項目ユニットを変更する
   v   領域テーブルを照合する
   w   テーブルをディスクに書き込み、終了する
   x   特別な機能 (エキスパート専用)
コマンド (m でヘルプ):

ext3でフォーマットする

mke2fsコマンドで/dev/sdb1をフォーマットして/mntにマウントします。

$ sudo mke2fs -c -j /dev/sdb1
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
953440 inodes, 1905702 blocks
95285 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=1954545664
59 block groups
32768 blocks per group, 32768 fragments per group
16160 inodes per group
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632

Checking for bad blocks (read-only test): done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 31 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.
$
$ sudo mount /dev/sdb1 /mnt
$ cd /mnt
$ ls
lost+found
$

debootstrapでUbuntu環境を構築

debootstrapで玄箱/PRO CPU用にARMアーキテクチャでedgyを構築します。
apt-lineは、指定しない場合には、/etc/aptの設定が使われるようです。
しかし... ARMはないみたいです。(残念)

$ sudo debootstrap --arch arm edgy /mnt
I: Retrieving Release
E: Invalid Release file, no entry for main/binary-arm/Packages
$

気を取りなおして、Debian etchを構築

下記のURLを参考にしました。
http://www.debian.org/releases/stable/arm/apds03.html.ja#id2559059
Debianはマニュアルが充実していて、すばらしい!

$ sudo debootstrap --arch arm etch /mnt/debinst http://ftp.jp.debian.org/debian/
I: Retrieving Release
I: Retrieving Packages
I: Validating Packages
I: Resolving dependencies of required packages...
I: Resolving dependencies of base packages...
I: Checking component main on http://ftp.jp.debian.org/debian...
I: Retrieving adduser
 ... 省略 ...
I: Extracting zlib1g...
W: Failure trying to run: chroot /mnt/debinst mount -t proc proc /proc
$

chrootは、できず... まぁそうですよね。
気にせず、設定だけしてしまおう...

# chroot /mnt/debinst /bin/bash
chroot: cannot run command `/bin/bash': Exec format error
#

基本システムの設定

fstabは、こんな感じに設定

# cat /mnt/debinst/etc/fstab
# /etc/fstab: static file system information.
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
proc            /proc           proc    defaults        0       0
/dev/sda1       /               ext3    defaults        0       2
/dev/sda2       none            swap    sw              0       0

cdromのマウントポイントを作ります。
玄箱では、いらないと思うのですが、一応作っておきます。

# cd /mnt/debinst/
# ls
bin  boot  debootstrap  dev  etc  home  lib  mnt  proc  root  sbin  sys  tmp  usr  var
# mkdir -p media/cdrom0
# cd media/
# ls
cdrom0
# ln -s cdrom0 cdrom
# cd ..
# ls -F
bin/   debootstrap/  etc/   lib/    mnt/   root/  sys/  usr/
boot/  dev/          home/  media/  proc/  sbin/  tmp/  var/
# ln -s media/cdrom
# ls -F
bin/   cdrom@        dev/  home/  media/  proc/  sbin/  tmp/  var/
boot/  debootstrap/  etc/  lib/   mnt/    root/  sys/   usr/
#

タイムゾーンの設定は、あとで...

ネットワークの設定

# cat interfaces
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
address [IPアドレス]
network [ネットワークアドレス]
netmask [ネットマスク]
broadcast [ブロードキャスト]
gateway [ゲートウェイ]

/mnt/debinst/etc/resolv.confは、/etc/resolv.confと同じになっていたので、そのまま変更なしでした。
hostnameとhostsは、下記の通り

# cat hostname
debian
# cat hosts
127.0.0.1 localhost debian

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
#

aptの設定

debootstrapでは、下記のように設定されています。

# cat apt/sources.list
deb htp://debootstrap.invalid/ etch main
#

このままでは使えないので、下記のように修正します。

# cat apt/sources.list
deb http://ftp.jp.debian.org/debian/ etch main
deb-src http://ftp.ja.debian.org/debian etch main

deb http://security.debian.org/ etch/updates main
deb-src http://security.debian.org/ etch/updates main
#

カーネルのインストール

chrootができないのでカーネルは手動でやらないと...
今日は、これまで...
明日は、下記の"D.3.5. カーネルのインストール"からやろうかな。
http://www.debian.org/releases/stable/arm/apds03.html.ja