|
ご迷惑をおかけします。以前の記事とリンクが切れています。ただいま修復中です。 |
当サイトは、玄箱PRO (KURO-BOX/Pro)を中心とした組み込み、Linuxと電子工作を扱っています。
会社案内
情報セキュリティおよび個人情報の取り扱いについて コメントとトラックバックは、spamを予防するために、編集担当が公開の作業をするまで非公開になっています。コメントはそれぞれ投稿した人のものです。 |
mount /dev/sda1 /mntuImage をコピーします。カーネルをコンパイルしたディレクトリで、以下を実行します。
make modules実行すると以下のようになります。
tar xzf u-boot.src.tar.gz展開された u-boot ディレクトリに移動し、
apt-get install gcc make libc-dev libc6-dev実行すると以下のようになりました。
apt-get update実行すると次のようになります。
■Debian 化とは
ここでの Debian 化では、ファイルは HDD にインストールし、玄箱Pro を HDD から起動できるようにします。HDD 起動するための玄箱Pro オリジナルの手順は以下のようになっています。
(1) HDD のフォーマット(パーティションを切って、フォーマットする)/dev/sda1 ext3fs 50MB uImage 用 (uImage.buffalo だけを収める)
/dev/sda2 xfs 3GB / パーティション
/dev/sda3 swap 128MB swap パーティション
/dev/sda4 xfs 残り 空きパーティション
(2) uImage (uImage.buffalo) のコピー
(3) hddrootfs.tar.gz の展開
(4) uboot の環境変数の書き換え
EABI, OABI 問題を発生させるのは (1) です。なにが起きるかというと、Debian GNU/Linux 4.0 (etch) にあわせて OABI でコンパイルしたカーネルで起動して、EABI でコンパイルされた mkfs.xfs でフォーマットした /dev/sda2, /dev/sda4 を mount すると、パーティションの内容を壊してしまいます。
また (3) で展開するときにフラッシュ・メモリに収められている tar がパーミッションなどを正しくセットできない制限版であるという問題があります。
■問題の解決のために
そこで、xfs ではなく、ext3fs (Debian etch でコンパイル、スタティック・リンク)でフォーマットし、
aptitude update追加で telnet, ssh, dhcpcd, less をインストールします。
aptitude install telnet ssh dhcpcd lessしばらくすると、
■/etc を整える
前回までに、debootstrap の実行が終了しました。次に /etc を整えます。/etc ディレクトリのファイル fstab, hostname, hosts, inittab, resolv.conf, default/halt, network/interfaces, apt/sources.list を変更します。
いまの設定を引き継ぐならコピーします。またresolv.conf は、DHCP を使う場合はコピーしなくてかまいません(DHCP で上書きされるため)。コピーする場合は次のようにします。
■はじめに
Debian 化するのに利用した hddrootfs.tar.gz はどうやって作るのでしょうか。ここでは、Debian GNU/Linux インストールガイドの D.3. Unix/Linux システムからの Debian GNU/Linux のインストール, にしたがって、インストール後のディレクトリを構築し、それを hddrootfs.tar.gz としてまとめていく手順を紹介します。すべての作業は、Debian 化した玄箱PRO で行います。
以降の作業は root で行います。kurobox ユーザの場合は su コマンドで root になってください。
kurobox@kurobox:~$ su
Password: ← root のパスワード (kuroadmin) を入力する
kurobox:/home/kurobox#
mkdir /home/work
mkdir /home/root
■Debian とは
Debian は Linux のディストリビューションの一つです。Linux の開発はカーネルと周辺(ユーザランド)のプログラムが分かれていますが、実際に使う場合には両方が必要です。両方をまとめたものをディストリビューションと呼んでいます。Debian の特徴は、パッケージング・システムが強力なことにあります。
一方、FreeBSD, NetBSD, OpenBSD などは、カーネルとユーザランド・プログラムの開発・配布はまとめて行われています。これは歴史的な経緯が関係しています。興味がある方はLinux, *BSD の歴史を調べてみると面白いでしょう。
■Debian 化するメリット
ディストリビューションを使わず、必要なプログラムを一つずつコンパイルしてインストールしていくことも、もちろん可能です。
おすすめ書籍 |
![]() |